Introduce InfoPanel.
InfoPanels are information displays that do not cost actions. One of them (the Prompt) is shown at the main menu; others can be made available as options in the menu, ether on an ongoing basis or for the current/next turn only.
This commit is contained in:
@ -4,16 +4,19 @@ import "math/rand"
|
||||
|
||||
// Player stores all gameplay state for one player.
|
||||
type Player[C StatsCollection] struct {
|
||||
Stats C
|
||||
Name string
|
||||
Deck *Deck[C]
|
||||
Hand []Card[C]
|
||||
HandLimit int
|
||||
ActionsPerTurn int
|
||||
ActionsRemaining int
|
||||
PermanentActions []Card[C]
|
||||
Rules *RuleCollection[C]
|
||||
Rand rand.Rand
|
||||
Turn int
|
||||
PendingMessages []Message
|
||||
Stats C
|
||||
Name string
|
||||
Deck *Deck[C]
|
||||
Hand []Card[C]
|
||||
HandLimit int
|
||||
ActionsPerTurn int
|
||||
ActionsRemaining int
|
||||
PermanentActions []Card[C]
|
||||
InfoPanels []InfoPanel[C]
|
||||
Prompt InfoPanel[C]
|
||||
Rules *RuleCollection[C]
|
||||
Rand rand.Rand
|
||||
Turn int
|
||||
TemporaryMessages []Message
|
||||
TemporaryPanels []InfoPanel[C]
|
||||
}
|
||||
|
Reference in New Issue
Block a user