42 lines
987 B
TypeScript
42 lines
987 B
TypeScript
import type { ValuesOf } from "@sammo/util";
|
|
import type * as IMethod from "./IActionMethod.js";
|
|
import type { ItemKeyType } from "./defs.js";
|
|
export type * as IMethod from "./IActionMethod.js";
|
|
|
|
export interface IActionMethod extends
|
|
IMethod.TurnExecuteTriggerList,
|
|
IMethod.CalcDomestic,
|
|
IMethod.CalcStat,
|
|
IMethod.CalcStatRange,
|
|
IMethod.CalcOpposeStat,
|
|
IMethod.CalcStrategic,
|
|
IMethod.CalcIncome,
|
|
IMethod.WarPowerMultiplier,
|
|
IMethod.BattleInitTrigger,
|
|
IMethod.BattlePhaseTrigger,
|
|
IMethod.ArbitraryAction {
|
|
}
|
|
|
|
export interface IAction extends Partial<IActionMethod> {
|
|
readonly name: string;
|
|
|
|
getName(): string;
|
|
getInfo(): string[] | string;
|
|
}
|
|
|
|
export const IActionOrder = [
|
|
'nationType',
|
|
'officerLevel',
|
|
'specialityDomestic',
|
|
'specialityWar',
|
|
'personlity',
|
|
'crewType',
|
|
'inheritBuff',
|
|
'scenarioEffect',
|
|
'horse',
|
|
'weapon',
|
|
'book',
|
|
'item',
|
|
];
|
|
|
|
export type IActionKey = ValuesOf<IAction>; |