Commit 4cf436dc authored by Chunchi Che's avatar Chunchi Che

fix

parent a3edc4c6
Pipeline #22698 passed with stages
in 10 minutes and 13 seconds
...@@ -32,14 +32,15 @@ export const isMe = (controller: number): boolean => { ...@@ -32,14 +32,15 @@ export const isMe = (controller: number): boolean => {
} }
}; };
const initInfo: MatState["initInfo"] = (() => { const defaultInitInfo = {
const defaultInitInfo = {
masterRule: "UNKNOWN", masterRule: "UNKNOWN",
name: "?", name: "?",
life: -1, // 特地设置一个不可能的值 life: -1, // 特地设置一个不可能的值
deckSize: 0, deckSize: 0,
extraSize: 0, extraSize: 0,
}; };
const initInfo: MatState["initInfo"] = (() => {
return proxy({ return proxy({
me: { ...defaultInitInfo }, me: { ...defaultInitInfo },
op: { ...defaultInitInfo }, op: { ...defaultInitInfo },
...@@ -98,10 +99,29 @@ const initialState: Omit<MatState, "reset"> = { ...@@ -98,10 +99,29 @@ const initialState: Omit<MatState, "reset"> = {
export const matStore: MatState = proxy<MatState>({ export const matStore: MatState = proxy<MatState>({
...initialState, ...initialState,
reset() { reset() {
Object.keys(initialState).forEach((key) => { // Object.keys(initialState).forEach((key) => {
// @ts-ignore // // @ts-ignore
matStore[key] = initialState[key]; // matStore[key] = initialState[key];
}); // });
// 同`PlayerStore`,不知道为啥这样写状态不能更新,暂时采用比较笨的方法
this.chains = [];
this.timeLimits.me = -1;
this.timeLimits.op = -1;
this.initInfo.me = defaultInitInfo;
this.initInfo.op = defaultInitInfo;
this.selfType = ygopro.StocTypeChange.SelfType.UNKNOWN;
this.hint = { code: -1 };
this.currentPlayer = -1;
this.phase = {
currentPhase: ygopro.StocGameMessage.MsgNewPhase.PhaseType.UNKNOWN,
enableBp: false, // 允许进入战斗阶段
enableM2: false, // 允许进入M2阶段
enableEp: false, // 允许回合结束
};
this.isReplay = false;
this.unimplemented = 0;
this.handResults.me = 0;
this.handResults.op = 0;
}, },
}); });
......
...@@ -68,7 +68,17 @@ class PlaceStore implements NeosStore { ...@@ -68,7 +68,17 @@ class PlaceStore implements NeosStore {
}); });
} }
reset(): void { reset(): void {
placeStore.inner = initialState; // this.inner = initialState;
this.inner = {
[MZONE]: {
me: genPLaces(7),
op: genPLaces(7),
},
[SZONE]: {
me: genPLaces(6),
op: genPLaces(6),
},
};
} }
} }
......
...@@ -47,9 +47,15 @@ export const playerStore = proxy<PlayerState>({ ...@@ -47,9 +47,15 @@ export const playerStore = proxy<PlayerState>({
return this.player0; return this.player0;
}, },
reset() { reset() {
Object.keys(initialState).forEach((key) => { // Object.keys(initialState).forEach((key) => {
// @ts-ignore // // @ts-ignore
playerStore[key] = initialState[key]; // playerStore[key] = initialState[key];
}); // });
// 不知道为啥上面这样写状态不能更新,暂时采用比较笨的方法
this.player0 = {};
this.player1 = {};
this.observerCount = 0;
this.isHost = false;
this.selfType = SelfType.UNKNOWN;
}, },
}); });
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment