diff --git a/(2) Vox Populi/Database Changes/City/Buildings/BuildingSweeps.sql b/(2) Vox Populi/Database Changes/City/Buildings/BuildingSweeps.sql
index 5292f8c56d..fdeec42a80 100644
--- a/(2) Vox Populi/Database Changes/City/Buildings/BuildingSweeps.sql
+++ b/(2) Vox Populi/Database Changes/City/Buildings/BuildingSweeps.sql
@@ -386,15 +386,6 @@ WHERE Type IN (
'BUILDING_TRAINSTATION'
);
--- Likely unnecessary with Building_ClassNeededNowhere, just for clarity on tooltip
-UPDATE Buildings
-SET MutuallyExclusiveGroup = 15
-WHERE Type IN (
- 'BUILDING_AMERICA_SMITHSONIAN',
- 'BUILDING_AMERICA_WESTPOINT',
- 'BUILDING_AMERICA_SLATERMILL'
-);
-
UPDATE Buildings
SET MutuallyExclusiveGroup = 50
WHERE Type IN (
diff --git a/(2) Vox Populi/Database Changes/Text/en_US/UI/NewUIText.xml b/(2) Vox Populi/Database Changes/Text/en_US/UI/NewUIText.xml
index dfb2f39fe4..5dda2fa5b0 100644
--- a/(2) Vox Populi/Database Changes/Text/en_US/UI/NewUIText.xml
+++ b/(2) Vox Populi/Database Changes/Text/en_US/UI/NewUIText.xml
@@ -3108,5 +3108,10 @@
Hidden Antiquity Site
+
+
+
+ Exclusive Buildings:
+
diff --git a/(3a) EUI Compatibility Files/LUA/EUI_tooltip_library.lua b/(3a) EUI Compatibility Files/LUA/EUI_tooltip_library.lua
index 6da26302f8..9b0cecccc5 100644
--- a/(3a) EUI Compatibility Files/LUA/EUI_tooltip_library.lua
+++ b/(3a) EUI Compatibility Files/LUA/EUI_tooltip_library.lua
@@ -1481,6 +1481,7 @@ local function GetHelpTextForBuilding( buildingID, bExcludeName, bExcludeHeader,
-- Required Buildings:
local buildings = table()
+ -- local
for row in GameInfo.Building_PrereqBuildingClasses( thisBuildingType ) do
local item = GetCivBuilding( activeCivilizationType, row.BuildingClassType )
if item then
@@ -1492,17 +1493,37 @@ local function GetHelpTextForBuilding( buildingID, bExcludeName, bExcludeHeader,
local item = GetCivBuilding( activeCivilizationType, row.BuildingClassType )
buildings:insertIf( item and not buildings[ item ] and BuildingColor( L(item.Description) ) )
end
+ -- global
+ items = {}
+ for classNeededAnywhere in DB.Query("SELECT Building_ClassNeededAnywhere.BuildingClassType FROM Building_ClassNeededAnywhere WHERE BuildingType = ?", building.Type) do
+ SetKey( items, classNeededAnywhere.BuildingClassType )
+ end
+ for buildingClassType in pairs( items ) do
+ local item = GetCivBuilding( activeCivilizationType, buildingClassType )
+ buildings:insertIf( item and TextColor( "[COLOR_YIELD_FOOD]", L(item.Description) ) )
+ end
+ -- printing...
+ tips:insertIf( #buildings > 0 and L"TXT_KEY_PEDIA_REQ_BLDG_LABEL" .. " " .. buildings:concat(", ") )
+
+ -- Exclusive Buildings:
+ local buildings = table()
+ -- local
items = {}
if (building.MutuallyExclusiveGroup or -1) >= 0 then
for row in GameInfo.Buildings{ MutuallyExclusiveGroup = building.MutuallyExclusiveGroup } do
SetKey( items, row.BuildingClass ~= buildingClassType and row.BuildingClass )
end
end
+ -- global
+ for classNeededNowhere in DB.Query("SELECT Building_ClassNeededNowhere.BuildingClassType FROM Building_ClassNeededNowhere WHERE BuildingType = ?", building.Type) do
+ SetKey( items, classNeededNowhere.BuildingClassType )
+ end
for buildingClassType in pairs( items ) do
local item = GetCivBuilding( activeCivilizationType, buildingClassType )
buildings:insertIf( item and TextColor( "[COLOR_RED]", L(item.Description) ) )
end
- tips:insertIf( #buildings > 0 and L"TXT_KEY_PEDIA_REQ_BLDG_LABEL" .. " " .. buildings:concat(", ") )
+ -- printing...
+ tips:insertIf( #buildings > 0 and L"TXT_KEY_PEDIA_EXC_BLDG_LABEL" .. " " .. buildings:concat(", ") )
-- Local Resources Required:
local resources = table()