diff --git a/core/src/com/unciv/logic/city/CityConstructions.kt b/core/src/com/unciv/logic/city/CityConstructions.kt index 3838f52c41..eec666d1bc 100644 --- a/core/src/com/unciv/logic/city/CityConstructions.kt +++ b/core/src/com/unciv/logic/city/CityConstructions.kt @@ -70,7 +70,7 @@ class CityConstructions { fun isBuilt(buildingName: String): Boolean = builtBuildings.contains(buildingName) - fun isBuilding(buildingName: String): Boolean = currentConstruction == buildingName + fun isBeingConstructed(constructionName: String): Boolean = currentConstruction == constructionName internal fun getConstruction(constructionName: String): IConstruction { if (GameBasics.Buildings.containsKey(constructionName)) diff --git a/core/src/com/unciv/models/gamebasics/Building.kt b/core/src/com/unciv/models/gamebasics/Building.kt index 61c411896d..f70ccd3213 100644 --- a/core/src/com/unciv/models/gamebasics/Building.kt +++ b/core/src/com/unciv/models/gamebasics/Building.kt @@ -179,7 +179,7 @@ class Building : NamedStats(), IConstruction{ .any {it.cityConstructions.isBuilt(name)}) return false - if(civInfo.cities.any { it!=construction.cityInfo && it.cityConstructions.isBuilding(name) }) + if(civInfo.cities.any { it!=construction.cityInfo && it.cityConstructions.isBeingConstructed(name) }) return false } @@ -187,7 +187,7 @@ class Building : NamedStats(), IConstruction{ if (requiredBuildingInAllCities != null && civInfo.cities.any { !it.cityConstructions.containsBuildingOrEquivalent(requiredBuildingInAllCities!!) }) return false if(requiredBuildingInAllCities!=null && civInfo.cities.any { - it.cityConstructions.isBuilding(name) || it.cityConstructions.isBuilt(name) + it.cityConstructions.isBeingConstructed(name) || it.cityConstructions.isBuilt(name) }) return false diff --git a/core/src/com/unciv/ui/cityscreen/ConstructionsTable.kt b/core/src/com/unciv/ui/cityscreen/ConstructionsTable.kt index ba33b1c25c..72489d5a99 100644 --- a/core/src/com/unciv/ui/cityscreen/ConstructionsTable.kt +++ b/core/src/com/unciv/ui/cityscreen/ConstructionsTable.kt @@ -34,6 +34,7 @@ class ConstructionsTable(val cityScreen: CityScreen) : Table(CameraStageBaseScre pickProductionButton.add(buttonText.toLabel().setFontColor(Color.WHITE)) pickProductionButton.onClick { cityScreen.city.cityConstructions.currentConstruction = construction + cityScreen.city.cityStats.update() cityScreen.update() } if(construction==cityScreen.city.cityConstructions.currentConstruction)