From b7f7bb3b2e584c9a1b1b99c27e1262611b2b93ac Mon Sep 17 00:00:00 2001 From: Yair Morgenstern Date: Fri, 21 Jun 2019 12:55:34 +0300 Subject: [PATCH] Barbarians guarding encampments noww fortify --- core/src/com/unciv/logic/automation/UnitAutomation.kt | 8 ++++---- core/src/com/unciv/logic/civilization/CivilizationInfo.kt | 4 ---- core/src/com/unciv/logic/map/MapUnit.kt | 2 ++ core/src/com/unciv/ui/worldscreen/unit/UnitActions.kt | 7 ++----- 4 files changed, 8 insertions(+), 13 deletions(-) diff --git a/core/src/com/unciv/logic/automation/UnitAutomation.kt b/core/src/com/unciv/logic/automation/UnitAutomation.kt index f76793517b..763f8e3d81 100644 --- a/core/src/com/unciv/logic/automation/UnitAutomation.kt +++ b/core/src/com/unciv/logic/automation/UnitAutomation.kt @@ -41,8 +41,10 @@ class UnitAutomation{ var unitDistanceToTiles = unit.getDistanceToTiles() if(unit.civInfo.isBarbarianCivilization() && - unit.currentTile.improvement==Constants.barbarianEncampment && unit.type.isLandUnit()) + unit.currentTile.improvement==Constants.barbarianEncampment && unit.type.isLandUnit()) { + if(unit.canFortify()) unit.fortify() return // stay in the encampment + } if(tryGoToRuin(unit,unitDistanceToTiles)){ if(unit.currentMovement==0f) return @@ -123,9 +125,7 @@ class UnitAutomation{ if(unitTile!=bestTileForHealing && bestTileForHealingRank > unit.rankTileForHealing(unitTile)) unit.moveToTile(bestTileForHealing) - if(unit.currentMovement>0 && unit.canFortify()){ - unit.action="Fortify 0" - } + if(unit.currentMovement>0 && unit.canFortify()) unit.fortify() return true } diff --git a/core/src/com/unciv/logic/civilization/CivilizationInfo.kt b/core/src/com/unciv/logic/civilization/CivilizationInfo.kt index 7c495b7f0b..bb7d98e483 100644 --- a/core/src/com/unciv/logic/civilization/CivilizationInfo.kt +++ b/core/src/com/unciv/logic/civilization/CivilizationInfo.kt @@ -261,10 +261,6 @@ class CivilizationInfo { return statMap } - /** - * Returns list of all resources and their origin - for most usages you'll want updateDetailedCivResources().totalSupply(), - * which unifies al the different sources - */ fun getCivResources(): ResourceSupplyList { val newResourceSupplyList=ResourceSupplyList() for(resourceSupply in detailedCivResources) diff --git a/core/src/com/unciv/logic/map/MapUnit.kt b/core/src/com/unciv/logic/map/MapUnit.kt index ba775b2ef8..5df4fe8f0e 100644 --- a/core/src/com/unciv/logic/map/MapUnit.kt +++ b/core/src/com/unciv/logic/map/MapUnit.kt @@ -292,6 +292,8 @@ class MapUnit { return true } + fun fortify(){ action = "Fortify 0"} + fun adjacentHealingBonus():Int{ var healingBonus = 0 if(hasUnique("This unit and all others in adjacent tiles heal 5 additional HP per turn")) healingBonus +=5 diff --git a/core/src/com/unciv/ui/worldscreen/unit/UnitActions.kt b/core/src/com/unciv/ui/worldscreen/unit/UnitActions.kt index 1254af4245..53d7aff8b8 100644 --- a/core/src/com/unciv/ui/worldscreen/unit/UnitActions.kt +++ b/core/src/com/unciv/ui/worldscreen/unit/UnitActions.kt @@ -33,10 +33,7 @@ class UnitActions { val actionList = ArrayList() if(unit.action!=null && unit.action!!.startsWith("moveTo")) { - actionList += - UnitAction("Stop movement", true) { - unit.action = null - } + actionList += UnitAction("Stop movement", true) {unit.action = null} } val workingOnImprovement = unit.hasUnique("Can build improvements on tiles") && unit.currentTile.hasImprovementInProgress() @@ -51,7 +48,7 @@ class UnitActions { if(unit.canFortify()) { actionList += UnitAction("Fortify", unit.currentMovement >0) { - unit.action = "Fortify 0" + unit.fortify() unitTable.selectedUnit = null }.sound("fortify") } else if (unit.isFortified()) {