Hooks
static bool BeforeCvMinorCivInfo_CacheResults(CvMinorCivInfo* self, Database::Results& kResults, CvDatabaseUtility& kUtility, bool& result);static void AfterCvMinorCivInfo_CacheResults(CvMinorCivInfo* self, Database::Results& kResults, CvDatabaseUtility& kUtility, bool& result);static bool ReplaceCvMinorCivInfo_CacheResults(bool (*original)(CvMinorCivInfo*, Database::Results&, CvDatabaseUtility&), CvMinorCivInfo* self, Database::Results& kResults, CvDatabaseUtility& kUtility);CivRegisterBefore<CivHooks::CvMinorCivInfo_CacheResults>(host, &BeforeCvMinorCivInfo_CacheResults);CivRegisterAfter<CivHooks::CvMinorCivInfo_CacheResults>(host, &AfterCvMinorCivInfo_CacheResults);CivRegisterReplace<CivHooks::CvMinorCivInfo_CacheResults>(host, &ReplaceCvMinorCivInfo_CacheResults);
Code
11177bool CvMinorCivInfo::CacheResults(Database::Results& kResults, CvDatabaseUtility& kUtility)11178{11179 if(!CvBaseInfo::CacheResults(kResults, kUtility))11180 return false;1118111182 //Basic Properties11183 const char* szTextVal = NULL;1118411185 szTextVal = kResults.GetText("ShortDescription");11186 setShortDescriptionKey(szTextVal);1118711188 szTextVal = kResults.GetText("Adjective");11189 setAdjectiveKey(szTextVal);1119011191 szTextVal = kResults.GetText("ArtDefineTag");11192 setArtDefineTag(szTextVal);1119311194 //References11195 szTextVal = kResults.GetText("DefaultPlayerColor");11196 m_iDefaultPlayerColor = GC.getInfoTypeForString(szTextVal, true);1119711198 szTextVal = kResults.GetText("ArtStyleType");11199 m_iArtStyleType = GC.getInfoTypeForString(szTextVal, true);1120011201 szTextVal = kResults.GetText("ArtStylePrefix");11202 setArtStylePrefix(szTextVal);1120311204 szTextVal = kResults.GetText("ArtStyleSuffix");11205 setArtStyleSuffix(szTextVal);1120611207 szTextVal = kResults.GetText("MinorCivTrait");11208 m_iMinorCivTrait = GC.getInfoTypeForString(szTextVal, true);1120911210 //Arrays11211 const char* szType = GetType();11212 kUtility.SetFlavors(m_piFlavorValue, "MinorCivilization_Flavors", "MinorCivType", szType, -1);1121311214 //City Names11215 {11216 m_vCityNames.clear();1121711218 std::string strKey = "MinorCiv - CityName";11219 Database::Results* pResults = kUtility.GetResults(strKey);11220 if(pResults == NULL)11221 {11222 pResults = kUtility.PrepareResults(strKey, "select CityName from MinorCivilization_CityNames where MinorCivType = ?");11223 }1122411225 pResults->Bind(1, szType, -1, false);1122611227 while(pResults->Step())11228 {11229 m_vCityNames.push_back(pResults->GetText(0));11230 }1123111232 pResults->Reset();11233 }1123411235 return true;11236}