using System; namespace SK.Framework { /// /// 状态接口 /// public interface IState { /// /// 状态名称 /// string Name { get; set; } /// /// 状态初始化事件 /// void OnInitialization(); /// /// 状态进入事件 /// void OnEnter(); /// /// 状态停留事件(Update) /// void OnStay(); /// /// 状态退出事件 /// void OnExit(); /// /// 状态终止事件 /// void OnTermination(); /// /// 状态切换条件 /// /// 切换条件 /// 目标状态名称 void SwitchWhen(Func predicate, string targetStateName); } }