Beispiel #1
0
 public void DisplayCardsDrawn(List <Card> cards)
 {
     Console.WriteLine(String.Join(' ', Card.ToListOfStrings(cards)));
 }
Beispiel #2
0
        public void PlayBlackJack()
        {
            if (IsGameOver)
            {
                return;
            }

            var deck        = Shuffle(GenerateDeck());
            var currentHand = Deal(2, deck);


            while (true)
            {
                var currentScore = CalculateScore(currentHand);

                UpdateScore(currentScore);

                GameStatus();

                if (IsDealerWinner || IsUserWinner || IsTied)
                {
                    break;
                }

                var displayScore = IsUserBust ? "Bust!" : currentScore.ToString();

                var displayTurn = IsUsersTurn ? "You are at currently" : "Dealer is";

                Console.WriteLine("\n" + displayTurn + " at " + displayScore);

                Console.WriteLine("with the hand [" + string.Join(", ", Card.ToListOfStrings(currentHand)) + "]");

                if (IsUserBust)
                {
                    break;
                }


                var hitOrStay = IsUsersTurn ? GetUsersMove() : DealersNextMove(currentScore);


                if (hitOrStay == NextMove.Stay)
                {
                    if (!IsUsersTurn)
                    {
                        IsGameOver = true;
                        GameStatus();
                    }


                    IsUsersTurn = false;
                    break;
                }


                var dealAgain = Deal(1, deck);


                AddCardToHand(dealAgain, currentHand);


                displayTurn = IsUsersTurn ? "You draw" : "Dealer draws";

                Console.WriteLine(displayTurn + " " + String.Join(' ', Card.ToListOfStrings(dealAgain)));
            }


            if (IsUserWinner)
            {
                Console.WriteLine("You beat the dealer");
            }
            else if (IsDealerWinner)
            {
                Console.WriteLine("Dealer Wins");
            }

            if (IsTied)
            {
                Console.WriteLine("It's a tie!");
            }
        }
Beispiel #3
0
 public void DisplayHand(List <Card> currentHand)
 {
     Console.WriteLine("with the hand [" + string.Join(", ", Card.ToListOfStrings(currentHand)) + "]");
 }