mirror of
https://github.com/yairm210/Unciv.git
synced 2025-07-20 12:48:56 +07:00
National wonders requiring buildings (e.g. Library) now accept unique replacements (e.g. Paper Maker)
This commit is contained in:
@ -90,6 +90,8 @@ class CityConstructions {
|
||||
|
||||
internal fun getBuiltBuildings(): List<Building> = builtBuildings.map { GameBasics.Buildings[it]!! }
|
||||
|
||||
fun containsBuildingOrEquivalent(building: String): Boolean =
|
||||
isBuilt(building) || getBuiltBuildings().any{it.replaces==building}
|
||||
|
||||
fun getWorkDone(constructionName: String): Int {
|
||||
if (inProgressConstructions.containsKey(constructionName)) return inProgressConstructions[constructionName]!!
|
||||
|
@ -164,9 +164,9 @@ class Building : NamedStats(), IConstruction{
|
||||
it.cityConstructions.isBuilding(name) || it.cityConstructions.isBuilt(name)
|
||||
})
|
||||
return false
|
||||
if (requiredBuilding != null && !construction.isBuilt(requiredBuilding!!)
|
||||
&& construction.getBuiltBuildings().none{it.replaces==requiredBuilding}) return false
|
||||
if (requiredBuildingInAllCities != null && civInfo.cities.any { !it.cityConstructions.isBuilt(requiredBuildingInAllCities!!) })
|
||||
|
||||
if (requiredBuilding != null && !construction.containsBuildingOrEquivalent(requiredBuilding!!)) return false
|
||||
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)
|
||||
|
@ -27,7 +27,6 @@ class WorldScreen : CameraStageBaseScreen() {
|
||||
val tileMapHolder: TileMapHolder = TileMapHolder(this, gameInfo.tileMap)
|
||||
val minimap = Minimap(tileMapHolder)
|
||||
|
||||
internal var buttonScale = 0.9f
|
||||
private val topBar = WorldScreenTopBar(this)
|
||||
val bottomBar = WorldScreenBottomBar(this)
|
||||
val unitActionsTable = UnitActionsTable(this)
|
||||
|
@ -47,8 +47,7 @@ class UnitActionsTable(val worldScreen: WorldScreen) : Table(){
|
||||
clear()
|
||||
if (unit == null) return
|
||||
for (button in UnitActions().getUnitActions(unit, worldScreen).map { getUnitActionButton(it) })
|
||||
add(button).colspan(2).pad(5f)
|
||||
.size(button.width * worldScreen.buttonScale, button.height * worldScreen.buttonScale).row()
|
||||
add(button).colspan(2).pad(5f).row()
|
||||
pack()
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user