Beispiel #1
0
    /*****************************************************************
    * Awake
    *****************************************************************/
    void Awake()
    {
        //ゲームの状態を管理する
        Game_Scene_T = GAME_STATE_TYPE.PREPARATE;
        //デバイスの認識が完了したかどうか
        device_flag = false;

        //接続されているデバイスを取得
        StartCoroutine("CreatePlayer");

        controllers.Clear();
    }
Beispiel #2
0
    /*****************************************************************
    *  // Update is called once per frame
    *****************************************************************/
    void Update()
    {
        //GAME_STATE_TYPEの更新
        switch (Game_Scene_T)
        {
        case GameDirector.GAME_STATE_TYPE.PREPARATE:
            //全ての事前準備が終わったら
            if (device_flag)
            {
                Game_Scene_T = GAME_STATE_TYPE.PRE_GAME;
            }
            break;

        case GameDirector.GAME_STATE_TYPE.PRE_GAME:
            //ゲーム開始直前の1Fだけ
            foreach (var controller in controllers)
            {
                controller.ControllerInitialize();
            }
            Game_Scene_T = GAME_STATE_TYPE.GAME;
            break;

        case GameDirector.GAME_STATE_TYPE.GAME:
            foreach (var controller in controllers)
            {
                controller.ControllerUpdate();
            }
            break;

        case GameDirector.GAME_STATE_TYPE.POST_GAME:
            foreach (var controller in controllers)
            {
                controller.ControllerFinalize();
            }
            break;

        default:
            break;
        }
    }
Beispiel #3
0
    public void AdvanceState(GAME_STATE_TYPE _state)
    {
        IState <CKGameManager> st = GetGameState(_state);

        gameStateStack.AdvanceState(ref st);
    }
Beispiel #4
0
 // Get the specific game state from the Dictionary
 IState <CKGameManager> GetGameState(GAME_STATE_TYPE _gs)
 {
     return(gameStateMap[_gs]);
 }