Пример #1
0
        public override void OnExit(MyContext context, SuperState newState)
        {
            if (ParentOf(newState)) return;

            Console.WriteLine("AA - Run on exit code");
            base.OnExit(context, newState);
        }
Пример #2
0
        public override void OnEnter(MyContext context, SuperState oldState)
        {
            if (ParentOf(oldState)) return;

            base.OnEnter(context, oldState);
            Console.WriteLine("AB - Run on enter code");
        }
Пример #3
0
 public static new bool ParentOf(SuperState child)
 {
     return child is B;
 }
Пример #4
0
 public static bool ParentOf(SuperState child)
 {
     return child is SuperState;
 }
Пример #5
0
 public void SetState(SuperState nextState, SuperState oldState)
 {
     State = nextState;
     nextState.OnEnter(this, oldState);
 }
Пример #6
0
 public void LeaveState(SuperState nextState)
 {
     State.OnExit(this, nextState);
 }
Пример #7
0
 public virtual void OnExit(MyContext context, SuperState newState)
 {
 }