commit b6b47fd902da8c8a346527cb6d9d62312320b447
parent 257fec85632673c18ba2c82d94efc93eb3e76b28
Author: n0tr1v <n0tr1v@protonmail.com>
Date: Mon, 18 Dec 2023 23:16:46 -0500
cleanup
Diffstat:
2 files changed, 25 insertions(+), 29 deletions(-)
diff --git a/pkg/web/handlers/handlers.go b/pkg/web/handlers/handlers.go
@@ -965,7 +965,7 @@ func doJoinTable(db *database.DkfDB, pokerTableSlug string, playerBuyIn database
if g := poker.PokerInstance.GetGame(poker.RoomID(pokerTableSlug)); g != nil {
g.Players.Lock()
defer g.Players.Unlock()
- if g.IsSeated2(userID) {
+ if g.IsSeated(userID) {
return errors.New("cannot buy-in while seated")
}
}
@@ -1011,7 +1011,7 @@ func doCashOut(db *database.DkfDB, pokerTableSlug string, userID database.UserID
if g := poker.PokerInstance.GetGame(poker.RoomID(pokerTableSlug)); g != nil {
g.Players.Lock()
defer g.Players.Unlock()
- if g.IsSeated2(userID) {
+ if g.IsSeated(userID) {
return errors.New("cannot cash out while seated")
}
}
diff --git a/pkg/web/handlers/poker/poker.go b/pkg/web/handlers/poker/poker.go
@@ -306,16 +306,12 @@ func sortGameResults(arr []GameResult) {
sort.Slice(arr, func(i, j int) bool { return arr[i].HandScore < arr[j].HandScore })
}
-func (g *Ongoing) AddEvent(evts ...PokerEvent) {
+func (g *Ongoing) addEvent(evts ...PokerEvent) {
g.Events.With(func(events *[]PokerEvent) {
*events = append(*events, evts...)
})
}
-func (g *Ongoing) GetDeckStr() string {
- return g.getDeckStr()
-}
-
func (g *Ongoing) getDeckStr() string {
return strings.Join(g.Deck, "")
}
@@ -345,7 +341,7 @@ func (g *Ongoing) countCanBetPlayers() (nbCanBet int) {
return
}
-func (g *Ongoing) CountAlivePlayers() (playerAlive int) {
+func (g *Ongoing) countAlivePlayers() (playerAlive int) {
for _, p := range g.Players {
if !p.Folded.Load() {
playerAlive++
@@ -354,7 +350,7 @@ func (g *Ongoing) CountAlivePlayers() (playerAlive int) {
return
}
-func (g *Ongoing) GetPlayer(userID database.UserID) *PokerPlayer {
+func (g *Ongoing) getPlayer(userID database.UserID) *PokerPlayer {
for _, p := range g.Players {
if p.UserID == userID {
return p
@@ -372,13 +368,13 @@ func getPlayer(players []*SeatedPlayer, userID database.UserID) (out *SeatedPlay
return
}
-func (g *PokerGame) IsSeated(userID database.UserID) (out bool) {
- g.Players.RWith(func(gPlayers *[]*SeatedPlayer) { out = isSeated(*gPlayers, userID) })
- return
+func (g *PokerGame) IsSeated(userID database.UserID) bool {
+ return isSeated(*g.Players.Val(), userID)
}
-func (g *PokerGame) IsSeated2(userID database.UserID) bool {
- return isSeated(*g.Players.Val(), userID)
+func (g *PokerGame) isSeated(userID database.UserID) (out bool) {
+ g.Players.RWith(func(gPlayers *[]*SeatedPlayer) { out = isSeated(*gPlayers, userID) })
+ return
}
func isSeated(players []*SeatedPlayer, userID database.UserID) bool {
@@ -430,7 +426,7 @@ func (g *PokerGame) incrDealerIdx() (smallBlindIdx, bigBlindIdx int) {
func (g *PokerGame) UnSitPlayer(userID database.UserID) error {
ongoing := g.Ongoing
if ongoing != nil {
- if p := ongoing.GetPlayer(userID); p != nil {
+ if p := ongoing.getPlayer(userID); p != nil {
p.Unsit.Store(true)
}
}
@@ -451,7 +447,7 @@ func (g *PokerGame) UnSitPlayer1(seatedPlayer *SeatedPlayer) {
roomTopic := g.RoomID.Topic()
seatedPlayerUserID := seatedPlayer.UserID
if ongoing != nil {
- if player := ongoing.GetPlayer(seatedPlayerUserID); player != nil {
+ if player := ongoing.getPlayer(seatedPlayerUserID); player != nil {
select {
case g.PlayersEventCh <- PlayerEvent{Player: player.Username, Unsit: true}:
default:
@@ -461,7 +457,7 @@ func (g *PokerGame) UnSitPlayer1(seatedPlayer *SeatedPlayer) {
for _, card := range *playerCards {
evt := PokerEvent{ID: "card" + itoa(card.Idx), Name: "", Idx: card.Idx, Top: BurnStackY, Left: BurnStackX, Angle: "0deg", Reveal: false}
PokerPubSub.Pub(roomTopic, evt)
- ongoing.AddEvent(evt)
+ ongoing.addEvent(evt)
}
})
}
@@ -526,7 +522,7 @@ func showCards(g *PokerGame, seats []Seat) {
evt2 := PokerEvent{ID: "card" + itoa(secondCard.Idx), Name: secondCard.Name, Idx: secondCard.Idx, Top: seatData.Top, Left: seatData.Left + 53, Reveal: true}
PokerPubSub.Pub(roomTopic, evt1)
PokerPubSub.Pub(roomTopic, evt2)
- ongoing.AddEvent(evt1, evt2)
+ ongoing.addEvent(evt1, evt2)
}
}
}
@@ -596,11 +592,11 @@ func foldPlayer(g *PokerGame, p *PokerPlayer) {
evt2 := PokerEvent{ID: "card" + itoa(secondCardIdx), Name: "", Idx: secondCardIdx, Top: BurnStackY, Left: BurnStackX, Angle: "0deg", Reveal: false}
PokerPubSub.Pub(roomTopic, evt1)
PokerPubSub.Pub(roomTopic, evt2)
- g.Ongoing.AddEvent(evt1, evt2)
+ g.Ongoing.addEvent(evt1, evt2)
}
func doUnsit(g *PokerGame, p *PokerPlayer, playerAlive *int) int {
- *playerAlive = g.Ongoing.CountAlivePlayers()
+ *playerAlive = g.Ongoing.countAlivePlayers()
if *playerAlive == 1 {
p.countChancesToAction--
return breakRoundIsSettledLoop
@@ -797,7 +793,7 @@ func execBettingRound(g *PokerGame, skip int, minBet database.PokerChip) bool {
newlyAllInPlayers := make([]*PokerPlayer, 0)
autoCache := make(map[database.Username]AutoAction)
- playerAlive := ongoing.CountAlivePlayers()
+ playerAlive := ongoing.countAlivePlayers()
// Avoid asking for actions if only 1 player can do so (because others are all-in)
nbCanBet := ongoing.countCanBetPlayers()
@@ -964,7 +960,7 @@ func burnCard(g *PokerGame, idx, burnIdx *int) {
Left: BurnStackX + (*burnIdx * 4),
}
PokerPubSub.Pub(g.RoomID.Topic(), evt)
- ongoing.AddEvent(evt)
+ ongoing.addEvent(evt)
*burnIdx++
}
@@ -981,7 +977,7 @@ func dealCard(g *PokerGame, idx *int, dealCardIdx int) {
Reveal: true,
}
PokerPubSub.Pub(g.RoomID.Topic(), evt)
- ongoing.AddEvent(evt)
+ ongoing.addEvent(evt)
ongoing.communityCards = append(ongoing.communityCards, card)
}
@@ -1030,7 +1026,7 @@ func dealPlayersCards(g *PokerGame, seats []Seat, idx *int) {
*pCards = append(*pCards, PlayerCard{Idx: *idx, Name: card})
})
- ongoing.AddEvent(evt, evt1)
+ ongoing.addEvent(evt, evt1)
}
}
}
@@ -1183,7 +1179,7 @@ func autoUnsitInactivePlayers(g *PokerGame) {
} else if p.LastActionTS.Before(ongoing.CreatedAt) {
// If the player was playing the game, must be booted if he had the chance to make actions and did not.
// If the player was not playing the game, must be booted if he's not eligible to play the next one.
- op := ongoing.GetPlayer(p.UserID)
+ op := ongoing.getPlayer(p.UserID)
playerShallBeBooted = (op != nil && op.countChancesToAction > 0) ||
(op == nil && !pIsEligible)
}
@@ -1374,7 +1370,7 @@ func cardToPokerCard(name string) string {
func (g *PokerGame) Deal(roomID RoomID, authUser *database.User) {
roomTopic := roomID.Topic()
roomUserTopic := roomID.UserTopic(authUser.Username)
- if g.CountEligibleSeated() < 2 {
+ if g.countEligibleSeated() < 2 {
PokerPubSub.Pub(roomUserTopic, ErrorMsgEvent{Message: "need at least 2 players"})
return
}
@@ -1392,7 +1388,7 @@ func (g *PokerGame) Deal(roomID RoomID, authUser *database.User) {
go dealerThread(g)
}
-func (g *PokerGame) CountEligibleSeated() (count int) {
+func (g *PokerGame) countEligibleSeated() (count int) {
g.Players.RWith(func(gPlayers *[]*SeatedPlayer) {
for _, p := range *gPlayers {
if p.isEligible(g.PokerTableMinBet) {
@@ -1905,7 +1901,7 @@ func buildSeatsHtml(g *PokerGame, authUser *database.User) (html string) {
func drawSeatsStyle(authUser *database.User, g *PokerGame) string {
ongoing := g.Ongoing
html := "<style>"
- seated := g.IsSeated(authUser.ID)
+ seated := g.isSeated(authUser.ID)
g.Players.RWith(func(players *[]*SeatedPlayer) {
for i, p := range *players {
if p != nil || seated {
@@ -1922,7 +1918,7 @@ func drawSeatsStyle(authUser *database.User, g *PokerGame) string {
html += `#seat` + itoa(i+1) + ` .inner:before { content: "` + pUsername.String() + `"; }`
html += `#seat` + itoa(i+1) + `_cash:before { content: "` + itoa2(p.GetCash()) + `"; }`
if ongoing != nil {
- if op := ongoing.GetPlayer(pUserID); op != nil && op.GetBet() > 0 {
+ if op := ongoing.getPlayer(pUserID); op != nil && op.GetBet() > 0 {
html += `#seat` + itoa(i+1) + `Pot:before { content: "` + itoa2(op.GetBet()) + `"; }`
}
}