예제 #1
0
 public bool IsState(GAMESTATE_TYPE eState)
 {
     if (m_eCurState == eState)
     {
         return(true);
     }
     return(false);
 }
예제 #2
0
 //是否在当前状态
 public bool IsState(GAMESTATE_TYPE eState)
 {
     if (m_StateProxy == null)
     {
         return(false);
     }
     return(m_StateProxy.IsState(eState));
 }
예제 #3
0
 //返回是否有切换
 public bool EnterState(GAMESTATE_TYPE eState = GAMESTATE_TYPE.GAMESTATE_NONE)
 {
     if (m_StateProxy == null)
     {
         return(false);
     }
     //退出前一状态
     m_StateProxy.ExitState();
     //创建新状态
     m_StateProxy.SwitchStateByState(eState);
     //进入新状态
     m_StateProxy.EnterState();
     return(true);
 }
예제 #4
0
        //选择状态
        public IVLState SwitchStateByState(GAMESTATE_TYPE eStateType)
        {
            m_eCurState = eStateType;
            switch (eStateType)
            {
            case GAMESTATE_TYPE.GAMESTATE_LOADING:
                m_curState = new VLState_Loading();
                break;

            case GAMESTATE_TYPE.GAMESTATE_PLAY:
                m_curState = new VLState_Play();
                break;

            default:
                m_curState  = new VLState_Base();
                m_eCurState = GAMESTATE_TYPE.GAMESTATE_NONE;
                break;
            }
            return(m_curState);
        }