Esempio n. 1
0
    private void ProcessStateSwitch()
    {
        if (!stateIsSwitching)
        {
            return;
        }

        stateIsSwitching = false;
        state?.OnExit();
        state = newState;
        state.OnEnter();
        AIStateChanged?.Invoke(state);
    }
Esempio n. 2
0
 private void AddToStack(PersonalAIState state)
 {
     stateStack.Push(state);
 }
Esempio n. 3
0
 public void AddToStackAndSwitchTo(PersonalAIState state)
 {
     AddToStack(state);
     SwitchState(stateStack.Peek());
 }
Esempio n. 4
0
 public void OnAIStateChanged(PersonalAIState state)
 {
     SetStatus(state.ToString());
 }