diff --git a/core/src/com/unciv/ui/worldscreen/WorldMapHolder.kt b/core/src/com/unciv/ui/worldscreen/WorldMapHolder.kt index 8fe5c8c151..fb7dd7ca5a 100644 --- a/core/src/com/unciv/ui/worldscreen/WorldMapHolder.kt +++ b/core/src/com/unciv/ui/worldscreen/WorldMapHolder.kt @@ -309,28 +309,25 @@ class WorldMapHolder(internal val worldScreen: WorldScreen, internal val tileMap val isAirUnit = unit.type.isAirUnit() val tilesInMoveRange = if (isAirUnit) - unit.getTile().getTilesInDistanceRange(IntRange(unit.getRange(), unit.getRange() * 2)) + unit.getTile().getTilesInDistanceRange(IntRange(1, unit.getRange() * 2)) else unit.movement.getDistanceToTiles().keys.asSequence() for (tile in tilesInMoveRange) { val tileToColor = tileGroups.getValue(tile) if (isAirUnit) - tileToColor.showCircle(Color.BLUE, 0.3f) + if (tile.aerialDistanceTo(unit.getTile()) <= unit.getRange()) { + // The tile is within attack range + tileToColor.showCircle(Color.RED, 0.3f) + } else { + // The tile is within move range + tileToColor.showCircle(Color.BLUE, 0.3f) + } if (unit.movement.canMoveTo(tile)) tileToColor.showCircle(Color.WHITE, if (UncivGame.Current.settings.singleTapMove || isAirUnit) 0.7f else 0.3f) } - // Mark tiles in air units attack range as RED - if (isAirUnit) { - val tilesInAirAttackRange = unit.getTile().getTilesInDistance(unit.getRange()) - for (tile in tilesInAirAttackRange) { - val tileToColor = tileGroups.getValue(tile) - tileToColor.showCircle(Color.RED, 0.3f) - } - } - val attackableTiles: List = if (unit.type.isCivilian()) listOf() else { BattleHelper.getAttackableEnemies(unit, unit.movement.getDistanceToTiles())