Example #1
0
 public void LateUpdate()
 {
     if (currState != null)
     {
         currState.LateUpdate();
     }
     NextState = null;
 }
Example #2
0
 public void ChangeState(CharacterBaseState newState)
 {
     if (newState == null)
     {
         Debug.LogError("State Not Exist");
         return;
     }
     NextState       = newState;
     newState.Entity = Entity;
     if (currState != null)
     {
         currState.Exit();
         if (lastState != null)
         {
             lastState.Dispose();
         }
         lastState = currState;
     }
     currState = newState;
     currState.Enter();
 }
Example #3
0
        public static void DisposeState(eCharacterState type, CharacterBaseState state)
        {
            switch (type)
            {
            case eCharacterState.None:
                break;

            case eCharacterState.Idle:
                idleStateQueue.Enqueue((CharacterIdleState)state);
                break;

            case eCharacterState.Walk:
                walkStateQueue.Enqueue((CharacterWalkState)state);
                break;

            case eCharacterState.Max:
                break;

            default:
                break;
            }
        }