Commit 8d7152b1 authored by chechunchi's avatar chechunchi Committed by Chunchi Che

update matStore

parent 125e7838
...@@ -6,8 +6,8 @@ export default (chainSolved: ygopro.StocGameMessage.MsgChainSolved) => { ...@@ -6,8 +6,8 @@ export default (chainSolved: ygopro.StocGameMessage.MsgChainSolved) => {
.splice(chainSolved.solved_index - 1, 1) .splice(chainSolved.solved_index - 1, 1)
.at(0); .at(0);
if (location) { if (location) {
// 设置被连锁状态为false // 设置被连锁状态为
matStore.setChained(location, false); matStore.setChained(location, undefined);
} else { } else {
console.warn("pop from chains return null!"); console.warn("pop from chains return null!");
} }
......
...@@ -19,5 +19,5 @@ export default async (chaining: ygopro.StocGameMessage.MsgChaining) => { ...@@ -19,5 +19,5 @@ export default async (chaining: ygopro.StocGameMessage.MsgChaining) => {
// 将`location`添加到连锁栈 // 将`location`添加到连锁栈
matStore.chains.push(location); matStore.chains.push(location);
// 设置被连锁状态 // 设置被连锁状态
matStore.setChained(location, true); matStore.setChained(location, matStore.chains.length);
}; };
...@@ -52,7 +52,6 @@ function reloadDuelField( ...@@ -52,7 +52,6 @@ function reloadDuelField(
counters: {}, counters: {},
focus: false, focus: false,
chaining: false, chaining: false,
chained: false, // TODO: 这里是否能简单设置成false?
directAttack: false, directAttack: false,
reload: true, reload: true,
}; };
......
...@@ -41,7 +41,6 @@ export default (start: ygopro.StocGameMessage.MsgStart) => { ...@@ -41,7 +41,6 @@ export default (start: ygopro.StocGameMessage.MsgStart) => {
}, },
focus: false, focus: false,
chaining: false, chaining: false,
chained: false,
directAttack: false, directAttack: false,
counters: {}, counters: {},
idleInteractivities: [], idleInteractivities: [],
...@@ -61,7 +60,6 @@ export default (start: ygopro.StocGameMessage.MsgStart) => { ...@@ -61,7 +60,6 @@ export default (start: ygopro.StocGameMessage.MsgStart) => {
}, },
focus: false, focus: false,
chaining: false, chaining: false,
chained: false,
directAttack: false, directAttack: false,
counters: {}, counters: {},
idleInteractivities: [], idleInteractivities: [],
...@@ -82,7 +80,6 @@ export default (start: ygopro.StocGameMessage.MsgStart) => { ...@@ -82,7 +80,6 @@ export default (start: ygopro.StocGameMessage.MsgStart) => {
}, },
focus: false, focus: false,
chaining: false, chaining: false,
chained: false,
directAttack: false, directAttack: false,
counters: {}, counters: {},
idleInteractivities: [], idleInteractivities: [],
......
...@@ -43,7 +43,6 @@ class CardArray extends Array<CardState> implements ArrayCardState { ...@@ -43,7 +43,6 @@ class CardArray extends Array<CardState> implements ArrayCardState {
}, },
focus: focus ?? false, focus: focus ?? false,
chaining: false, chaining: false,
chained: false,
directAttack: false, directAttack: false,
counters: {}, counters: {},
idleInteractivities: [], idleInteractivities: [],
...@@ -166,7 +165,6 @@ const genBlock = (zone: ygopro.CardZone, n: number) => ...@@ -166,7 +165,6 @@ const genBlock = (zone: ygopro.CardZone, n: number) =>
}, },
focus: false, focus: false,
chaining: false, chaining: false,
chained: false,
directAttack: false, directAttack: false,
idleInteractivities: [], idleInteractivities: [],
counters: {}, counters: {},
...@@ -283,12 +281,12 @@ export const matStore: MatState = proxy<MatState>({ ...@@ -283,12 +281,12 @@ export const matStore: MatState = proxy<MatState>({
} }
} }
}, },
setChained(location, isChained) { setChained(location, chainIndex) {
const target = this.in(location.location) const target = this.in(location.location)
.of(location.controler) .of(location.controler)
.at(location.sequence); .at(location.sequence);
if (target) { if (target) {
target.chained = isChained; target.chainIndex = chainIndex;
} }
}, },
}); });
......
...@@ -112,7 +112,7 @@ export interface MatState { ...@@ -112,7 +112,7 @@ export interface MatState {
isChaining: boolean isChaining: boolean
) => void; ) => void;
// 添加被连锁状态 // 添加被连锁状态
setChained: (location: ygopro.CardLocation, isChained: boolean) => void; setChained: (location: ygopro.CardLocation, chainIndex?: number) => void;
} }
export interface InitInfo { export interface InitInfo {
...@@ -136,7 +136,7 @@ export interface CardState { ...@@ -136,7 +136,7 @@ export interface CardState {
}; // 位置信息,叫location的原因是为了和ygo对齐 }; // 位置信息,叫location的原因是为了和ygo对齐
focus: boolean; // 用于实现动画效果,当这个字段为true时,该张卡片会被放大并在屏幕中央展示 focus: boolean; // 用于实现动画效果,当这个字段为true时,该张卡片会被放大并在屏幕中央展示
chaining: boolean; // 是否在连锁中 chaining: boolean; // 是否在连锁中
chained: boolean; // 是否被连锁,如果为true,这张卡片表面会加上枷 chainIndex?: number; // 连锁的序号,如果为空表示不在连
directAttack: boolean; // 是否正在直接攻击为玩家 directAttack: boolean; // 是否正在直接攻击为玩家
attackTarget?: CardState & { sequence: number; opponent: boolean }; // 攻击目标。(嵌套结构可行么?) attackTarget?: CardState & { sequence: number; opponent: boolean }; // 攻击目标。(嵌套结构可行么?)
idleInteractivities: Interactivity<number>[]; // IDLE状态下的互动信息 idleInteractivities: Interactivity<number>[]; // IDLE状态下的互动信息
......
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