Hooks
static bool BeforeCvPromotionEntry_GetUnitName(const CvPromotionEntry* self, UnitTypes eUnit, CvString& sUnitName);static void AfterCvPromotionEntry_GetUnitName(const CvPromotionEntry* self, UnitTypes eUnit, CvString& sUnitName);static void ReplaceCvPromotionEntry_GetUnitName(void (*original)(const CvPromotionEntry*, UnitTypes, CvString&), const CvPromotionEntry* self, UnitTypes eUnit, CvString& sUnitName);CivRegisterBefore<CivHooks::CvPromotionEntry_GetUnitName>(host, &BeforeCvPromotionEntry_GetUnitName);CivRegisterAfter<CivHooks::CvPromotionEntry_GetUnitName>(host, &AfterCvPromotionEntry_GetUnitName);CivRegisterReplace<CivHooks::CvPromotionEntry_GetUnitName>(host, &ReplaceCvPromotionEntry_GetUnitName);
Code
2076void CvPromotionEntry::GetUnitName(UnitTypes eUnit, CvString& sUnitName) const2077{2078 Database::Results kDBResults;2079 char szQuery[512] = {0};2080 sprintf_s(szQuery, "select Name from UnitPromotions_UnitName n, UnitPromotions p, Units u where n.PromotionType = p.Type and n.UnitType = u.Type and p.ID = %i and u.ID = %i;", GetID(), eUnit);2081 if(DB.Execute(kDBResults, szQuery))2082 {2083 while(kDBResults.Step())2084 {2085 sUnitName = kDBResults.GetText("Name");2086 }2087 }2088}