From 8a7719e63413c3a6a7da6a7f68f76f8185448c7b Mon Sep 17 00:00:00 2001 From: Yair Morgenstern Date: Mon, 19 Nov 2018 20:44:26 +0200 Subject: [PATCH] Unviewable resources no longer affect improvement yield (e.g. mine on unviewable coal) Resource-requiring units no longer get a penalty when civ is breaking even on that resource --- core/src/com/unciv/logic/automation/UnitAutomation.kt | 6 +++--- core/src/com/unciv/logic/battle/BattleDamage.kt | 2 +- core/src/com/unciv/logic/map/TileInfo.kt | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) 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