コード例 #1
0
ファイル: GameEngine.cs プロジェクト: jdwile/hoot-owl-hoot
        public void RunGame()
        {
            var player = new LeastRecentCardPlayer();
            var state  = new GameState(10, player);

            state.StartGame();
            int numberOfTurns = 0;

            for (; ; numberOfTurns++)
            {
                if (state.GameIsLost())
                {
                    Console.WriteLine("Game is lost!");
                    break;
                }

                if (state.GameIsWon())
                {
                    Console.WriteLine("Game is won!");
                    break;
                }

                state.TakeTurn();
            }
            Console.WriteLine("Game took {0} turns!", numberOfTurns);
        }
コード例 #2
0
        public void ShouldPlayOldestCardFromHand()
        {
            var firstCard  = CardType.Red;
            var secondCard = CardType.Orange;
            var player     = new LeastRecentCardPlayer();

            player.Hand.Add(firstCard, secondCard);
            var board = new GameBoard(2);

            var play = player.FormulatePlay(board);

            Assert.AreEqual(firstCard, play.Card);

            player.Hand.Discard(play.Card);
            play = player.FormulatePlay(board);
            Assert.AreEqual(secondCard, play.Card);
        }