Bazaar developer reference

CvGameReligions::CanEnhanceReligion(PlayerTypes, ReligionTypes, BeliefTypes, BeliefTypes)

Defined in
CvReligionClasses.cpp, line 1479
Class
CvGameReligions
Hook name
CivHooks::CvGameReligions_CanEnhanceReligion

Hooks

static bool BeforeCvGameReligions_CanEnhanceReligion(CvGameReligions* self, PlayerTypes ePlayer, ReligionTypes eReligion, BeliefTypes eBelief1, BeliefTypes eBelief2, CvGameReligions::FOUNDING_RESULT& result);static void AfterCvGameReligions_CanEnhanceReligion(CvGameReligions* self, PlayerTypes ePlayer, ReligionTypes eReligion, BeliefTypes eBelief1, BeliefTypes eBelief2, CvGameReligions::FOUNDING_RESULT& result);static CvGameReligions::FOUNDING_RESULT ReplaceCvGameReligions_CanEnhanceReligion(CvGameReligions::FOUNDING_RESULT (*original)(CvGameReligions*, PlayerTypes, ReligionTypes, BeliefTypes, BeliefTypes), CvGameReligions* self, PlayerTypes ePlayer, ReligionTypes eReligion, BeliefTypes eBelief1, BeliefTypes eBelief2);CivRegisterBefore<CivHooks::CvGameReligions_CanEnhanceReligion>(host, &BeforeCvGameReligions_CanEnhanceReligion);CivRegisterAfter<CivHooks::CvGameReligions_CanEnhanceReligion>(host, &AfterCvGameReligions_CanEnhanceReligion);CivRegisterReplace<CivHooks::CvGameReligions_CanEnhanceReligion>(host, &ReplaceCvGameReligions_CanEnhanceReligion);

Code

1478/// Can the new beliefs be added to the religion?1479CvGameReligions::FOUNDING_RESULT CvGameReligions::CanEnhanceReligion(PlayerTypes ePlayer, ReligionTypes eReligion, BeliefTypes eBelief1, BeliefTypes eBelief2)1480{1481	bool bFoundIt = false;1482	ReligionList::iterator it;1483	for(it = m_CurrentReligions.begin(); it != m_CurrentReligions.end(); it++)1484	{1485		if(it->m_eReligion == eReligion && it->m_eFounder == ePlayer)1486		{1487			bFoundIt = true;1488			break;1489		}1490	}14911492	if(bFoundIt)1493	{1494#if defined(MOD_TRAITS_ANY_BELIEF)1495		if(eBelief1 != NO_BELIEF && IsInSomeReligion(eBelief1, ePlayer))1496			return FOUNDING_BELIEF_IN_USE;1497		if(eBelief2 != NO_BELIEF && IsInSomeReligion(eBelief2, ePlayer))1498			return FOUNDING_BELIEF_IN_USE;1499#else1500		if(eBelief1 != NO_BELIEF && IsInSomeReligion(eBelief1))1501			return FOUNDING_BELIEF_IN_USE;1502		if(eBelief2 != NO_BELIEF && IsInSomeReligion(eBelief2))1503			return FOUNDING_BELIEF_IN_USE;1504#endif15051506		return FOUNDING_OK;1507	}15081509	return FOUNDING_RELIGION_IN_USE;1510}

Calls

Called by