From 1607d0b17c2ad7be4cc0f7a3a8cf9fff0fbcae2c Mon Sep 17 00:00:00 2001 From: Duan Tao Date: Sun, 29 Sep 2019 16:54:43 +0800 Subject: [PATCH] Better AI choice for annexing and razing cities. (#1132) --- core/src/com/unciv/logic/automation/NextTurnAutomation.kt | 5 +++++ core/src/com/unciv/logic/battle/Battle.kt | 8 +++++++- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/core/src/com/unciv/logic/automation/NextTurnAutomation.kt b/core/src/com/unciv/logic/automation/NextTurnAutomation.kt index c3b2c14e9f..dd61547433 100644 --- a/core/src/com/unciv/logic/automation/NextTurnAutomation.kt +++ b/core/src/com/unciv/logic/automation/NextTurnAutomation.kt @@ -429,6 +429,11 @@ class NextTurnAutomation{ private fun reassignWorkedTiles(civInfo: CivilizationInfo) { for (city in civInfo.cities) { + if (city.isPuppet && city.population.population > 9 + && city.resistanceCounter == 0) { + city.annexCity() + } + city.reassignWorkers() city.cityConstructions.chooseNextConstruction() diff --git a/core/src/com/unciv/logic/battle/Battle.kt b/core/src/com/unciv/logic/battle/Battle.kt index 2809b04dd8..1a27c6db0d 100644 --- a/core/src/com/unciv/logic/battle/Battle.kt +++ b/core/src/com/unciv/logic/battle/Battle.kt @@ -230,7 +230,13 @@ class Battle(val gameInfo:GameInfo) { if (attacker.getCivInfo().isPlayerCivilization()) attackerCiv.popupAlerts.add(PopupAlert(AlertType.CityConquered, city.name)) - else city.puppetCity(attacker.getCivInfo()) + else { + city.puppetCity(attacker.getCivInfo()) + if (city.population.population < 4) { + city.annexCity() + city.isBeingRazed = true + } + } } fun getMapCombatantOfTile(tile:TileInfo): ICombatant? {