commit cb91fbdc051c51261031d457d82e23c15e61b999
parent 719b526d49da8c62e09a738471aecf4000535a29
Author: n0tr1v <n0tr1v@protonmail.com>
Date: Thu, 14 Dec 2023 22:56:46 -0500
Do not rake uncalled bets
Diffstat:
1 file changed, 13 insertions(+), 0 deletions(-)
diff --git a/pkg/web/handlers/poker/poker.go b/pkg/web/handlers/poker/poker.go
@@ -695,6 +695,19 @@ END1:
p.AllInMaxGain = maxGain
}
+ // When only one player remain alive (everyone else fold)
+ // We refund the "uncalled bet" so that it does not go in the main pot and does not get raked.
+ if playerAlive == 1 {
+ newArray := make([]*PokerPlayer, len(g.Ongoing.Players))
+ copy(newArray, g.Ongoing.Players)
+ sort.Slice(newArray, func(i, j int) bool { return newArray[i].Bet > newArray[j].Bet })
+ firstPlayer := newArray[0]
+ secondPlayer := newArray[1]
+ diff := firstPlayer.Bet - secondPlayer.Bet
+ firstPlayer.Bet -= diff
+ firstPlayer.Cash += diff
+ }
+
// Transfer players bets into the main pot
for _, p := range g.Ongoing.Players {
mainPot += p.Bet