commit c6faa11ae665af9d0df4aa99598b275544cdba97
parent ef92fac1861b9203d403ef36d4204caaefeece3b
Author: n0tr1v <n0tr1v@protonmail.com>
Date: Sun, 17 Dec 2023 02:17:08 -0500
cleanup
Diffstat:
1 file changed, 27 insertions(+), 11 deletions(-)
diff --git a/pkg/web/handlers/poker/poker.go b/pkg/web/handlers/poker/poker.go
@@ -133,6 +133,29 @@ func (p *PokerPlayer) isAllIn() bool {
return p.GetCash() == 0
}
+func (p *PokerPlayer) refundPartialBet(db *database.DkfDB, pokerTableID int64, diff database.PokerChip) {
+ _ = db.PokerTableAccountRefundPartialBet(p.UserID, pokerTableID, diff)
+ p.Bet -= diff
+ p.Cash += diff
+}
+
+func (p *PokerPlayer) gain(db *database.DkfDB, pokerTableID int64, gain database.PokerChip) {
+ _ = db.PokerTableAccountGain(p.UserID, pokerTableID, gain)
+ p.Cash += gain
+ p.Bet = 0
+}
+
+func (p *PokerPlayer) resetBet(db *database.DkfDB, pokerTableID int64) {
+ _ = db.PokerTableAccountResetAmountBet(p.UserID, pokerTableID)
+ p.Bet = 0
+}
+
+func (p *PokerPlayer) refundBet(db *database.DkfDB, pokerTableID int64) {
+ _ = db.PokerTableAccountRefundBet(p.UserID, pokerTableID)
+ p.Cash += p.GetBet()
+ p.Bet = 0
+}
+
func (p *PokerPlayer) doBet(db *database.DkfDB, bet database.PokerChip, pokerTableID int64, roomTopic string) {
_ = db.PokerTableAccountBet(p.UserID, pokerTableID, bet)
p.RoundTotalBet += bet
@@ -825,9 +848,7 @@ RoundIsSettled:
firstPlayer := newArray[0]
secondPlayer := newArray[1]
diff := firstPlayer.GetBet() - secondPlayer.GetBet()
- _ = db.PokerTableAccountRefundPartialBet(firstPlayer.UserID, g.PokerTableID, diff)
- firstPlayer.Bet -= diff
- firstPlayer.Cash += diff
+ firstPlayer.refundPartialBet(db, g.PokerTableID, diff)
}
// Transfer players bets into the main pot
@@ -1106,22 +1127,17 @@ func applyGains(db *database.DkfDB, g *PokerGame, playersGain []PlayerGain, main
for _, el := range playersGain {
newLogEvent(g, roomLogsTopic, fmt.Sprintf("Winner #%d: %s %s -> %d", el.Group, el.Player.Username, el.HandStr, el.Gain))
- _ = tx.PokerTableAccountGain(el.Player.UserID, g.PokerTableID, el.Gain)
winnersStr += el.Player.Username.String() + " "
- el.Player.Cash += el.Gain
- el.Player.Bet = 0
+ el.Player.gain(tx, g.PokerTableID, el.Gain)
}
for _, op := range g.Ongoing.Players {
- _ = tx.PokerTableAccountResetAmountBet(op.UserID, g.PokerTableID)
- op.Bet = 0
+ op.resetBet(tx, g.PokerTableID)
}
} else if nbPlayersGain == 0 {
// No winners, refund bets
for _, op := range g.Ongoing.Players {
- _ = tx.PokerTableAccountRefundBet(op.UserID, g.PokerTableID)
- op.Cash += op.GetBet()
- op.Bet = 0
+ op.refundBet(tx, g.PokerTableID)
}
}
tx.Commit()