commit 52d720614f20867e256102803c69d8fe4b9030b4
parent 85693aa9f46404cf9c370a67e86be0ddf6adb4d6
Author: n0tr1v <n0tr1v@protonmail.com>
Date: Sat, 16 Dec 2023 16:41:18 -0500
fix
Diffstat:
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/pkg/web/handlers/poker/poker.go b/pkg/web/handlers/poker/poker.go
@@ -507,7 +507,7 @@ type AutoAction struct {
}
// Return either or not the game ended because only 1 player left playing (or none)
-func waitPlayersActionFn(db *database.DkfDB, g *PokerGame, roomID RoomID, skip int, minBet database.PokerChip) bool {
+func waitPlayersActionFn(db *database.DkfDB, g *PokerGame, roomID RoomID, skip int, minBet database.PokerChip, isPreFlop bool) bool {
roomTopic := roomID.Topic()
roomLogsTopic := roomID.LogsTopic()
dealerIdx := g.Ongoing.getPlayerIdxBySeatIdx(int(g.DealerSeatIdx.Load()))
@@ -814,7 +814,7 @@ RoundIsSettled:
// 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 {
+ if !isPreFlop && 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 })
@@ -972,7 +972,7 @@ func dealerThread(db *database.DkfDB, g *PokerGame, roomID RoomID) {
// Wait for players to bet/call/check/fold...
time.Sleep(time.Second)
skip := utils.Ternary(isHeadsUpGame, 1, 2)
- if waitPlayersActionFn(db, g, roomID, skip, bigBlindBet) {
+ if waitPlayersActionFn(db, g, roomID, skip, bigBlindBet, true) {
goto END
}
@@ -991,7 +991,7 @@ func dealerThread(db *database.DkfDB, g *PokerGame, roomID RoomID) {
// Wait for players to bet/call/check/fold...
time.Sleep(time.Second)
- if waitPlayersActionFn(db, g, roomID, skip, 0) {
+ if waitPlayersActionFn(db, g, roomID, skip, 0, false) {
goto END
}
@@ -1003,7 +1003,7 @@ func dealerThread(db *database.DkfDB, g *PokerGame, roomID RoomID) {
// Wait for players to bet/call/check/fold...
time.Sleep(time.Second)
- if waitPlayersActionFn(db, g, roomID, skip, 0) {
+ if waitPlayersActionFn(db, g, roomID, skip, 0, false) {
goto END
}
@@ -1015,7 +1015,7 @@ func dealerThread(db *database.DkfDB, g *PokerGame, roomID RoomID) {
// Wait for players to bet/call/check/fold...
time.Sleep(time.Second)
- if waitPlayersActionFn(db, g, roomID, skip, 0) {
+ if waitPlayersActionFn(db, g, roomID, skip, 0, false) {
goto END
}