diff --git a/core/src/com/unciv/logic/automation/UnitAutomation.kt b/core/src/com/unciv/logic/automation/UnitAutomation.kt index 5f24ade385..0fd2a946f5 100644 --- a/core/src/com/unciv/logic/automation/UnitAutomation.kt +++ b/core/src/com/unciv/logic/automation/UnitAutomation.kt @@ -47,7 +47,7 @@ class UnitAutomation{ if (tryUpgradeUnit(unit, unitActions)) return // Accompany settlers - if (tryAccompanySettler(unit,unitDistanceToTiles)) return + if (tryAccompanySettler(unit)) return if (unit.health < 50) { healUnit(unit,unitDistanceToTiles) @@ -183,9 +183,9 @@ class UnitAutomation{ return false } - private fun tryAccompanySettler(unit: MapUnit, unitDistanceToTiles: HashMap): Boolean { + private fun tryAccompanySettler(unit: MapUnit): Boolean { val settlerToAccompany = unit.civInfo.getCivUnits() - .firstOrNull { val tile = it.currentTile; + .firstOrNull { val tile = it.currentTile it.name=="Settler" && tile.militaryUnit==null && unit.canMoveTo(tile) && unit.movementAlgs().canReach(tile) } if(settlerToAccompany==null) return false diff --git a/core/src/com/unciv/logic/battle/BattleDamage.kt b/core/src/com/unciv/logic/battle/BattleDamage.kt index 6f4dd1fa99..30552c9fa3 100644 --- a/core/src/com/unciv/logic/battle/BattleDamage.kt +++ b/core/src/com/unciv/logic/battle/BattleDamage.kt @@ -49,7 +49,7 @@ class BattleDamage{ modifiers["Discipline"] = 0.15f val requiredResource = combatant.unit.baseUnit.requiredResource - if(requiredResource!=null && !combatant.getCivilization().hasResource(requiredResource)){ + if(requiredResource!=null && combatant.getCivilization().getCivResourcesByName()[requiredResource]!!<0){ modifiers["Missing resource"]=-0.25f } } diff --git a/core/src/com/unciv/logic/map/TileInfo.kt b/core/src/com/unciv/logic/map/TileInfo.kt index 7a9cf92247..803a65037c 100644 --- a/core/src/com/unciv/logic/map/TileInfo.kt +++ b/core/src/com/unciv/logic/map/TileInfo.kt @@ -151,7 +151,7 @@ open class TileInfo { val improvement = getTileImprovement() if (improvement != null) { - if (resource != null && getTileResource().improvement == improvement.name) + if (hasViewableResource(observingCiv) && getTileResource().improvement == improvement.name) stats.add(getTileResource().improvementStats!!) // resource-specifc improvement else stats.add(improvement) // basic improvement