namespace BaseGames.AI
{
///
/// 外部 → 决策层的推送信号,用于事件驱动的状态转换(不靠轮询)。
/// 事件边不受 IsControllable 让位门阻挡。
///
/// 只保留真实存在发送方与消费方的信号。受击 / 硬直 / 击飞 / 弹反**不在此列**——
/// 它们由敌人物理状态机(EnemyStateType)处理,决策层经 IActorVitals.IsControllable
/// 让位门自动挂起。在这里重复定义会诱导写出与物理层打架的第二套受击逻辑。
///
/// 新增信号的判据:已经有确定的发送方与消费方,否则不要预留——无发送方的占位枚举只会变成死值。
///
public enum AiSignal
{
/// 敌人已死亡:由 EnemyBase 的死亡流程发出,让决策停止。
Died,
/// 开战:由竞技场开战触发器发出,让 Boss 从静置态进入入场演出。
Engaged,
}
}