function GetCivSpecificUnitForDefaultUnit(pPlayer, iDefaultUnit)
local sUnitClass = GameInfo.Units[iDefaultUnit].Class
local sCivilizationName = GameInfo.Civilizations[pPlayer:GetCivilizationType()].Type
for row in GameInfo.Civilization_UnitClassOverrides("CivilizationType='" .. sCivilizationName .. "'") do
if row.UnitClassType == sUnitClass then
if row.UnitType ~= "NULL" and row.UnitType ~= "null" and row.UnitType ~= "NONE" and row.UnitType ~= -1 and row.UnitType ~= nil then
return GameInfoTypes[row.UnitType]
end
end
end
return iDefaultUnit
end
function GetCivSpecificBuildingForDefaultBuilding(pPlayer, iDefaultBuilding)
local sBuildingClass = GameInfo.Buildings[iDefaultBuilding].BuildingClass
local sCivilizationName = GameInfo.Civilizations[pPlayer:GetCivilizationType()].Type
for row in GameInfo.Civilization_BuildingClassOverrides("CivilizationType='" .. sCivilizationName .. "'") do
if row.BuildingClassType == sBuildingClass then
if row.BuildingType ~= "NULL" and row.BuildingType ~= "null" and row.BuildingType ~= "NONE" and row.BuildingType ~= -1 and row.BuildingType ~= nil then
return GameInfoTypes[row.BuildingType]
end
end
end
return iDefaultBuilding
end