diff --git a/core/src/com/unciv/logic/civilization/diplomacy/DiplomacyManager.kt b/core/src/com/unciv/logic/civilization/diplomacy/DiplomacyManager.kt index e67efd68b2..e50cfd732b 100644 --- a/core/src/com/unciv/logic/civilization/diplomacy/DiplomacyManager.kt +++ b/core/src/com/unciv/logic/civilization/diplomacy/DiplomacyManager.kt @@ -240,6 +240,9 @@ class DiplomacyManager() { thirdCiv.getDiplomacyManager(civInfo).addModifier(DiplomaticModifiers.WarMongerer,5f) else thirdCiv.getDiplomacyManager(civInfo).addModifier(DiplomaticModifiers.WarMongerer,-5f) } + + //Damage diplomatic relationship + otherCivDiplomacy.influence = -50f } fun makePeace(){ diff --git a/core/src/com/unciv/logic/map/MapUnit.kt b/core/src/com/unciv/logic/map/MapUnit.kt index 3b879f9780..7b1a1eb103 100644 --- a/core/src/com/unciv/logic/map/MapUnit.kt +++ b/core/src/com/unciv/logic/map/MapUnit.kt @@ -150,8 +150,12 @@ class MapUnit { return false val tileOwner = tile.getOwner() - if(tileOwner!=null && tileOwner.civName!=owner - && (tile.isCityCenter() || !civInfo.canEnterTiles(tileOwner))) return false + if(tileOwner!=null && tileOwner.civName!=owner) { + if (tile.isCityCenter()) return false + if (!civInfo.canEnterTiles(tileOwner) + && !(civInfo.isPlayerCivilization() && tileOwner.isCityState())) return false + // AIs won't enter city-state's border. + } val unitsInTile = tile.getUnits() if(unitsInTile.isNotEmpty()){ diff --git a/core/src/com/unciv/ui/trade/DiplomacyScreen.kt b/core/src/com/unciv/ui/trade/DiplomacyScreen.kt index db7bd59595..26b55fc669 100644 --- a/core/src/com/unciv/ui/trade/DiplomacyScreen.kt +++ b/core/src/com/unciv/ui/trade/DiplomacyScreen.kt @@ -73,8 +73,8 @@ class DiplomacyScreen:CameraStageBaseScreen() { fun giveGoldGift(otherCiv: CivilizationInfo) { val currentPlayerCiv = UnCivGame.Current.gameInfo.getCurrentPlayerCivilization() - currentPlayerCiv.gold -= 50 - otherCiv.getDiplomacyManager(currentPlayerCiv).influence += 5 + currentPlayerCiv.gold -= 100 + otherCiv.getDiplomacyManager(currentPlayerCiv).influence += 10 rightSideTable.clear() rightSideTable.add(getDiplomacyTable(otherCiv)) } @@ -101,7 +101,7 @@ class DiplomacyScreen:CameraStageBaseScreen() { diplomacyTable.addSeparator() if(otherCiv.isCityState()) { - val giftButton = TextButton("Give 50 gold".tr(), skin) + val giftButton = TextButton("Give 100 gold".tr(), skin) giftButton.onClick{ giveGoldGift(otherCiv) } diplomacyTable.add(giftButton).row() if (currentPlayerCiv.gold < 1) giftButton.disable()