Bazaar developer reference

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

Called by