Irkalla
ENTP POWWWEEEEEER


Spoiler :
Code:
<Buildings>
<Row>
[COLOR="silver"]...[/COLOR]
<GreatWorkCount>-1</GreatWorkCount>
[COLOR="silver"]...[/COLOR]
</Row>
</Buildings>
This works because it defeats conditions that list the building in the CityView script (Don't check for exact equality to zero unless you have to, kids.) We get a situation where the building falls through the cracks, and is not displayed under any of the headings.
Spoiler :
Code:
for building in GameInfo.Buildings() do
local thisBuildingClass = GameInfo.BuildingClasses[building.BuildingClass];
if thisBuildingClass.MaxGlobalInstances <= 0 and thisBuildingClass.MaxPlayerInstances ~= 1 and thisBuildingClass.MaxTeamInstances <= 0 then
local buildingID= building.ID;
if pCity:GetNumSpecialistsAllowedByBuilding(buildingID) <= 0 then
if [COLOR="Red"](pCity:IsHasBuilding(buildingID) and GameInfo.Buildings[buildingID].GreatWorkCount == 0)[/COLOR] then
numBuildingsInThisCity = numBuildingsInThisCity + 1;
local element = {};
local name = Locale.ConvertTextKey( building.Description )
element.name = name;
element.ID = building.ID;
sortedList[thisId] = element;
thisId = thisId + 1;
end
end
end
end
This works because it defeats the conditions of the SQL crawler's conditions in the Civilopedia script.
Spoiler :
Code:
[COLOR="Green"]-- put in all of the buildings that do not have tech requirements in the first Era for lack of a better place[/COLOR]
local sql = [[
SELECT Buildings.ID, Buildings.Description, Buildings.PortraitIndex, Buildings.IconAtlas
FROM Buildings
INNER JOIN BuildingClasses ON Buildings.BuildingClass = BuildingClasses.Type
WHERE [COLOR="Red"]Buildings.PrereqTech IS NULL[/COLOR] AND [COLOR="red"](Buildings.FaithCost == 0 or Buildings.Cost >= 0)[/COLOR] AND BuildingClasses.MaxGlobalInstances < 0 AND (BuildingClasses.MaxPlayerInstances <> 1 or Buildings.SpecialistCount > 0) AND BuildingClasses.MaxTeamInstances < 0;]];