Resolved #3085 - reconquering our cities while they were still in resistance leads to them not having resistance against us

This commit is contained in:
Yair Morgenstern 2020-09-29 11:48:21 +03:00
parent 56dbd5459e
commit 6662944f32

View File

@ -15,7 +15,6 @@ import com.unciv.logic.map.TileMap
import com.unciv.logic.trade.TradeLogic
import com.unciv.logic.trade.TradeOffer
import com.unciv.logic.trade.TradeType
import com.unciv.models.ruleset.Building
import com.unciv.models.ruleset.tile.ResourceSupplyList
import com.unciv.models.ruleset.tile.ResourceType
import com.unciv.models.ruleset.unit.BaseUnit
@ -44,6 +43,7 @@ class CityInfo {
var id: String = UUID.randomUUID().toString()
var name: String = ""
var foundingCiv = ""
var previousOwner = "" // This is so that cities in resistance that re recaptured aren't in resistance anymore
var turnAcquired = 0
var health = 200
var resistanceCounter = 0
@ -391,6 +391,9 @@ class CityInfo {
conqueringCiv.addNotification("Received [$goldPlundered] Gold for capturing [$name]", centerTileInfo.position, Color.GOLD)
val oldCiv = civInfo
val reconqueredOurCity = previousOwner == conqueringCiv.civName
previousOwner = oldCiv.civName
// must be before moving the city to the conquering civ,
// so the repercussions are properly checked
diplomaticRepercussionsForConqueringCity(oldCiv, conqueringCiv)
@ -401,7 +404,9 @@ class CityInfo {
if (population.population > 1) population.population -= 1 + population.population / 4 // so from 2-4 population, remove 1, from 5-8, remove 2, etc.
reassignPopulation()
resistanceCounter = population.population // I checked, and even if you puppet there's resistance for conquering
if (reconqueredOurCity && resistanceCounter != 0) // we reconquered our city while it was still in resistance - we get it back with no resistance
resistanceCounter = 0
else resistanceCounter = population.population // I checked, and even if you puppet there's resistance for conquering
isPuppet = true
health = getMaxHealth() / 2 // I think that cities recover to half health when conquered?
cityStats.update()