aboutsummaryrefslogtreecommitdiff
path: root/go/game
diff options
context:
space:
mode:
authorFlorian Fischer <florian.fischer@muhq.space>2023-02-08 13:59:57 +0100
committerFlorian Fischer <florian.fischer@muhq.space>2025-01-27 16:43:49 +0100
commit98d0bd3d83f450228477142543b05a2ba5216449 (patch)
tree96a6731b7957a267c8be4cedd032662f2f6b2783 /go/game
parentb2f6a2d3ba74ea98b685db3c6367fed3d6066d07 (diff)
downloadmuhqs-game-98d0bd3d83f450228477142543b05a2ba5216449.tar.gz
muhqs-game-98d0bd3d83f450228477142543b05a2ba5216449.zip
remove card from hand when declaring a play action
Diffstat (limited to 'go/game')
-rw-r--r--go/game/action.go2
-rw-r--r--go/game/state.go3
2 files changed, 3 insertions, 2 deletions
diff --git a/go/game/action.go b/go/game/action.go
index a283bbfb..5002f58a 100644
--- a/go/game/action.go
+++ b/go/game/action.go
@@ -115,8 +115,6 @@ func NewPlayAction(p *Player, c *Card, args ...interface{}) *PlayAction {
a.targets = newTargets(s, []string{}, a)
}
- p.Hand.RemoveCard(c)
-
a.resolveFunc = func(s *State) {
s.resolvePlay(p, c, a.targets)
}
diff --git a/go/game/state.go b/go/game/state.go
index 7a54ddc0..98ac9c31 100644
--- a/go/game/state.go
+++ b/go/game/state.go
@@ -243,6 +243,9 @@ func (s *State) DeclareAction(a Action) {
}
if err == nil {
+ if pa, ok := a.(*PlayAction); ok {
+ pa.Source().(*Player).Hand.RemoveCard(pa.Card)
+ }
s.pushAction(a)
}