Kistaro Windrider
7f8dcd63d6
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.
23 lines
552 B
Go
23 lines
552 B
Go
package cardsim
|
|
|
|
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]
|
|
InfoPanels []InfoPanel[C]
|
|
Prompt InfoPanel[C]
|
|
Rules *RuleCollection[C]
|
|
Rand rand.Rand
|
|
Turn int
|
|
TemporaryMessages []Message
|
|
TemporaryPanels []InfoPanel[C]
|
|
}
|