Implemented temples (#4585)

This commit is contained in:
Xander Lenstra 2021-07-21 11:21:24 +02:00 committed by GitHub
parent 85f4840e35
commit e48ae69927
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 15 additions and 11 deletions

View File

@ -265,8 +265,6 @@
"quote": "'Regard your soldiers as your children, and they will follow you into the deepest valleys; look on them as your own beloved sons, and they will stand by you even unto death.' - Sun Tzu"
},
// Column 4
/*
// Temple and its replacements are religious buildings in G&K
{
"name": "Temple",
"faith": 2,
@ -274,9 +272,8 @@
"maintenance": 2,
"hurryCostModifier": 25,
"requiredTech": "Philosophy",
"uniques": ""
"uniques": ["Hidden when religion is disabled"]
},
*/
{
"name": "National College",
"cost": 125,
@ -324,6 +321,11 @@
// temporarily replaces Drama and Poetry and requires a Monument while having its Vanilla
// stats, so it's a mish-mash of vanilla and G&K. It should be changed when faith is
// implemented.
// Further edit: Temples are now implemented. However, due to Religion still being in
// its alpha stages, these buildings are still the culture variant. When religion is finally
// fully released, this building should be replaced with amphitheatres in existing save files,
// and then later the G&K faith version can be added
},
{
"name": "Mud Pyramid Mosque",
@ -343,6 +345,11 @@
// temporarily replaces Drama and Poetry and requires a Monument while having its Vanilla
// stats, so it's a mish-mash of vanilla and G&K. It should be changed when faith is
// implemented.
// Further edit: Temples are now implemented. However, due to Religion still being in
// its alpha stages, these buildings are still the culture variant. When religion is finally
// fully released, this building should be replaced with amphitheatres in existing save files,
// and then later the G&K faith version can be added
},
{
"name": "National Epic",

View File

@ -342,17 +342,14 @@ class GameInfo {
}
for (city in civilizations.asSequence().flatMap { it.cities.asSequence() }) {
// Temple was replaced by Amphitheater in 3.15.6. For backwards compatibility, we
// replace existing temples with amphitheaters. This replacement should be removed
// when temples are reintroduced as faith buildings.
changeBuildingNameIfNotInRuleset(city.cityConstructions, "Temple", "Amphitheater")
for (building in city.cityConstructions.builtBuildings.toHashSet())
if (!ruleSet.buildings.containsKey(building))
city.cityConstructions.builtBuildings.remove(building)
fun isInvalidConstruction(construction: String) = !ruleSet.buildings.containsKey(construction) && !ruleSet.units.containsKey(construction)
fun isInvalidConstruction(construction: String) =
!ruleSet.buildings.containsKey(construction)
&& !ruleSet.units.containsKey(construction)
&& !PerpetualConstruction.perpetualConstructionsMap.containsKey(construction)
// Remove invalid buildings or units from the queue - don't just check buildings and units because it might be a special construction as well