Files
sheep/src/types/type.d.ts
2022-09-30 09:55:16 +08:00

41 lines
1.3 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

interface Game {
nodes: Ref<CardNode[]>;
selectedNodes: Ref<CardNode[]>;
removeList: Ref<CardNode[]>;
removeFlag: Ref<boolean>;
backFlag: Ref<boolean>;
handleSelect: (node: CardNode) => void;
handleSelectRemove: (node: CardNode) => void;
handleBack: () => void;
handleRemove: () => void;
initData: (config?: GameConfig) => void;
}
interface GameConfig {
container?: Ref<HTMLElement | undefined>, // cardNode容器
cardNum: number, // card类型数量
layerNum: number // card层数
trap?:boolean, // 是否开启陷阱
delNode?: boolean, // 是否从nodes中剔除已选节点
events?: GameEvents // 游戏事件
}
interface GameEvents {
clickCallback?: () => void,
dropCallback?: () => void,
winCallback?: () => void,
loseCallback?: () => void
}
// 卡片节点类型
type CardNode = {
id: string // 节点id zIndex-index
type: number // 类型
zIndex: number // 图层
index: number // 所在图层中的索引
parents: CardNode[] // 父节点
row: number // 行
column: number // 列
top: number
left: number
state: number // 是否可点击 0 无状态 1 可点击 2已选 3已消除
}