CvPlayer::GetHappinessFromReligion()
- Defined in
- CvPlayer.cpp, line 12233
- Class
- CvPlayer
- Hook name
CivHooks::CvPlayer_GetHappinessFromReligion
Hooks
static bool BeforeCvPlayer_GetHappinessFromReligion(CvPlayer* self, int& result);static void AfterCvPlayer_GetHappinessFromReligion(CvPlayer* self, int& result);static int ReplaceCvPlayer_GetHappinessFromReligion(int (*original)(CvPlayer*), CvPlayer* self);CivRegisterBefore<CivHooks::CvPlayer_GetHappinessFromReligion>(host, &BeforeCvPlayer_GetHappinessFromReligion);CivRegisterAfter<CivHooks::CvPlayer_GetHappinessFromReligion>(host, &AfterCvPlayer_GetHappinessFromReligion);CivRegisterReplace<CivHooks::CvPlayer_GetHappinessFromReligion>(host, &ReplaceCvPlayer_GetHappinessFromReligion);
Code
12232/// Total amount of Happiness gained from Religion12233int CvPlayer::GetHappinessFromReligion()12234{12235 int iHappinessFromReligion = 0;12236 CvGameReligions* pReligions = GC.getGame().GetGameReligions();1223712238 // Founder beliefs12239 ReligionTypes eFoundedReligion = pReligions->GetFounderBenefitsReligion(GetID());12240 if(eFoundedReligion != NO_RELIGION)12241 {12242 const CvReligion* pReligion = pReligions->GetReligion(eFoundedReligion, NO_PLAYER);12243 if(pReligion)12244 {12245 bool bAtPeace = GET_TEAM(getTeam()).getAtWarCount(false) == 0;12246 iHappinessFromReligion += pReligion->m_Beliefs.GetPlayerHappiness(bAtPeace);1224712248 float iHappinessPerFollowingCity = pReligion->m_Beliefs.GetHappinessPerFollowingCity();12249 iHappinessFromReligion += (int)((float)pReligions->GetNumCitiesFollowing(eFoundedReligion) * iHappinessPerFollowingCity);1225012251 int iHappinessPerXPeacefulForeignFollowers = pReligion->m_Beliefs.GetHappinessPerXPeacefulForeignFollowers();12252 if (iHappinessPerXPeacefulForeignFollowers > 0)12253 {12254 iHappinessFromReligion += GetReligions()->GetNumForeignFollowers(true /*bAtPeace */) / iHappinessPerXPeacefulForeignFollowers;12255 }12256 }12257 }1225812259 return iHappinessFromReligion;12260}
Calls
- CvGame::GetGameReligions()
- CvGameReligions::GetFounderBenefitsReligion(PlayerTypes) const
- CvGameReligions::GetNumCitiesFollowing(ReligionTypes) const
- CvGameReligions::GetReligion(ReligionTypes, PlayerTypes) const
- CvGlobals::getGame()
- CvPlayer::GetID() const
- CvPlayer::GetReligions() const
- CvPlayer::getTeam() const
- CvPlayerReligions::GetNumForeignFollowers(bool) const
- CvReligionBeliefs::GetHappinessPerFollowingCity() const
- CvReligionBeliefs::GetHappinessPerXPeacefulForeignFollowers() const
- CvReligionBeliefs::GetPlayerHappiness(bool) const
- CvTeam::getAtWarCount(bool) const
- CvTeam::getTeam(TeamTypes)