diff --git a/core/src/com/unciv/logic/civilization/CivilizationInfo.kt b/core/src/com/unciv/logic/civilization/CivilizationInfo.kt index 143f8a0508..5abf2b307a 100644 --- a/core/src/com/unciv/logic/civilization/CivilizationInfo.kt +++ b/core/src/com/unciv/logic/civilization/CivilizationInfo.kt @@ -400,15 +400,11 @@ class CivilizationInfo { fun giftMilitaryUnitBy(otherCiv: CivilizationInfo) { val city = NextTurnAutomation().getClosestCities(this, otherCiv).city1 - if (city == null) { - addNotification("Exception! Failed to find a suitable city to place gift unit.".tr(), null, Color.RED) - } else { - var militaryUnit = city.cityConstructions - .getConstructableUnits().filter { !it.unitType.isCivilian() && it.unitType.isLandUnit()} - .random() - placeUnitNearTile(city.location, militaryUnit.name) - addNotification("[${otherCiv.civName}] gave us a [${militaryUnit.name}] as gift near [${city.name}]!".tr(), null, Color.GREEN) - } + val militaryUnit = city.cityConstructions.getConstructableUnits() + .filter { !it.unitType.isCivilian() && it.unitType.isLandUnit() } + .random() + placeUnitNearTile(city.location, militaryUnit.name) + addNotification("[${otherCiv.civName}] gave us a [${militaryUnit.name}] as gift near [${city.name}]!".tr(), null, Color.GREEN) } //endregion diff --git a/core/src/com/unciv/logic/civilization/diplomacy/DiplomacyManager.kt b/core/src/com/unciv/logic/civilization/diplomacy/DiplomacyManager.kt index 062abd7bd1..97ef45cdbb 100644 --- a/core/src/com/unciv/logic/civilization/diplomacy/DiplomacyManager.kt +++ b/core/src/com/unciv/logic/civilization/diplomacy/DiplomacyManager.kt @@ -274,6 +274,8 @@ class DiplomacyManager() { for(flag in flagsCountdown.keys.toList()) { flagsCountdown[flag] = flagsCountdown[flag]!! - 1 if(flagsCountdown[flag]==0) { + if(flag==DiplomacyFlags.ProvideMilitaryUnit.name && civInfo.cities.isEmpty()) + continue flagsCountdown.remove(flag) if(flag==DiplomacyFlags.AgreedToNotSettleNearUs.name) addModifier(DiplomaticModifiers.FulfilledPromiseToNotSettleCitiesNearUs,10f)