CvLeague::CheckProjectAchievements()
- Defined in
- CvVotingClasses.cpp, line 5264
- Class
- CvLeague
- Hook name
CivHooks::CvLeague_CheckProjectAchievements
Hooks
static bool BeforeCvLeague_CheckProjectAchievements(CvLeague* self);static void AfterCvLeague_CheckProjectAchievements(CvLeague* self);static void ReplaceCvLeague_CheckProjectAchievements(void (*original)(CvLeague*), CvLeague* self);CivRegisterBefore<CivHooks::CvLeague_CheckProjectAchievements>(host, &BeforeCvLeague_CheckProjectAchievements);CivRegisterAfter<CivHooks::CvLeague_CheckProjectAchievements>(host, &AfterCvLeague_CheckProjectAchievements);CivRegisterReplace<CivHooks::CvLeague_CheckProjectAchievements>(host, &ReplaceCvLeague_CheckProjectAchievements);
Code
5264void CvLeague::CheckProjectAchievements()5265{5266 for (MemberList::const_iterator member = m_vMembers.begin(); member != m_vMembers.end(); ++member)5267 {5268 if (member->ePlayer != NO_PLAYER && GET_PLAYER(member->ePlayer).isAlive() && GET_PLAYER(member->ePlayer).isHuman() && GET_PLAYER(member->ePlayer).isLocalPlayer())5269 {5270 int iHighestContributorProjects = 0;52715272 for (ProjectList::const_iterator project = m_vProjects.begin(); project != m_vProjects.end(); ++project)5273 {5274 if (project->bComplete)5275 {5276 if (GetMemberContributionTier(member->ePlayer, project->eType) == CONTRIBUTION_TIER_3)5277 {5278 iHighestContributorProjects++;5279 }5280 }5281 }52825283#if !defined(NO_ACHIEVEMENTS)5284 if (iHighestContributorProjects >= GC.getNumLeagueProjectInfos() && GC.getNumLeagueProjectInfos() > 0)5285 {5286 gDLL->UnlockAchievement(ACHIEVEMENT_XP2_44);5287 }5288#endif5289 }5290 }5291}
Calls
BaseVector::beginBaseVector::beginBaseVector::endBaseVector::end- CvLeague::GetMemberContributionTier(PlayerTypes, LeagueProjectTypes)
- CvPlayer::isAlive() const
- CvPlayer::isHuman() const
- CvPlayer::isLocalPlayer() const
- CvPlayerAI::getPlayer(PlayerTypes)