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.
type Player[C StatsCollection] struct {
Stats C
Name string
Deck *Deck[C]
Hand []Card[C]
HandLimit int
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]
Rules *RuleCollection[C]
Rand rand.Rand
Turn int
PendingMessages []Message
}