diff --git a/core/src/com/unciv/logic/map/mapunit/MapUnit.kt b/core/src/com/unciv/logic/map/mapunit/MapUnit.kt index 3c4d3ade88..edf8cdb2ae 100644 --- a/core/src/com/unciv/logic/map/mapunit/MapUnit.kt +++ b/core/src/com/unciv/logic/map/mapunit/MapUnit.kt @@ -558,7 +558,10 @@ class MapUnit : IsPartOfGameInfoSerialization { && tile.improvementInProgress != improvement.name ) return false val buildImprovementUniques = getMatchingUniques(UniqueType.BuildImprovements) - if (tile.improvementInProgress == Constants.repair && buildImprovementUniques.any()) return true + if (tile.improvementInProgress == Constants.repair) { + if (tile.isEnemyTerritory(civ)) return false + return buildImprovementUniques.any() + } return buildImprovementUniques .any { improvement.matchesFilter(it.params[0]) || tile.matchesTerrainFilter(it.params[0]) } } diff --git a/core/src/com/unciv/ui/screens/worldscreen/unit/actions/UnitActionsFromUniques.kt b/core/src/com/unciv/ui/screens/worldscreen/unit/actions/UnitActionsFromUniques.kt index 49d02b914b..32177173dc 100644 --- a/core/src/com/unciv/ui/screens/worldscreen/unit/actions/UnitActionsFromUniques.kt +++ b/core/src/com/unciv/ui/screens/worldscreen/unit/actions/UnitActionsFromUniques.kt @@ -439,6 +439,7 @@ object UnitActionsFromUniques { val couldConstruct = unit.currentMovement > 0 && !tile.isCityCenter() && tile.improvementInProgress != Constants.repair + && !tile.isEnemyTerritory(unit.civ) val turnsToBuild = getRepairTurns(unit)