CvReligionAI::HaveEnoughInquisitors(ReligionTypes) const
- Defined in
- CvReligionClasses.cpp, line 6970
- Class
- CvReligionAI
- Hook name
CivHooks::CvReligionAI_HaveEnoughInquisitors
Hooks
static bool BeforeCvReligionAI_HaveEnoughInquisitors(const CvReligionAI* self, ReligionTypes eReligion, bool& result);static void AfterCvReligionAI_HaveEnoughInquisitors(const CvReligionAI* self, ReligionTypes eReligion, bool& result);static bool ReplaceCvReligionAI_HaveEnoughInquisitors(bool (*original)(const CvReligionAI*, ReligionTypes), const CvReligionAI* self, ReligionTypes eReligion);CivRegisterBefore<CivHooks::CvReligionAI_HaveEnoughInquisitors>(host, &BeforeCvReligionAI_HaveEnoughInquisitors);CivRegisterAfter<CivHooks::CvReligionAI_HaveEnoughInquisitors>(host, &AfterCvReligionAI_HaveEnoughInquisitors);CivRegisterReplace<CivHooks::CvReligionAI_HaveEnoughInquisitors>(host, &ReplaceCvReligionAI_HaveEnoughInquisitors);
Code
6969// Do we have as many Inquisitors as we need6970bool CvReligionAI::HaveEnoughInquisitors(ReligionTypes eReligion) const6971{6972 int iLoop;69736974 // Need one for every city in our realm that is of another religion, plus one for defense6975 int iNumNeeded = 1;6976 for(CvCity* pCity = m_pPlayer->firstCity(&iLoop); pCity != NULL; pCity = m_pPlayer->nextCity(&iLoop))6977 {6978 ReligionTypes eCityReligion = pCity->GetCityReligions()->GetReligiousMajority();6979 if(eCityReligion > RELIGION_PANTHEON && eCityReligion != eReligion)6980 {6981 iNumNeeded++;6982 }6983 }69846985 // Count Inquisitors of our religion6986 int iNumInquisitors = 0;6987 for(CvUnit* pUnit = m_pPlayer->firstUnit(&iLoop); pUnit != NULL; pUnit = m_pPlayer->nextUnit(&iLoop))6988 {6989 if(pUnit->getUnitInfo().IsRemoveHeresy())6990 {6991 if(pUnit->GetReligionData()->GetReligion() == eReligion)6992 {6993 iNumInquisitors++;6994 }6995 }6996 }69976998 return iNumInquisitors >= iNumNeeded;6999}
Calls
- CvCity::GetCityReligions() const
- CvCityReligions::GetReligiousMajority()
- CvPlayer::firstCity(int *, bool)
- CvPlayer::firstUnit(int *, bool)
- CvPlayer::nextCity(int *, bool)
- CvPlayer::nextUnit(int *, bool)
- CvUnit::GetReligionData() const
- CvUnit::getUnitInfo() const
- CvUnitEntry::IsRemoveHeresy() const
- CvUnitReligion::GetReligion() const