Exemplo n.º 1
0
        public void GameCycle()
        {
            bool isPlayerCanMove = true;
            int  option          = 0;

            while (!isWinner())
            {
                Player ActivePlayer = GManager.WhoseTurn(FirstPlayer, SecondPlayer);

                ConsoleDraw.DrawAskToThrow(GManager.AskPlayersForThrow(GameDice, FirstPlayer, SecondPlayer),
                                           GameDice, Board);

                GManager.UpdateMoves(GameDice, ActivePlayer);
                isPlayerCanMove = GManager.isAvailableMoves(Board, GameDice, FirstPlayer, SecondPlayer);

                if (isPlayerCanMove)
                {
                    while (ActivePlayer.Moves > 0)
                    {
                        if (isWinner())
                        {
                            break;
                        }
                        else
                        {
                            GManager.AskPlayersForMove(Board, GameDice, FirstPlayer, SecondPlayer,
                                                       ConsoleDraw.DrawAskToMove(GManager.WhoseTurn(FirstPlayer, SecondPlayer),
                                                                                 GameDice, Board));
                        }
                    }
                }
                else
                {
                    ConsoleDraw.DrawNoAvailableMoves(GManager.WhoseTurn(FirstPlayer, SecondPlayer), Board, GameDice);
                    GManager.ChangePlayersTurn(FirstPlayer, SecondPlayer);
                }
            }

            option = ConsoleDraw.DrawWinner(GManager.WinnerPlayer(Board, FirstPlayer, SecondPlayer));
            if (option == 1)
            {
                StartGame();
            }
            else
            {
                ConsoleDraw.DrawGoodBye();
            }
        }
Exemplo n.º 2
0
        public void InitializePlayers()
        {
            int option = ConsoleDraw.DrawStartMenu();

            if (option == 1)
            {
                FirstPlayer  = new Player(ConsoleDraw.DrawAskHumanName("Player 1"), true);
                SecondPlayer = new Player(ConsoleDraw.DrawAskHumanName("Player 2"), true);
                GManager.SetPlayersColor(GameDice, FirstPlayer, SecondPlayer);
                ConsoleDraw.DrawFirstThrow(GameDice, FirstPlayer, SecondPlayer);
                IsNewGame = false;
            }
            else
            {
                isEndOfGame = true;
            }
        }