Fixed niche bug that let you try and capture civilians in territory you can't enter

This commit is contained in:
yairm210 2021-11-29 22:41:55 +02:00
parent e43e23b9a8
commit b9d2078442

View File

@ -39,6 +39,12 @@ object BattleHelper {
): ArrayList<AttackableTile> {
val tilesWithEnemies = (tilesToCheck ?: unit.civInfo.viewableTiles)
.filter { containsAttackableEnemy(it, MapUnitCombatant(unit)) }
.filterNot { val mapCombatant = Battle.getMapCombatantOfTile(it)
// IF all of these are true, THEN the action we'll be taking is in fact CAPTURING the civilian.
unit.baseUnit.isMelee() && mapCombatant is MapUnitCombatant && mapCombatant.unit.isCivilian()
// If we can't pass though that tile, we can't capture the civilian "remotely"
&& !unit.movement.canPassThrough(it)
}
val rangeOfAttack = unit.getRange()