Multiple actions per turn

Allow a pattern of multiple actions per turn. Card options can "refund" an action to the player if they should be free, or zero out the remaining actions if they should force the turn to go directly to the simulation step.
This commit is contained in:
Kistaro Windrider 2023-04-01 12:21:42 -07:00
parent cef0718cba
commit fb5735d5b9
Signed by: kistaro
SSH Key Fingerprint: SHA256:TBE2ynfmJqsAf0CP6gsflA0q5X5wD5fVKWPsZ7eVUg8

View File

@ -4,13 +4,16 @@ import "math/rand"
// Player stores all gameplay state for one player. // Player stores all gameplay state for one player.
type Player[C StatsCollection] struct { type Player[C StatsCollection] struct {
Stats C Stats C
Name string Name string
Deck *Deck[C] Deck *Deck[C]
Hand []Card[C] Hand []Card[C]
HandLimit int HandLimit int
Rules *RuleCollection[C] ActionsPerTurn int
Rand rand.Rand ActionsRemaining int
Turn int PermanentActions []Card[C]
PendingMessages []Message Rules *RuleCollection[C]
Rand rand.Rand
Turn int
PendingMessages []Message
} }