Ejemplo n.º 1
0
    private void DisplayStateText(TurnManager.State currentState)
    {
        switch (currentState)
        {
        case TurnManager.State.AIPickForPlayer:
            logText.text = "AI is picking a chess for you";
            break;

        case TurnManager.State.PlayerMove:
            logText.text = "Please play your move";
            break;

        case TurnManager.State.PlayerPickForAI:
            logText.text = "Please pick a chess for your opponent";
            break;

        case TurnManager.State.AIMove:
            logText.text = "AI is playing a move";
            break;

        default:
            throw new ArgumentOutOfRangeException(nameof(currentState), currentState, null);
        }
    }
Ejemplo n.º 2
0
    public void PassTurnToNextPlayer()
    {
        var waitingPassTurn = TurnManager.Get().PassTurn();

        waitingPassTurn.ExecuteWhenDone(() => {
            TurnManager.State turnState = TurnManager.Get().GetState();

            if (turnState == TurnManager.State.Player)
            {
                NetworkManager.SendTurnStartMessage(NetworkManager.networkInstance.Id);
            }
            else if (turnState == TurnManager.State.OtherPlayer)
            {
                NetworkViewID turnPlayerViewID = TurnManager.Get().GetTurnPlayer();
                NetworkManager.SendTurnStartMessage(turnPlayerViewID);
            }
            else if (turnState == TurnManager.State.Enemy)
            {
                NetworkManager.StartEnemyTurn();
                EnemyManager turnEnemy = TurnManager.Get().GetTurnEnemy();
                turnEnemy.ChangeMoveStateToIdle();
            }
        });
    }