예제 #1
0
    GameStateBase getState(GameState state)
    {
        GameStateBase gameState;

        if (states.TryGetValue(state, out gameState))
        {
            return(gameState);
        }

        switch (state)
        {
        case GameState.Enter: gameState = new GameEnterState(this); break;

        case GameState.Ready: gameState = new GameReadyState(this); break;

        case GameState.Gaming: gameState = new GamingState(this); break;

        case GameState.Goal: gameState = new GoalState(this); break;

        case GameState.Replay: gameState = new ReplayState(this); break;

        case GameState.Over: gameState = new GameOverState(this); break;
        }
        states.Add(state, gameState);
        return(gameState);
    }
예제 #2
0
    private void SetBG(GameReadyState gs)
    {
        var bgIdx = (int)gs;

        if (bgIdx < bgs.Length)
        {
            bg.sprite = bgs[(int)gs];
        }
        else
        {
            Debug.Log("GameReadyState is over than BgIdx: " + gs.ToString());
            return;
        }
    }
예제 #3
0
    public void SetGameReadyState(GameReadyState readyState)
    {
        gameReadyState = readyState;
        SetBG(readyState);

        switch (gameReadyState)
        {
        case GameReadyState.SelectInfo:
            gameInfoReady.InitGameInfoReady();

            break;

        case GameReadyState.SelectCharacter:
            SetCursorEnable(false);
            StartCoroutine(MoveToSelectCharacter());
            break;
        }
    }