Пример #1
0
    /// <summary>
    /// Agent state machine. Handles state changing and state execution
    /// </summary>
    void StateMachine()
    {
        switch (states.currentPhase)
        {
        case DualShockerStates.DSPhases.PHASE1:
        {
            switch (states.currentState)
            {
            case DualShockerStates.DSStates.SPAWN:
            {
                states.Spawn();
                break;
            }

            case DualShockerStates.DSStates.MOVEPHASE1:
            {
                states.MovePhase1();
                states.ColoredAttack();
                break;
            }
            }
            break;
        }

        case DualShockerStates.DSPhases.PHASE2:
        {
            switch (states.currentState)
            {
            case DualShockerStates.DSStates.TRANSITION:
            {
                states.Transition();
                break;
            }

            case DualShockerStates.DSStates.MOVEPHASE2:
            {
                states.MovePhase2();
                break;
            }

            case DualShockerStates.DSStates.DIE:
            {
                states.Die();
                break;
            }
            }
            break;
        }
        }
    }