Files
rougelike-demo/client/assets/scripts/Framework/FSM/IState.ts
2025-12-14 22:38:43 +08:00

31 lines
653 B
TypeScript

/**
* 状态接口
* 定义状态机中状态的标准接口
*/
export interface IState {
/**
* 状态名称
* 用于标识和切换状态
*/
readonly name: string;
/**
* 进入状态时调用
* @param params 可选参数,用于传递状态切换时的数据
*/
onEnter(params?: any): void;
/**
* 更新状态(可选)
* 如果状态需要每帧更新,可以实现此方法
* @param dt 距离上一帧的时间增量(秒)
*/
onUpdate?(dt: number): void;
/**
* 退出状态时调用
* 用于清理状态相关的资源
*/
onExit(): void;
}