diff options
Diffstat (limited to 'internal/game/casino_ux.go')
| -rw-r--r-- | internal/game/casino_ux.go | 28 |
1 files changed, 12 insertions, 16 deletions
diff --git a/internal/game/casino_ux.go b/internal/game/casino_ux.go index 28fc361..d65cfb9 100644 --- a/internal/game/casino_ux.go +++ b/internal/game/casino_ux.go @@ -159,22 +159,18 @@ func (g *Game) executeTableStatus(sess *net.Session, args []string, _ string) { } return } - // The table command always shows the live felt. The rules command opens - // the game's help page; there is no separate "table rules" command. - if t.Config.Game == casino.GameVideoPoker { - // A video poker cabinet's felt is its paytable. - g.executeTableAction(sess, "paytable") + // The table command shows only the table: the live board for roulette, + // craps and video poker, or the printed felt for blackjack, baccarat and + // Pai Gow. No balance, seat state, command menu, or reminder rides along. + if board := t.Board(sess.Player.Name); board != nil { + if rendered := g.renderCasinoSnapshot(sess, board); rendered != "" { + sess.WriteLine(rendered) + } return } - g.emitCasinoEvents(t.Status(sess.Player.Name)) if felt := g.renderCasinoFelt(sess, t.Config); felt != "" { sess.WriteLine(felt) } - if t.Config.Game == casino.GameRoulette { - sess.WriteLine(g.rouletteReminder(sess, t.Config)) - } else { - sess.WriteLine(g.colorize(sess, "command", "Learn to play: rules.")) - } } func (g *Game) executeWatch(sess *net.Session, args []string, _ string) { @@ -369,7 +365,7 @@ func (g *Game) executeList(sess *net.Session, args []string, rawInput string) { if _, enabled := g.casinoEdgePrecision(sess); enabled { row.edge = machine.Config.HouseEdge() } - g.showCasinoListTable(sess, "", []casinoListRow{row}) + g.showCasinoListTable(sess, "Bet", []casinoListRow{row}) return } if table, playing := g.Casino.Participation(p.Name); playing && table != nil { @@ -391,13 +387,13 @@ func (g *Game) showCasinoWagerList(sess *net.Session, t *casino.Table) { } rows := g.casinoListRows(sess, t, []casino.WagerRow{{Bet: "main", Payout: "paytable", Win: "deal"}}) rows[0].bet = "bet [1-4|max]" - g.showCasinoListTable(sess, "", rows) + g.showCasinoListTable(sess, "Bet", rows) return } rows := t.Wagers(sess.Player.Name) // Blackjack rows are actions, not targets for a new bet. if t.Config.Game == casino.GameBlackjack && len(rows) > 0 { - g.showCasinoListTable(sess, "", g.casinoListRows(sess, t, rows)) + g.showCasinoListTable(sess, "Action", g.casinoListRows(sess, t, rows)) return } if len(rows) == 0 { @@ -417,10 +413,10 @@ func (g *Game) showCasinoWagerList(sess *net.Session, t *casino.Table) { } list := g.casinoListRows(sess, t, []casino.WagerRow{wager}) list[0].bet = "bet <amount>" - g.showCasinoListTable(sess, "", list) + g.showCasinoListTable(sess, "Bet", list) return } - g.showCasinoListTable(sess, "bet <amount> on <bet>", g.casinoListRows(sess, t, rows)) + g.showCasinoListTable(sess, "bet <amount> on", g.casinoListRows(sess, t, rows)) } // showCasinoGameLook appends the live game state and hint menu for the |
