private void DealHandButton_Click(object sender, EventArgs e) { string ChanceOfWinning, ChanceOfLosing, ChanceOfDrawing; if (FirstDeal) { DealButton.Text = "Deal Next Hand"; FirstDeal = false; } else { ResultLabel.Text = String.Empty; ComputerActionLabel.Text = String.Empty; CardDealer.ResetDeck(); } User.Money -= 10; Computer.Money -= 10; Pot += 20; CardDealer.Deal(User, Computer, SharedCards); Odds UsersOdds = User.HoldemHand.CalculateOdds(SharedCards); ChanceOfWinning = (Math.Round(UsersOdds.Win, 2)).ToString(); ChanceOfLosing = (Math.Round(UsersOdds.Lose, 2)).ToString(); ChanceOfDrawing = (Math.Round(UsersOdds.Draw, 2)).ToString(); PlayersOddsLabel.Text = $"Win: {ChanceOfWinning}%\nLose: {ChanceOfLosing}%\n" + $"Draw: {ChanceOfDrawing}%"; PotLabel.Text = $"Pot: ${Pot}"; ComputersCard1.Image = Properties.Resources.backsideofcard; ComputersCard2.Image = Properties.Resources.backsideofcard; PlayersCard1.Image = GetCardImage(User.HoldemHand.Hand[0]); PlayersCard2.Image = GetCardImage(User.HoldemHand.Hand[1]); SharedCard1.Image = GetCardImage(SharedCards.Hand[0]); SharedCard2.Image = GetCardImage(SharedCards.Hand[1]); SharedCard3.Image = GetCardImage(SharedCards.Hand[2]); SharedCard4.Image = GetCardImage(SharedCards.Hand[3]); SharedCard5.Image = GetCardImage(SharedCards.Hand[4]); ComputerMoneyLabel.Text = $"${Computer.Money}"; PlayerMoneyLabel.Text = $"${User.Money}"; DealButton.Enabled = false; FoldButton.Enabled = true; if (User.Money != 0) { RaiseButton.Enabled = true; } }
private void RaiseButton_Click(object sender, EventArgs e) { if (Computer.Money == 0) { PlayerWins(); } PlayersOddsLabel.Text = "Win: N/A\nLose: N/A\nDraw: N/A"; User.Money -= 10; Pot += 10; Odds ComputersOdds = Computer.HoldemHand.CalculateOdds(SharedCards); if (ComputersOdds.Win > 50.0) { Computer.Money -= 10; Pot += 10; PokerHand PlayersBestHand = User.HoldemHand.FindBestPokerHand(SharedCards); PokerHand ComputersBestHand = Computer.HoldemHand.FindBestPokerHand(SharedCards); int ResultOfComparision = PlayersBestHand.CompareTo(ComputersBestHand); if (ResultOfComparision == 1) { if (Computer.Money == 0) { PlayerWins(); } else { User.Money += Pot; Pot = 0; ComputerMoneyLabel.Text = $"${Computer.Money}"; ComputerActionLabel.Text = "Computer: Called"; ComputersCard1.Image = GetCardImage(Computer.HoldemHand.Hand[0]); ComputersCard2.Image = GetCardImage(Computer.HoldemHand.Hand[1]); PotLabel.Text = $"Pot: ${Pot}"; DealButton.Enabled = true; FoldButton.Enabled = false; RaiseButton.Enabled = false; ResultLabel.Text = "You Win\nThis Hand!"; PlayerMoneyLabel.Text = $"${User.Money}"; } } else if (ResultOfComparision == -1) { if (User.Money == 0) { PlayerLoses(); } else { Computer.Money += Pot; Pot = 0; ComputerMoneyLabel.Text = $"${Computer.Money}"; ComputerActionLabel.Text = "Computer: Called"; ComputersCard1.Image = GetCardImage(Computer.HoldemHand.Hand[0]); ComputersCard2.Image = GetCardImage(Computer.HoldemHand.Hand[1]); PotLabel.Text = $"Pot: ${Pot}"; DealButton.Enabled = true; FoldButton.Enabled = false; RaiseButton.Enabled = false; ResultLabel.Text = "The Computer\nWins This Hand"; PlayerMoneyLabel.Text = $"${User.Money}"; } } else { int SplitPot = Pot / 2; User.Money += 20; Computer.Money += 20; Pot = 0; ComputerMoneyLabel.Text = $"${Computer.Money}"; ComputerActionLabel.Text = "Computer: Called"; ComputersCard1.Image = GetCardImage(Computer.HoldemHand.Hand[0]); ComputersCard2.Image = GetCardImage(Computer.HoldemHand.Hand[1]); PotLabel.Text = $"Pot: ${Pot}"; DealButton.Enabled = true; FoldButton.Enabled = false; RaiseButton.Enabled = false; ResultLabel.Text = "It's a\nDraw!"; PlayerMoneyLabel.Text = $"${User.Money}"; } } else { User.Money += Pot; Pot = 0; ComputerActionLabel.Text = "Computer: Folded"; ComputersCard1.Image = GetCardImage(Computer.HoldemHand.Hand[0]); ComputersCard2.Image = GetCardImage(Computer.HoldemHand.Hand[1]); PotLabel.Text = $"Pot: ${Pot}"; DealButton.Enabled = true; FoldButton.Enabled = false; RaiseButton.Enabled = false; ResultLabel.Text = "You Win\nThis Hand!"; PlayerMoneyLabel.Text = $"${User.Money}"; } }