static private string calcWinner(Hand dealer, Hand player) { if (dealer.IsBust()) { return("Player Wins!"); } if (player.IsBust()) { return("Dealer Wins!"); } return(dealer.Value > player.Value ? "Dealer Wins!" : "Player Wins!"); }
static void Main(string[] args) { Console.WriteLine("Hello Blackjack!"); Hand dealerHand = new Hand(); Hand playerHand = new Hand(); Deck deck = new Deck(); deck.CreateDeck(); playerHand.AddCard(deck.Draw()); playerHand.AddCard(deck.Draw()); dealerHand.AddCard(deck.Draw()); dealerHand.AddCard(deck.Draw()); Console.WriteLine("Dealer's Hand: "); Console.WriteLine(dealerHand.ToString()); Console.WriteLine("Player's Hand: "); Console.WriteLine(playerHand.ToString()); Console.WriteLine("=========================="); var winner = ""; while (true) { var card = Hit(dealerHand, deck); Console.WriteLine($"\nDealer draws {card}"); Console.WriteLine($"Dealer is at {dealerHand.ToString()} [{dealerHand.Value}]"); if (dealerHand.IsBust()) { break; } var choice = promptPlayer(); if (choice == "1") { Hit(playerHand, deck); Console.WriteLine($"\nPlayer draws {card}"); Console.WriteLine($"Player is at {playerHand.ToString()} [{playerHand.Value}]"); if (playerHand.IsBust()) { break; } } else { break; } } winner = calcWinner(dealerHand, playerHand); Console.WriteLine(winner); }