diff --git a/core/src/com/unciv/logic/city/CityInfoConquestFunctions.kt b/core/src/com/unciv/logic/city/CityInfoConquestFunctions.kt index fcc0f23b0c..f68f318b07 100644 --- a/core/src/com/unciv/logic/city/CityInfoConquestFunctions.kt +++ b/core/src/com/unciv/logic/city/CityInfoConquestFunctions.kt @@ -193,7 +193,7 @@ class CityInfoConquestFunctions(val city: CityInfo){ return } - val foundingCiv = civInfo.gameInfo.civilizations.first { it.civName == foundingCiv } + val foundingCiv = civInfo.gameInfo.getCivilization(foundingCiv) if (foundingCiv.isDefeated()) // resurrected civ for (diploManager in foundingCiv.diplomacy.values) if (diploManager.diplomaticStatus == DiplomaticStatus.War) diff --git a/core/src/com/unciv/ui/trade/DiplomacyScreen.kt b/core/src/com/unciv/ui/trade/DiplomacyScreen.kt index da933589b6..b4070ce4fd 100644 --- a/core/src/com/unciv/ui/trade/DiplomacyScreen.kt +++ b/core/src/com/unciv/ui/trade/DiplomacyScreen.kt @@ -343,7 +343,7 @@ class DiplomacyScreen( diplomacyTable.add(getQuestTable(assignedQuest)).row() } - for (target in otherCiv.getKnownCivs().filter { otherCiv.questManager.warWithMajorActive(it) }) { + for (target in otherCiv.getKnownCivs().filter { otherCiv.questManager.warWithMajorActive(it) && viewingCiv != it }) { diplomacyTable.addSeparator() diplomacyTable.add(getWarWithMajorTable(target, otherCiv)).row() } diff --git a/core/src/com/unciv/ui/worldscreen/AlertPopup.kt b/core/src/com/unciv/ui/worldscreen/AlertPopup.kt index 100118f711..8d7ce76014 100644 --- a/core/src/com/unciv/ui/worldscreen/AlertPopup.kt +++ b/core/src/com/unciv/ui/worldscreen/AlertPopup.kt @@ -153,12 +153,14 @@ class AlertPopup(val worldScreen: WorldScreen, val popupAlert: PopupAlert): Popu addQuestionAboutTheCity(city.name) val conqueringCiv = worldScreen.gameInfo.getCurrentPlayerCivilization() - addLiberateOption(city.foundingCiv) { - city.liberateCity(conqueringCiv) - worldScreen.shouldUpdate = true - close() + if (!conqueringCiv.isAtWarWith(worldScreen.gameInfo.getCivilization(city.foundingCiv))) { + addLiberateOption(city.foundingCiv) { + city.liberateCity(conqueringCiv) + worldScreen.shouldUpdate = true + close() + } + addSeparator() } - addSeparator() add(getCloseButton("Keep it")).row() } AlertType.BorderConflict -> {