public void AskPlayerIfWantHit(RoundResult roundResult, bool doubledDown, ref bool continueHand, ref Hand playerHand, ref List <Card> playerCards, List <Card> dealerCards, ref Card nextCard, ref List <Card> deck, ref Random random) { if (roundResult == RoundResult.Unknown && doubledDown == false) { continueHand = playerHand.HitMe(playerHand.Points(playerCards), dealerCards[1].ToString()); while (continueHand == true) { nextCard = GetRandomCard(random.Next(0, deck.Count), ref deck); playerCards.Add(nextCard); Message.NextCardForPlayerWas(nextCard.ToString()); if (playerHand.Points(playerCards) < 21) { continueHand = playerHand.HitMe(playerHand.Points(playerCards), dealerCards[1].ToString()); } if (playerHand.Points(playerCards) >= 21) { continueHand = false; } } if (playerHand.Points(playerCards) <= 21) { Message.ChoseToStand(playerHand.Points(playerCards)); } } }
public void CheckIfPlayerSplitHand(bool splitHand, ref bool doubledDownSplit, ref bool continueHand, ref double walletAmount, ref double splitBetAmount, ref Card nextCard, List <Card> dealerCards, ref List <Card> playerCardsSplit, ref List <Card> deck, ref Hand playerHand, ref Random random, RoundResult roundResultSplit) { if (splitHand == true) { Message.SecondHand(playerCardsSplit[0].ToString(), playerCardsSplit[1].ToString()); if ((playerHand.Points(playerCardsSplit) == 9 || playerHand.Points(playerCardsSplit) == 10 || playerHand.Points(playerCardsSplit) == 11) && roundResultSplit == RoundResult.Unknown) { doubledDownSplit = playerHand.DoubleDown(playerHand.Points(playerCardsSplit)); if (doubledDownSplit == true) { walletAmount -= splitBetAmount; splitBetAmount += splitBetAmount; nextCard = GetRandomCard(random.Next(0, deck.Count), ref deck); playerCardsSplit.Add(nextCard); Message.NextCardForPlayerWas(nextCard.ToString()); } } if (doubledDownSplit == false) { continueHand = playerHand.HitMe(playerHand.Points(playerCardsSplit), dealerCards[1].ToString()); while (continueHand == true) { nextCard = GetRandomCard(random.Next(0, deck.Count), ref deck); playerCardsSplit.Add(nextCard); Message.NextCardForPlayerWas(nextCard.ToString()); if (playerHand.Points(playerCardsSplit) < 21) { continueHand = playerHand.HitMe(playerHand.Points(playerCardsSplit), dealerCards[1].ToString()); } if (playerHand.Points(playerCardsSplit) >= 21) { continueHand = false; } } if (playerHand.Points(playerCardsSplit) <= 21) { Message.ChoseToStand(playerHand.Points(playerCardsSplit)); } } } }