diff --git a/android/assets/jsons/Civ V - Vanilla/TileImprovements.json b/android/assets/jsons/Civ V - Vanilla/TileImprovements.json index d0cbc41a..8774ed93 100644 --- a/android/assets/jsons/Civ V - Vanilla/TileImprovements.json +++ b/android/assets/jsons/Civ V - Vanilla/TileImprovements.json @@ -184,13 +184,13 @@ { "name": "Terrace farm", "uniqueTo": "Inca", + "terrainsCanBeBuiltOn": ["Hill"], "food": 1, "turnsToBuild": 7, - "uniques": ["+1 food for each adjacent Mountain"], + "uniques": ["+1 food for each adjacent Mountain", "Cannot be built on bonus resource"], "techRequired": "Construction", "improvingTech": "Fertilizer", - "improvingTechStats": {"food":1}, - "terrainsCanBeBuiltOn": ["Hill"] + "improvingTechStats": {"food":1} }, { "name": "Ancient ruins" }, diff --git a/core/src/com/unciv/logic/map/TileInfo.kt b/core/src/com/unciv/logic/map/TileInfo.kt index b543f91d..781fd27c 100644 --- a/core/src/com/unciv/logic/map/TileInfo.kt +++ b/core/src/com/unciv/logic/map/TileInfo.kt @@ -271,6 +271,8 @@ open class TileInfo { improvement.name == this.improvement -> false improvement.uniqueTo != null && improvement.uniqueTo != civInfo.civName -> false improvement.techRequired?.let { civInfo.tech.isResearched(it) } == false -> false + "Cannot be built on bonus resource" in improvement.uniques && resource != null + && getTileResource().resourceType == ResourceType.Bonus -> false improvement.terrainsCanBeBuiltOn.contains(topTerrain.name) -> true improvement.name == "Road" && roadStatus == RoadStatus.None -> true improvement.name == "Railroad" && this.roadStatus != RoadStatus.Railroad -> true