From 2b33bb98735df20cc258a14ff9c2f8d8a66cc80f Mon Sep 17 00:00:00 2001 From: Yair Morgenstern Date: Tue, 16 Feb 2021 20:10:36 +0200 Subject: [PATCH] Map editor knows to remove resources that don't exist in mods --- core/src/com/unciv/ui/mapeditor/TileEditorOptionsTable.kt | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/core/src/com/unciv/ui/mapeditor/TileEditorOptionsTable.kt b/core/src/com/unciv/ui/mapeditor/TileEditorOptionsTable.kt index e19574c62f..4e1f52e667 100644 --- a/core/src/com/unciv/ui/mapeditor/TileEditorOptionsTable.kt +++ b/core/src/com/unciv/ui/mapeditor/TileEditorOptionsTable.kt @@ -466,6 +466,8 @@ class TileEditorOptionsTable(val mapEditorScreen: MapEditorScreen): Table(Camera if (terrainFeature == null || terrainFeature.occursOn.isNotEmpty() && !terrainFeature.occursOn.contains(tileInfo.baseTerrain)) tileInfo.terrainFeature = null } + if (tileInfo.resource != null && !ruleset.tileResources.containsKey(tileInfo.resource)) + tileInfo.resource = null if (tileInfo.resource != null) { val resource = tileInfo.getTileResource() if (resource.terrainsCanBeFoundOn.none { it == tileInfo.baseTerrain || it == tileInfo.terrainFeature }) @@ -489,7 +491,7 @@ class TileEditorOptionsTable(val mapEditorScreen: MapEditorScreen): Table(Camera tileInfo.improvement = null // Unset, and check if it can be reset. If so, do it, if not, invalid. if (tileInfo.canImprovementBeBuiltHere(improvement) // Allow building 'other' improvements like city ruins, barb encampments, Great Improvements etc - || (improvement.terrainsCanBeBuiltOn.isEmpty() && ruleset.tileResources.values.none { it.improvement==improvement.name } + || (improvement.terrainsCanBeBuiltOn.isEmpty() && ruleset.tileResources.values.none { it.improvement == improvement.name } && !tileInfo.isImpassible() && tileInfo.isLand)) tileInfo.improvement = improvement.name }