Added "Irremovable" unique to tile improvements

This commit is contained in:
Yair Morgenstern
2021-02-03 21:18:38 +02:00
parent f05e0a6b25
commit c85137aaaf

View File

@ -318,6 +318,12 @@ open class TileInfo {
isCityCenter() -> false isCityCenter() -> false
"Cannot be built on bonus resource" in improvement.uniques && resource != null "Cannot be built on bonus resource" in improvement.uniques && resource != null
&& getTileResource().resourceType == ResourceType.Bonus -> false && getTileResource().resourceType == ResourceType.Bonus -> false
// Road improvements can change on tiles withh irremovable improvements - nothing else can, though.
improvement.name != RoadStatus.Railroad.name && improvement.name != RoadStatus.Railroad.name
&& improvement.name != "Remove Road" && improvement.name != "Remove Railroad"
&& getTileImprovement().let { it!=null && it.hasUnique("Irremovable") } -> false
// Tiles with no terrains, and no turns to build, are like great improvements - they're placeable // Tiles with no terrains, and no turns to build, are like great improvements - they're placeable
improvement.terrainsCanBeBuiltOn.isEmpty() && improvement.turnsToBuild==0 && isLand -> true improvement.terrainsCanBeBuiltOn.isEmpty() && improvement.turnsToBuild==0 && isLand -> true
improvement.terrainsCanBeBuiltOn.contains(topTerrain.name) -> true improvement.terrainsCanBeBuiltOn.contains(topTerrain.name) -> true