aboutsummaryrefslogtreecommitdiff
path: root/internal/casino/types.go
diff options
context:
space:
mode:
Diffstat (limited to 'internal/casino/types.go')
-rw-r--r--internal/casino/types.go32
1 files changed, 22 insertions, 10 deletions
diff --git a/internal/casino/types.go b/internal/casino/types.go
index 5efb43e..4bbc0a8 100644
--- a/internal/casino/types.go
+++ b/internal/casino/types.go
@@ -250,6 +250,7 @@ type MenuView struct {
Heading string // prompt heading shown above the command list
ShowBalance bool // prepend the player's chips/credits balance
Commands []MenuCommand
+ Repeat bool // returning bettor: compact clients can show a short reminder
}
// MenuCommand is one selectable command shown in a casino menu: the typed
@@ -257,6 +258,7 @@ type MenuView struct {
type MenuCommand struct {
Command string
Desc string
+ Cost int // additional stake; presentation can mark unaffordable actions
}
type Event struct {
@@ -275,8 +277,10 @@ type Event struct {
// snapshot can never be assigned without implementing the interface, and
// the event filter can test it with a single nil check instead of
// enumerating every game's field.
- Snapshot Snapshot
- Menu *MenuView
+ Snapshot Snapshot
+ Menu *MenuView
+ ShowBalance bool // append the recipient's current available funds
+ Detail bool // action-by-action public output, only for participants/watchers
}
// Snapshot is the marker interface for a game's structured event view. The
@@ -298,9 +302,14 @@ type CardView struct {
}
type BlackjackPlayerView struct {
- Name string
- Cards []CardView
- Score string
+ Name string
+ Cards []CardView
+ Score string
+ Hand int
+ Hands int
+ Bet int
+ Active bool
+ Status string
}
type BlackjackSnapshot struct {
@@ -331,9 +340,12 @@ type BaccaratSnapshot struct {
func (*BaccaratSnapshot) snapshot() {}
type Participant struct {
- Name string
- Connected bool
- HasBet bool
- Wager Wager
- Wallet Wallet
+ Name string
+ Connected bool
+ HasBet bool
+ Wager Wager
+ Wallet Wallet
+ SittingOut bool
+ SitOutAfter bool
+ LeaveAfter bool
}