2026-04-19 23:28:56 +08:00
|
|
|
import type { Card } from './card.csv';
|
|
|
|
|
import type { Effect } from './effect.csv';
|
|
|
|
|
|
2026-04-22 16:13:48 +08:00
|
|
|
type CardEffectTrigger = "onPlay" | "onDraw" | "onDiscard";
|
|
|
|
|
type CardEffectTarget = "user" | "eachTarget" | "eachEnemy" | "randomEnemy" | "player";
|
|
|
|
|
type CardEffectList = [effect: Effect, stacks: number][];
|
|
|
|
|
|
2026-04-19 23:28:56 +08:00
|
|
|
type CardEffectTable = readonly {
|
|
|
|
|
readonly id: string;
|
|
|
|
|
readonly card: Card;
|
2026-04-22 16:13:48 +08:00
|
|
|
readonly trigger: CardEffectTrigger;
|
|
|
|
|
readonly target: CardEffectTarget;
|
|
|
|
|
readonly effects: CardEffectList;
|
2026-04-19 23:28:56 +08:00
|
|
|
}[];
|
|
|
|
|
|
|
|
|
|
export type CardEffect = CardEffectTable[number];
|
|
|
|
|
|
|
|
|
|
declare function getData(): CardEffectTable;
|
|
|
|
|
export default getData;
|