private void BlackJackGameResult(CardPlayer player, CardPlayer croupier, int bet) { if (CardsValueSum(player.Cards) > 21) { Console.WriteLine($"Sum of your cards more than 21 ({CardsValueSum(player.Cards)}).\n\nYOU LOSE!"); player.Money -= bet; croupier.Money += bet; } else if (CardsValueSum(croupier.Cards) > 21) { Console.WriteLine($"Sum of {croupier.Name} cards more than 21 ({CardsValueSum(croupier.Cards)}).\n\nYOU WIN!"); player.Money += bet; croupier.Money -= bet; } else if (CardsValueSum(player.Cards) > CardsValueSum(croupier.Cards)) { Console.WriteLine($"Sum of your cards ({CardsValueSum(player.Cards)}) more than sum of {croupier.Name} cards ({CardsValueSum(croupier.Cards)})\n\nYOU WON!"); player.Money += bet; croupier.Money -= bet; } else if (CardsValueSum(player.Cards) < CardsValueSum(croupier.Cards)) { Console.WriteLine($"Sum of your cards ({CardsValueSum(player.Cards)}) less than sum of {croupier.Name} cards ({CardsValueSum(croupier.Cards)})\n\nYOU LOSE!"); player.Money -= bet; croupier.Money += bet; } else if (CardsValueSum(player.Cards) == CardsValueSum(croupier.Cards)) { Console.WriteLine($"Sum of your cards ({CardsValueSum(player.Cards)}) equal to sum of {croupier.Name} cards ({CardsValueSum(croupier.Cards)})\n\nDRAW!"); } }
public void BlackJackGame(CardPlayer player, CardPlayer croupier) { CreateDeck(); ShuffleDeck(); player.Cards = new List <Card>(); croupier.Cards = new List <Card>(); var bet = GetPlayerBet(); DealCards(player, 2); DealCards(croupier, 2); PlayerFirstCardsOpenReport(croupier); PlayerCardsReport(player); if (CardsValueSum(player.Cards) == 21) { Console.WriteLine("You have 21."); } else { BlackJackPlayerTurn(player); if (CardsValueSum(player.Cards) <= 21) { BlackJackCroupierTurn(croupier, CardsValueSum(player.Cards)); } } BlackJackGameResult(player, croupier, bet); Console.Write("Press any key to coninue..."); Console.ReadKey(); }
private void BlackJackCroupierTurn(CardPlayer player, int firstPlayerCardsSum) { PlayerCardsReport(player); while (CardsValueSum(player.Cards) < firstPlayerCardsSum && CardsValueSum(player.Cards) < 21) { DealCards(player); PlayerCardsReport(player); } }
private void DealCards(CardPlayer player, int numberOfCards = 1) { if (Deck.Count < numberOfCards) { Console.WriteLine("Not enough cards in deck"); } else { player.Cards.AddRange(Deck.GetRange(0, numberOfCards)); Deck.RemoveRange(0, numberOfCards); } }
public void PlayerFirstCardsOpenReport(CardPlayer player) { Console.WriteLine($"{player.Name}'s cards:"); var count = player.Cards.Count; if (count > 0) { Console.BackgroundColor = ConsoleColor.White; Console.ForegroundColor = ConsoleColor.Black; for (int index = 0; index < count; index++) { Console.Write("┌─────────┐"); } Console.WriteLine(); Console.Write("│"); player.Cards[0].CardPropToConsole(); Console.Write(" │"); for (int index = 1; index < count; index++) { Console.Write("│▒▒▒▒▒▒▒▒▒│"); } Console.WriteLine(); for (int i = 0; i < 7; i++) { Console.Write("│ │"); for (int index = 1; index < count; index++) { Console.Write("│▒▒▒▒▒▒▒▒▒│"); } Console.WriteLine(); } Console.Write("│ "); player.Cards[0].CardPropToConsole(); Console.Write("│"); for (int index = 1; index < count; index++) { Console.Write("│▒▒▒▒▒▒▒▒▒│"); } Console.WriteLine(); for (int index = 0; index < count; index++) { Console.Write("└─────────┘"); } Console.WriteLine(); Console.ResetColor(); } }
private void BlackJackPlayerTurn(CardPlayer player) { while (CardsValueSum(player.Cards) <= 21) { Console.WriteLine($"Sum of your cards is {CardsValueSum(player.Cards)}."); Console.WriteLine("1 - One more card\n2 - Enough"); if (ConditionParse(2) == 1) { DealCards(player); PlayerCardsReport(player); } else { break; } } }
public void BlackJackGames() { var player = new CardPlayer("Player"); var croupier = new CardPlayer("Croupier"); while (player.Money > 0 && croupier.Money > 0) { Console.Clear(); Console.WriteLine(player.Money); Console.WriteLine(croupier.Money); BlackJackGame(player, croupier); } if (player.Money <= 0) { Console.WriteLine("You lost all your money. GAME OVER."); } if (croupier.Money <= 0) { Console.WriteLine($"You won all {croupier.Name} money. GAME OVER."); } }
public void PlayerCardsReport(CardPlayer player) { Console.WriteLine($"{player.Name}'s cards:"); CardsInRowReport(player.Cards); }