Hooks
static bool BeforeCvSpecialUnitInfo_CacheResults(CvSpecialUnitInfo* self, Database::Results& kResults, CvDatabaseUtility& kUtility, bool& result);static void AfterCvSpecialUnitInfo_CacheResults(CvSpecialUnitInfo* self, Database::Results& kResults, CvDatabaseUtility& kUtility, bool& result);static bool ReplaceCvSpecialUnitInfo_CacheResults(bool (*original)(CvSpecialUnitInfo*, Database::Results&, CvDatabaseUtility&), CvSpecialUnitInfo* self, Database::Results& kResults, CvDatabaseUtility& kUtility);CivRegisterBefore<CivHooks::CvSpecialUnitInfo_CacheResults>(host, &BeforeCvSpecialUnitInfo_CacheResults);CivRegisterAfter<CivHooks::CvSpecialUnitInfo_CacheResults>(host, &AfterCvSpecialUnitInfo_CacheResults);CivRegisterReplace<CivHooks::CvSpecialUnitInfo_CacheResults>(host, &ReplaceCvSpecialUnitInfo_CacheResults);
Code
1632bool CvSpecialUnitInfo::CacheResults(Database::Results& kResults, CvDatabaseUtility& kUtility)1633{1634 if(!CvBaseInfo::CacheResults(kResults, kUtility))1635 return false;16361637 m_bValid = kResults.GetBool("Valid");1638 m_bCityLoad = kResults.GetBool("CityLoad");16391640 const char* szSpecialUnitType = GetType();1641 kUtility.PopulateArrayByExistence(m_pbCarrierUnitAITypes, "UnitAIInfos", "SpecialUnit_CarrierUnitAI", "UnitAIType", "SpecialUnitType", szSpecialUnitType);1642 kUtility.PopulateArrayByValue(m_piProductionTraits, "Traits", "SpecialUnit_ProductionTraits", "TraitType", "SpecialUnitType", szSpecialUnitType, "Trait");16431644 return true;1645}