From 6f20f68f32d0b9b6ed8ba7fd09914602be3e5953 Mon Sep 17 00:00:00 2001 From: Florian Fischer Date: Tue, 22 Jul 2025 13:04:13 -0400 Subject: do not consider houses as attackable tiles for ranged combat --- go/game/unit.go | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) (limited to 'go') diff --git a/go/game/unit.go b/go/game/unit.go index 85c6b97c..c7528224 100644 --- a/go/game/unit.go +++ b/go/game/unit.go @@ -117,7 +117,21 @@ func (u *Unit) AttackableTiles(m *Map) []*Tile { if u.tile == nil { return nil } - return TilesInRange(m, u, u.Attack.MaxRange()) + + tilesInRange := TilesInRange(m, u, u.Attack.MaxRange()) + if u.Attack.MaxRange() == 1 { + return tilesInRange + } + + // House tiles are not attackable from $anges > 1 + aTiles := []*Tile{} + for _, t := range tilesInRange { + if DistanceBetweenPositions(t.Position, u.tile.Position) > 1 && t.Type == TileTypes.House { + continue + } + aTiles = append(aTiles, t) + } + return aTiles } func (u *Unit) AttackablePermanents(m *Map) []Permanent { -- cgit v1.2.3