Bazaar developer reference

CvCityReligions::GetSecondaryReligion()

Defined in
CvReligionClasses.cpp, line 3654
Class
CvCityReligions
Hook name
CivHooks::CvCityReligions_GetSecondaryReligion

Hooks

static bool BeforeCvCityReligions_GetSecondaryReligion(CvCityReligions* self, ReligionTypes& result);static void AfterCvCityReligions_GetSecondaryReligion(CvCityReligions* self, ReligionTypes& result);static ReligionTypes ReplaceCvCityReligions_GetSecondaryReligion(ReligionTypes (*original)(CvCityReligions*), CvCityReligions* self);CivRegisterBefore<CivHooks::CvCityReligions_GetSecondaryReligion>(host, &BeforeCvCityReligions_GetSecondaryReligion);CivRegisterAfter<CivHooks::CvCityReligions_GetSecondaryReligion>(host, &AfterCvCityReligions_GetSecondaryReligion);CivRegisterReplace<CivHooks::CvCityReligions_GetSecondaryReligion>(host, &ReplaceCvCityReligions_GetSecondaryReligion);

Code

3653/// What is the second most popular religion in this city with a majority religion?3654ReligionTypes CvCityReligions::GetSecondaryReligion()3655{3656	int iMostFollowers = -1;3657	int iMostPressure = -1;3658	ReligionTypes eMajority = GetReligiousMajority();3659	ReligionTypes eMostFollowers = NO_RELIGION;3660	ReligionInCityList::iterator religionIt;36613662	if (eMajority != NO_RELIGION)3663	{	3664		for(religionIt = m_ReligionStatus.begin(); religionIt != m_ReligionStatus.end(); ++religionIt)3665		{3666			if (religionIt->m_eReligion != eMajority && religionIt->m_eReligion > RELIGION_PANTHEON && religionIt->m_iFollowers > 0)3667			{3668				if (religionIt->m_iFollowers > iMostFollowers)3669				{3670					iMostFollowers = religionIt->m_iFollowers;3671					eMostFollowers = religionIt->m_eReligion;3672					iMostPressure = religionIt->m_iPressure;3673				}3674				else if (religionIt->m_iFollowers == iMostFollowers && religionIt->m_iPressure > iMostPressure)3675				{3676					iMostFollowers = religionIt->m_iFollowers;3677					eMostFollowers = religionIt->m_eReligion;3678					iMostPressure = religionIt->m_iPressure;3679				}3680			}3681		}3682	}36833684	return eMostFollowers;3685}

Calls

Called by