aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-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)
}