diff --git a/core/src/com/unciv/logic/BackwardCompatibility.kt b/core/src/com/unciv/logic/BackwardCompatibility.kt index a92d1644b7..de0f5f96d6 100644 --- a/core/src/com/unciv/logic/BackwardCompatibility.kt +++ b/core/src/com/unciv/logic/BackwardCompatibility.kt @@ -30,6 +30,7 @@ object BackwardCompatibility { // Mod decided you can't repair things anymore - get rid of old pillaged improvements removeOldPillagedImprovements() + removeMissingLastSeenImprovements() handleMissingReferencesForEachCity() @@ -69,6 +70,13 @@ object BackwardCompatibility { } } + private fun GameInfo.removeMissingLastSeenImprovements() { + for (civ in civilizations) + for ((vector,improvementName) in civ.lastSeenImprovement.toList()) + if (!ruleset.tileImprovements.containsKey(improvementName)) + civ.lastSeenImprovement.remove(vector) + } + private fun GameInfo.handleMissingReferencesForEachCity() { for (city in civilizations.asSequence().flatMap { it.cities.asSequence() }) {