Exemplo n.º 1
0
        public void Start()
        {
            var dealerFirstCard = Deck.Draw();

            DealerHand.AddCard(dealerFirstCard);
            Console.WriteLine($"Dealer: Hit with {dealerFirstCard.Suit} {dealerFirstCard.GetRank()}.");
            while (!PlayerHand.Busted())
            {
                Console.WriteLine("Stand, Hit");
                var read = Console.ReadLine();
                if (read == "Hit")
                {
                    var card = Deck.Draw();
                    PlayerHand.AddCard(card);
                    Console.WriteLine($"Hit with {card.Suit} {card.GetRank()}. Total is {PlayerHand.CalculateHand()}.");
                }
                else if (read == "Stand")
                {
                    break;
                }
            }

            while (DealerHand.CalculateHand() < DealerLimit)
            {
                var card = Deck.Draw();
                DealerHand.AddCard(card);
                Console.WriteLine(
                    $"Dealer: Hit with {card.Suit} {card.GetRank()}. Total is {DealerHand.CalculateHand()}.");
            }
        }
Exemplo n.º 2
0
        public string CalculateWinner()
        {
            var pointResult = $"Player got {PlayerHand.CalculateHand()}. Dealer got {DealerHand.CalculateHand()}";

            if (PlayerHand.Busted())
            {
                return($"Dealer won! {pointResult}");
            }

            if (DealerHand.Busted())
            {
                return($"Player won! {pointResult}");
            }

            if (DealerHand.CalculateHand() == PlayerHand.CalculateHand())
            {
                return($"Draw! {pointResult}");
            }

            return((DealerHand.CalculateHand() < PlayerHand.CalculateHand() ? "Player won! " : "Dealer won! ") +
                   pointResult);
        }