using System; using System.Collections.Generic; namespace BaseGames.AI { /// 一个状态:进入/每帧/退出钩子 + 出边转换列表(按优先级有序,首个命中即转)。 public sealed class AiState { public string Name { get; } public Action OnEnter { get; internal set; } public Action OnTick { get; internal set; } // (ctx, dt) public Action OnExit { get; internal set; } public List Transitions { get; } = new List(); public AiState(string name) => Name = name; } }