Bazaar developer reference

CvCivilizationInfo::InitBuildingDefaults(int *&, CvDatabaseUtility &)

Defined in
CvInfos.cpp, line 2012
Class
CvCivilizationInfo
Hook name
CivHooks::CvCivilizationInfo_InitBuildingDefaults

Hooks

static bool BeforeCvCivilizationInfo_InitBuildingDefaults(CvCivilizationInfo* self, int*& piDefaults, CvDatabaseUtility& kUtility);static void AfterCvCivilizationInfo_InitBuildingDefaults(CvCivilizationInfo* self, int*& piDefaults, CvDatabaseUtility& kUtility);static void ReplaceCvCivilizationInfo_InitBuildingDefaults(void (*original)(CvCivilizationInfo*, int*&, CvDatabaseUtility&), CvCivilizationInfo* self, int*& piDefaults, CvDatabaseUtility& kUtility);CivRegisterBefore<CivHooks::CvCivilizationInfo_InitBuildingDefaults>(host, &BeforeCvCivilizationInfo_InitBuildingDefaults);CivRegisterAfter<CivHooks::CvCivilizationInfo_InitBuildingDefaults>(host, &AfterCvCivilizationInfo_InitBuildingDefaults);CivRegisterReplace<CivHooks::CvCivilizationInfo_InitBuildingDefaults>(host, &ReplaceCvCivilizationInfo_InitBuildingDefaults);

Code

2012void CvCivilizationInfo::InitBuildingDefaults(int*& piDefaults, CvDatabaseUtility& kUtility)2013{2014	kUtility.InitializeArray(piDefaults, "BuildingClasses", -1);20152016	std::string strKey("InitBuildingDefaults");2017	Database::Results* pResults = kUtility.GetResults(strKey);2018	if(pResults == NULL)2019	{2020		pResults = kUtility.PrepareResults(strKey, "select BuildingClasses.ID, Buildings.ID as BuildingID from BuildingClasses inner join Buildings on Buildings.Type = DefaultBuilding");2021	}20222023	while(pResults->Step())2024	{2025		const int idx = pResults->GetInt(0);2026		const int buildingID = pResults->GetInt(1);20272028		piDefaults[idx] = buildingID;2029	}2030}

Calls

Called by