From aef4d5ea938f55831e70e28ae2a19c1b23797d8a Mon Sep 17 00:00:00 2001 From: Florian Fischer Date: Tue, 26 Mar 2024 20:36:22 +0100 Subject: only generate ArtifactMoveActions if the switched positions are suitable --- go/game/tile.go | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) (limited to 'go/game/tile.go') diff --git a/go/game/tile.go b/go/game/tile.go index 47f9a5d6..89d3ec3f 100644 --- a/go/game/tile.go +++ b/go/game/tile.go @@ -137,16 +137,20 @@ func (t *Tile) IsFree() bool { return t.Permanent == nil } +func (t *Tile) IsSuitableForCard(card *Card) bool { + if t.Water && !card.hasPlacementConstrain("swimming") { + return false + } + if !t.Water && card.hasPlacementConstrain("swimming") { + return false + } + + return true +} + func (t *Tile) IsAvailableForCard(card *Card) bool { if t.IsFree() { - if t.Water && !card.hasPlacementConstrain("swimming") { - return false - } - if !t.Water && card.hasPlacementConstrain("swimming") { - return false - } - - return true + return t.IsSuitableForCard(card) } x, err := t.Permanent.Card().getXEffect("crew") -- cgit v1.2.3