mirror of
https://github.com/yairm210/Unciv.git
synced 2025-09-28 06:16:37 -04:00
Resolved #2735 - Diplomatic "Friends with friend/enemy" modifiers are recalculated every turn
This commit is contained in:
parent
ac0c874061
commit
6900e28671
@ -3,8 +3,8 @@ package com.unciv.build
|
||||
object BuildConfig {
|
||||
const val kotlinVersion = "1.3.71"
|
||||
const val appName = "Unciv"
|
||||
const val appCodeNumber = 438
|
||||
const val appVersion = "3.9.3"
|
||||
const val appCodeNumber = 439
|
||||
const val appVersion = "3.9.3-patch1"
|
||||
|
||||
const val gdxVersion = "1.9.10"
|
||||
const val roboVMVersion = "2.3.1"
|
||||
|
@ -268,7 +268,6 @@ class DiplomacyManager() {
|
||||
unit.movement.teleportToClosestMoveableTile()
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
fun nextTurn(){
|
||||
@ -366,6 +365,8 @@ class DiplomacyManager() {
|
||||
revertToZero(DiplomaticModifiers.UnacceptableDemands, 1 / 4f)
|
||||
revertToZero(DiplomaticModifiers.LiberatedCity, 1 / 8f)
|
||||
|
||||
setFriendshipBasedModifier()
|
||||
|
||||
if (!hasFlag(DiplomacyFlags.DeclarationOfFriendship))
|
||||
revertToZero(DiplomaticModifiers.DeclarationOfFriendship, 1 / 2f) //decreases slowly and will revert to full if it is declared later
|
||||
|
||||
@ -520,8 +521,17 @@ class DiplomacyManager() {
|
||||
|
||||
for (thirdCiv in getCommonKnownCivs().filter { it.isMajorCiv() }) {
|
||||
thirdCiv.addNotification("[${civInfo.civName}] and [${otherCiv().civName}] have signed the Declaration of Friendship!", null, Color.WHITE)
|
||||
val thirdCivRelationshipWithOtherCiv = thirdCiv.getDiplomacyManager(otherCiv()).relationshipLevel()
|
||||
when(thirdCivRelationshipWithOtherCiv){
|
||||
thirdCiv.getDiplomacyManager(civInfo).setFriendshipBasedModifier()
|
||||
}
|
||||
}
|
||||
|
||||
fun setFriendshipBasedModifier(){
|
||||
removeModifier(DiplomaticModifiers.DeclaredFriendshipWithOurAllies)
|
||||
removeModifier(DiplomaticModifiers.DeclaredFriendshipWithOurEnemies)
|
||||
for(thirdCiv in getCommonKnownCivs()
|
||||
.filter { it.getDiplomacyManager(civInfo).hasFlag(DiplomacyFlags.DeclarationOfFriendship) }) {
|
||||
val otherCivRelationshipWithThirdCiv = otherCiv().getDiplomacyManager(thirdCiv).relationshipLevel()
|
||||
when (otherCivRelationshipWithThirdCiv) {
|
||||
RelationshipLevel.Unforgivable -> addModifier(DiplomaticModifiers.DeclaredFriendshipWithOurEnemies, -15f)
|
||||
RelationshipLevel.Enemy -> addModifier(DiplomaticModifiers.DeclaredFriendshipWithOurEnemies, -5f)
|
||||
RelationshipLevel.Friend -> addModifier(DiplomaticModifiers.DeclaredFriendshipWithOurAllies, 5f)
|
||||
|
Loading…
x
Reference in New Issue
Block a user