示例#1
0
 private void SwitchState(ControllerState newState)
 {
     m_activeState.Abort();
     m_activeState = newState;
     m_activeState.LogicalEnter();
     m_activeState.EffectualEnter();
 }
示例#2
0
    public void SetStartState(ControllerState state)
    {
        if (m_activeStackedState)
        {
            m_activeStackedState.Abort();
            m_activeStackedState = null;
        }

        if (m_activeState)
        {
            m_activeState.Abort();
        }

        m_activeState = state;
        m_activeState.LogicalEnter();
        m_activeState.EffectualEnter();
    }