From 4bb6426b799858d0b62e4e21b4fe0710f93952aa Mon Sep 17 00:00:00 2001 From: Yair Morgenstern Date: Fri, 4 Dec 2020 00:11:29 +0200 Subject: [PATCH] 3.11.17-patch1 --- buildSrc/src/main/kotlin/BuildConfig.kt | 4 ++-- core/src/com/unciv/logic/city/CityInfo.kt | 28 +++++++++++++---------- 2 files changed, 18 insertions(+), 14 deletions(-) diff --git a/buildSrc/src/main/kotlin/BuildConfig.kt b/buildSrc/src/main/kotlin/BuildConfig.kt index 742d8715d2..704fe74d92 100644 --- a/buildSrc/src/main/kotlin/BuildConfig.kt +++ b/buildSrc/src/main/kotlin/BuildConfig.kt @@ -3,8 +3,8 @@ package com.unciv.build object BuildConfig { const val kotlinVersion = "1.3.71" const val appName = "Unciv" - const val appCodeNumber = 505 - const val appVersion = "3.11.17" + const val appCodeNumber = 506 + const val appVersion = "3.11.17-patch1" const val gdxVersion = "1.9.12" const val roboVMVersion = "2.3.1" diff --git a/core/src/com/unciv/logic/city/CityInfo.kt b/core/src/com/unciv/logic/city/CityInfo.kt index 1272b60cfb..65cd4745e8 100644 --- a/core/src/com/unciv/logic/city/CityInfo.kt +++ b/core/src/com/unciv/logic/city/CityInfo.kt @@ -524,7 +524,7 @@ class CityInfo { } } - fun moveToCiv(newCivInfo: CivilizationInfo){ + fun moveToCiv(newCivInfo: CivilizationInfo) { val oldCiv = civInfo civInfo.cities = civInfo.cities.toMutableList().apply { remove(this@CityInfo) } newCivInfo.cities = newCivInfo.cities.toMutableList().apply { add(this@CityInfo) } @@ -533,33 +533,37 @@ class CityInfo { turnAcquired = civInfo.gameInfo.turns // now that the tiles have changed, we need to reassign population - workedTiles.filterNot { tiles.contains(it) } - .forEach { workedTiles = workedTiles.withoutItem(it); population.autoAssignPopulation() } - - // Remove all national wonders - for(building in cityConstructions.getBuiltBuildings().filter { it.isNationalWonder }) - cityConstructions.removeBuilding(building.name) + for (it in workedTiles.filterNot { tiles.contains(it) }) { + workedTiles = workedTiles.withoutItem(it) + population.autoAssignPopulation() + } // Remove/relocate palace for old Civ val capitalCityIndicator = capitalCityIndicator() - if(cityConstructions.isBuilt(capitalCityIndicator)){ + if (cityConstructions.isBuilt(capitalCityIndicator)) { cityConstructions.removeBuilding(capitalCityIndicator) - if(oldCiv.cities.isNotEmpty()){ + if (oldCiv.cities.isNotEmpty()) { oldCiv.cities.first().cityConstructions.addBuilding(capitalCityIndicator) // relocate palace } } + + // Remove all national wonders (must come after the palace relocation because that's a national wonder too!) + for (building in cityConstructions.getBuiltBuildings().filter { it.isNationalWonder }) + cityConstructions.removeBuilding(building.name) + + // Locate palace for newCiv if this is the only city they have if (newCivInfo.cities.count() == 1) { cityConstructions.addBuilding(capitalCityIndicator) } - isBeingRazed=false + isBeingRazed = false // Transfer unique buildings - for(building in cityConstructions.getBuiltBuildings()) { + for (building in cityConstructions.getBuiltBuildings()) { val civEquivalentBuilding = newCivInfo.getEquivalentBuilding(building.name) - if(building != civEquivalentBuilding) { + if (building != civEquivalentBuilding) { cityConstructions.removeBuilding(building.name) cityConstructions.addBuilding(civEquivalentBuilding.name) }