Example #1
0
 /// <summary>
 /// Enter state
 /// </summary>
 public virtual void Enter()
 {
     IsActive = true;
     StateEnter?.Invoke(this, EventArgs.Empty);
     if (!SkipEnterTransition)
     {
         EnterFinish();
     }
 }
Example #2
0
        public void SwitchState(InteractorState state)
        {
            if (State != null)
            {
                StateExit?.Invoke(State);
                State?.Exit();
            }

            State = state;
            StateEnter?.Invoke(state);
            State.Enter();
        }
Example #3
0
 protected State()
 {
     EntryNode.StateNodeEnter += () => { ActiveStateId = EntryStateId; StateEnter?.Invoke(); };
     ExitNode.StateNodeEnter  += () => { ActiveStateId = ExitStateId; };
     ExitNode.StateNodeLeave  += () => { StateLeave?.Invoke(); ActiveStateId = InvalidStateId; };
 }
Example #4
0
 private void OnStateEnter(SolutionState state) => StateEnter?.Invoke(this, new StateEventArgs(state));