aboutsummaryrefslogtreecommitdiff
path: root/go/game
diff options
context:
space:
mode:
authorFlorian Fischer <florian.fischer@muhq.space>2024-12-27 12:41:38 +0100
committerFlorian Fischer <florian.fischer@muhq.space>2025-01-27 16:43:58 +0100
commita504a91ef4ed49ba451de14f04ef02472dfcb189 (patch)
tree852dfcac3a47fd423095bf0b0d112322a7795e51 /go/game
parent4e2ab55d345fd5e5c5d2d5bc56948611b15564d5 (diff)
downloadmuhqs-game-a504a91ef4ed49ba451de14f04ef02472dfcb189.tar.gz
muhqs-game-a504a91ef4ed49ba451de14f04ef02472dfcb189.zip
improve and fix slow action timing check
Do not allow to declare slow play actions in the client. Fix the slow action check in the game state.
Diffstat (limited to 'go/game')
-rw-r--r--go/game/state.go10
1 files changed, 6 insertions, 4 deletions
diff --git a/go/game/state.go b/go/game/state.go
index cf7b7111..577a0cb8 100644
--- a/go/game/state.go
+++ b/go/game/state.go
@@ -424,7 +424,7 @@ func (s *LocalState) declareAction(a Action) {
err = a.CheckTargets(s)
- if err != nil {
+ if err == nil {
switch a.(type) {
case *BuyAction:
if s.activePhase != Phases.BuyPhase {
@@ -446,9 +446,11 @@ func (s *LocalState) declareAction(a Action) {
}
s.broadcastNotification(newDeclaredActionNotification(a, err))
- t := a.Targets()
- if t != nil {
- s.events = append(s.events, newTargetEvent(a, t))
+ if err == nil {
+ t := a.Targets()
+ if t != nil {
+ s.events = append(s.events, newTargetEvent(a, t))
+ }
}
}