From 3b2e8135234fbb01618607b9a40d85497fabf62e Mon Sep 17 00:00:00 2001 From: Yair Morgenstern Date: Mon, 10 Aug 2020 23:12:02 +0300 Subject: [PATCH] Ancient Ruins can now provide Culture --- android/assets/jsons/translations/template.properties | 1 + core/src/com/unciv/logic/battle/Battle.kt | 4 ++-- core/src/com/unciv/logic/civilization/PolicyManager.kt | 6 +++++- core/src/com/unciv/logic/map/MapUnit.kt | 5 +++++ 4 files changed, 13 insertions(+), 3 deletions(-) diff --git a/android/assets/jsons/translations/template.properties b/android/assets/jsons/translations/template.properties index 5d2c775d68..33ed04a0a8 100644 --- a/android/assets/jsons/translations/template.properties +++ b/android/assets/jsons/translations/template.properties @@ -463,6 +463,7 @@ The City-State of [name] has been destroyed! = We have captured a barbarian encampment and recovered [goldAmount] gold! = A barbarian [unitType] has joined us! = We have found survivors in the ruins - population added to [cityName] = +We have discovered cultural artifacts in the ruins! (+20 Culture) = We have discovered the lost technology of [techName] in the ruins! = A [unitName] has joined us! = An ancient tribe trains our [unitName] in their ways of combat! = diff --git a/core/src/com/unciv/logic/battle/Battle.kt b/core/src/com/unciv/logic/battle/Battle.kt index c74fd68bfb..ee51107440 100644 --- a/core/src/com/unciv/logic/battle/Battle.kt +++ b/core/src/com/unciv/logic/battle/Battle.kt @@ -224,8 +224,8 @@ object Battle { if(barbarianUnit.isDefeated() && barbarianUnit is MapUnitCombatant && barbarianUnit.getCivInfo().isBarbarian() && civUnit.getCivInfo().hasUnique("Gain Culture when you kill a barbarian unit")) - civUnit.getCivInfo().policies.storedCulture += - max(barbarianUnit.unit.baseUnit.strength,barbarianUnit.unit.baseUnit.rangedStrength) + civUnit.getCivInfo().policies.addCulture( + max(barbarianUnit.unit.baseUnit.strength, barbarianUnit.unit.baseUnit.rangedStrength)) } // XP! diff --git a/core/src/com/unciv/logic/civilization/PolicyManager.kt b/core/src/com/unciv/logic/civilization/PolicyManager.kt index 7782fd8800..63e4302114 100644 --- a/core/src/com/unciv/logic/civilization/PolicyManager.kt +++ b/core/src/com/unciv/logic/civilization/PolicyManager.kt @@ -56,11 +56,15 @@ class PolicyManager { tryAddLegalismBuildings() } - fun endTurn(culture: Int) { + fun addCulture(culture: Int){ val couldAdoptPolicyBefore = canAdoptPolicy() storedCulture += culture if (!couldAdoptPolicyBefore && canAdoptPolicy()) shouldOpenPolicyPicker = true + } + + fun endTurn(culture: Int) { + addCulture(culture) if (autocracyCompletedTurns > 0) autocracyCompletedTurns -= 1 } diff --git a/core/src/com/unciv/logic/map/MapUnit.kt b/core/src/com/unciv/logic/map/MapUnit.kt index fd4b1fa1b3..5aa9bafd3b 100644 --- a/core/src/com/unciv/logic/map/MapUnit.kt +++ b/core/src/com/unciv/logic/map/MapUnit.kt @@ -595,6 +595,11 @@ class MapUnit { civInfo.addNotification("We have found a stash of [$amount] gold in the ruins!",tile.position, Color.GOLD) } + actions.add { + civInfo.policies.addCulture(20) + civInfo.addNotification("We have discovered cultural artifacts in the ruins! (+20 Culture)",tile.position, Color.GOLD) + } + // Map of the surrounding area actions.add { val revealCenter = tile.getTilesAtDistance(ANCIENT_RUIN_MAP_REVEAL_OFFSET).toList().random(tileBasedRandom)