Fix 'raze city' (#12450)

* Fix 'raze city'

* .
This commit is contained in:
Yair Morgenstern 2024-11-11 13:19:29 +02:00 committed by GitHub
parent 454a6c357c
commit 60d5649962
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 3 additions and 3 deletions

View File

@ -297,7 +297,7 @@ object Nuke {
2 -> (60 + Random.Default.nextInt(10) + Random.Default.nextInt(10)) / 100f
else -> 1f // hypothetical nukeStrength 3 -> always to 1 pop
}
).toInt().coerceAtMost(targetedCity.population.population - 1)
).toInt()
targetedCity.population.addPopulation(-populationLoss)
}

View File

@ -124,9 +124,8 @@ class CityTurnManager(val city: City) {
val removedPopulation =
1 + city.civ.getMatchingUniques(UniqueType.CitiesAreRazedXTimesFaster)
.sumOf { it.params[0].toInt() - 1 }
city.population.addPopulation(-1 * removedPopulation)
if (city.population.population <= 0) {
if (city.population.population <= removedPopulation) {
city.espionage.removeAllPresentSpies(SpyFleeReason.CityCaptured)
city.civ.addNotification(
"[${city.name}] has been razed to the ground!",
@ -135,6 +134,7 @@ class CityTurnManager(val city: City) {
)
city.destroyCity()
} else { //if not razed yet:
city.population.addPopulation(-removedPopulation)
if (city.population.foodStored >= city.population.getFoodToNextPopulation()) { //if surplus in the granary...
city.population.foodStored =
city.population.getFoodToNextPopulation() - 1 //...reduce below the new growth threshold