CvGame::DoUpdateCachedWorldReligionTechProgress()
- Defined in
- CvGame.cpp, line 6863
- Class
- CvGame
- Hook name
CivHooks::CvGame_DoUpdateCachedWorldReligionTechProgress
Hooks
static bool BeforeCvGame_DoUpdateCachedWorldReligionTechProgress(CvGame* self);static void AfterCvGame_DoUpdateCachedWorldReligionTechProgress(CvGame* self);static void ReplaceCvGame_DoUpdateCachedWorldReligionTechProgress(void (*original)(CvGame*), CvGame* self);CivRegisterBefore<CivHooks::CvGame_DoUpdateCachedWorldReligionTechProgress>(host, &BeforeCvGame_DoUpdateCachedWorldReligionTechProgress);CivRegisterAfter<CivHooks::CvGame_DoUpdateCachedWorldReligionTechProgress>(host, &AfterCvGame_DoUpdateCachedWorldReligionTechProgress);CivRegisterReplace<CivHooks::CvGame_DoUpdateCachedWorldReligionTechProgress>(host, &ReplaceCvGame_DoUpdateCachedWorldReligionTechProgress);
Code
6862/// Updates the cached World Average Tech Progress towards the Religion Victory Competition6863void CvGame::DoUpdateCachedWorldReligionTechProgress()6864{6865 TechTypes ePrereqTech = GetReligionTech();68666867 // If it's been removed, then we're done here6868 if(ePrereqTech == NO_TECH)6869 {6870 m_iCachedWorldReligionTechProgress = -1;6871 return;6872 }68736874 TeamTypes eTeam;6875 int iNumTeams = 0;68766877 int iResearchLeftToReligionTech = 0;68786879 // Look at every Team's progress6880 for(int iTeamLoop = 0; iTeamLoop < MAX_CIV_TEAMS; iTeamLoop++)6881 {6882 eTeam = (TeamTypes) iTeamLoop;68836884 if(GET_TEAM(eTeam).isAlive() && !GET_TEAM(eTeam).isMinorCiv())6885 {6886 iNumTeams++;6887 iResearchLeftToReligionTech += GetResearchLeftToReligionTech(eTeam);6888 }6889 }68906891 CvAssert(iNumTeams > 0);6892 m_iCachedWorldReligionTechProgress = iResearchLeftToReligionTech / iNumTeams;6893}