void ChangeState(StateIDs.States newStateID)
    {
        if (m_currentState != null)
        {
            m_currentState.OnExit();
        }

        m_currentState = FindState(newStateID);
        Debug.Assert(m_currentState != null, "INVALID INITIAL STATAE");
        m_currentState.OnEnter();
    }
 BaseState FindState(StateIDs.States stateID)
 {
     //Check for state ID compatibility
     foreach (BaseState state in m_states)
     {
         if (state.GetName() == stateID)
         {
             return(state);
         }
     }
     return(null);
 }
Esempio n. 3
0
    public BaseState FindState(StateIDs.States stateID)
    {
        foreach (BaseState state in m_states)
        {
            if (state.GetName() == stateID)
            {
                return(state);
            }
        }

        return(null);
    }
Esempio n. 4
0
 private void ChangeState(StateIDs.States toState)
 {
     foreach (BaseState s in m_state)
     {
         if (s.stateID == toState)
         {
             if (m_currentState != null)
             {
                 m_currentState.OnExit();
             }
             Debug.Log("Changing state to " + toState);
             m_currentState = s;
             m_currentState.OnEnter();
             break;
         }
     }
 }
Esempio n. 5
0
    public void AddState(StateIDs.States state)
    {
        switch (state)
        {
        case StateIDs.States.Idle:
            m_state.Add(new IdleState(this.aiController));
            break;

        case StateIDs.States.Follow:
            m_state.Add(new FollowState(aiController));
            break;

        case StateIDs.States.Mechanic:
            m_state.Add(new MechanicState(aiController));
            break;
        }
    }
Esempio n. 6
0
 public void RemoveState(StateIDs.States state)
 {
 }