private void ProcessState()
        {
            switch (currentState)
            {
            case GameRoundState.STARTING:
                timeRemaining = waitTime;
                currentState  = GameRoundState.WAITING;
                break;

            case GameRoundState.WAITING:
                timeRemaining = roundLength;

                currentRound++;
                OnRoundChange?.Invoke(currentRound);

                currentState = GameRoundState.RUNNING;
                OnRoundStart?.Invoke(currentRound);
                break;

            case GameRoundState.RUNNING:
                timeRemaining = waitTime;

                currentState = GameRoundState.WAITING;
                OnRoundFinished?.Invoke(currentRound);
                break;
            }
        }
Beispiel #2
0
    private void AIRound()
    {
        if (UIRoundState())
        {
            return;
        }
        //Temperary logic

        m_GameRoundState = GameRoundState.GameRoundStatePlayer;
    }
Beispiel #3
0
    private void PlayerRound()
    {
        //进入回合首先显示回合状态UI
        if (UIRoundState())
        {
            return;
        }

        if (m_GamePlayer.IsPlayerRoundOver())
        {
            m_GameRoundState = GameRoundState.GameRoundStateAI;
        }
    }
Beispiel #4
0
 private void Init()
 {
     m_GameRoundState = GameRoundState.GameRoundStateNone;
 }
Beispiel #5
0
 public GameModeAlpha()
 {
     m_GamePlayer     = new GamePlayer();
     m_MainGameState  = new GameState();
     m_GameRoundState = GameRoundState.GameRoundStateNone;
 }