Bazaar developer reference

CvReligionAI::ScoreCityForInquisitor(CvCity *, UnitHandle)

Defined in
CvReligionClasses.cpp, line 6797
Class
CvReligionAI
Hook name
CivHooks::CvReligionAI_ScoreCityForInquisitor

Hooks

static bool BeforeCvReligionAI_ScoreCityForInquisitor(CvReligionAI* self, CvCity* pCity, UnitHandle pUnit, int& result);static void AfterCvReligionAI_ScoreCityForInquisitor(CvReligionAI* self, CvCity* pCity, UnitHandle pUnit, int& result);static int ReplaceCvReligionAI_ScoreCityForInquisitor(int (*original)(CvReligionAI*, CvCity*, UnitHandle), CvReligionAI* self, CvCity* pCity, UnitHandle pUnit);CivRegisterBefore<CivHooks::CvReligionAI_ScoreCityForInquisitor>(host, &BeforeCvReligionAI_ScoreCityForInquisitor);CivRegisterAfter<CivHooks::CvReligionAI_ScoreCityForInquisitor>(host, &AfterCvReligionAI_ScoreCityForInquisitor);CivRegisterReplace<CivHooks::CvReligionAI_ScoreCityForInquisitor>(host, &ReplaceCvReligionAI_ScoreCityForInquisitor);

Code

6796/// AI's evaluation of this city as a target for an inquisitor6797int CvReligionAI::ScoreCityForInquisitor(CvCity* pCity, UnitHandle pUnit)6798{6799	int iScore = 0;6800	ReligionTypes eMyReligion = GetReligionToSpread();68016802#if defined(MOD_RELIGION_LOCAL_RELIGIONS)6803	if (MOD_RELIGION_LOCAL_RELIGIONS && GC.getReligionInfo(eMyReligion)->IsLocalReligion()) {6804		if (pCity->getOwner() != pUnit->getOwner()) {6805			return iScore;6806		}68076808		if (pCity->IsOccupied() || pCity->IsPuppet()) {6809			return iScore;6810		}6811	}6812#endif68136814	// Skip if already our religion6815	if(pCity->GetCityReligions()->GetReligiousMajority() == eMyReligion)6816	{6817		return iScore;6818	}68196820	// Base score based on if we are establishing majority6821	iScore = 100;68226823	// Then subtract distance6824	iScore -= plotDistance(pUnit->getX(), pUnit->getY(), pCity->getX(), pCity->getY());68256826	return iScore;6827}

Calls

Called by