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
- CvDatabaseUtility::GetResults(const std::string &)
CvDatabaseUtility::InitializeArray- CvDatabaseUtility::PrepareResults(const std::string &, const char *)
Database::Results::GetIntDatabase::Results::Stepstd::basic_string::basic_string