SortThemingBonus(const CvGreatWorkBuildingInMyEmpire &, const CvGreatWorkBuildingInMyEmpire &)
- Defined in
- CvCultureClasses.cpp, line 1185
- Hook name
CivHooks::CvCultureClasses_cpp_SortThemingBonus
Hooks
static bool BeforeCvCultureClasses_cpp_SortThemingBonus(const CvGreatWorkBuildingInMyEmpire& kEntry1, const CvGreatWorkBuildingInMyEmpire& kEntry2, bool& result);static void AfterCvCultureClasses_cpp_SortThemingBonus(const CvGreatWorkBuildingInMyEmpire& kEntry1, const CvGreatWorkBuildingInMyEmpire& kEntry2, bool& result);static bool ReplaceCvCultureClasses_cpp_SortThemingBonus(bool (*original)(const CvGreatWorkBuildingInMyEmpire&, const CvGreatWorkBuildingInMyEmpire&), const CvGreatWorkBuildingInMyEmpire& kEntry1, const CvGreatWorkBuildingInMyEmpire& kEntry2);CivRegisterBefore<CivHooks::CvCultureClasses_cpp_SortThemingBonus>(host, &BeforeCvCultureClasses_cpp_SortThemingBonus);CivRegisterAfter<CivHooks::CvCultureClasses_cpp_SortThemingBonus>(host, &AfterCvCultureClasses_cpp_SortThemingBonus);CivRegisterReplace<CivHooks::CvCultureClasses_cpp_SortThemingBonus>(host, &ReplaceCvCultureClasses_cpp_SortThemingBonus);
Code
1184/// Sorts building by AI priority which determines the order they should be evaluated when applying theming bonuses1185static bool SortThemingBonus(const CvGreatWorkBuildingInMyEmpire& kEntry1, const CvGreatWorkBuildingInMyEmpire& kEntry2)1186{1187 CvBuildingEntry *pEntry1 = GC.GetGameBuildings()->GetEntry(kEntry1.m_eBuilding);1188 CvBuildingEntry *pEntry2 = GC.GetGameBuildings()->GetEntry(kEntry2.m_eBuilding);11891190 if (pEntry1 && pEntry2)1191 {1192 CvThemingBonusInfo *pBonus1 = pEntry1->GetThemingBonusInfo(0);1193 CvThemingBonusInfo *pBonus2 = pEntry2->GetThemingBonusInfo(0);11941195 if (pBonus1 && pBonus2)1196 {1197 return (pBonus1->GetAIPriority() > pBonus2->GetAIPriority());1198 }1199 else if (pBonus1)1200 {1201 return true;1202 }1203 }12041205 return false;1206}