CvDiplomacyAI::IsStopSpreadingReligionAcceptable(PlayerTypes)
- Defined in
- CvDiplomacyAI.cpp, line 22853
- Class
- CvDiplomacyAI
- Hook name
CivHooks::CvDiplomacyAI_IsStopSpreadingReligionAcceptable
Hooks
static bool BeforeCvDiplomacyAI_IsStopSpreadingReligionAcceptable(CvDiplomacyAI* self, PlayerTypes ePlayer, bool& result);static void AfterCvDiplomacyAI_IsStopSpreadingReligionAcceptable(CvDiplomacyAI* self, PlayerTypes ePlayer, bool& result);static bool ReplaceCvDiplomacyAI_IsStopSpreadingReligionAcceptable(bool (*original)(CvDiplomacyAI*, PlayerTypes), CvDiplomacyAI* self, PlayerTypes ePlayer);CivRegisterBefore<CivHooks::CvDiplomacyAI_IsStopSpreadingReligionAcceptable>(host, &BeforeCvDiplomacyAI_IsStopSpreadingReligionAcceptable);CivRegisterAfter<CivHooks::CvDiplomacyAI_IsStopSpreadingReligionAcceptable>(host, &AfterCvDiplomacyAI_IsStopSpreadingReligionAcceptable);CivRegisterReplace<CivHooks::CvDiplomacyAI_IsStopSpreadingReligionAcceptable>(host, &ReplaceCvDiplomacyAI_IsStopSpreadingReligionAcceptable);
Code
22853bool CvDiplomacyAI::IsStopSpreadingReligionAcceptable(PlayerTypes ePlayer)22854{22855 FlavorTypes eFlavor = (FlavorTypes)GC.getInfoTypeForString("FLAVOR_RELIGION");22856 if (eFlavor == NO_FLAVOR)22857 {22858 return false;22859 }22860 int iFlavorReligionValue = m_pPlayer->GetFlavorManager()->GetPersonalityIndividualFlavor(eFlavor);2286122862 if (iFlavorReligionValue <= 5)22863 {22864 return true;22865 }22866 else if (iFlavorReligionValue >= 8)22867 {22868 return false;22869 }22870 else22871 {22872 MajorCivApproachTypes eApproach = GetMajorCivApproach(ePlayer, true);22873 switch (eApproach)22874 {22875 case MAJOR_CIV_APPROACH_DECEPTIVE:22876 case MAJOR_CIV_APPROACH_AFRAID:22877 case MAJOR_CIV_APPROACH_FRIENDLY:22878 case MAJOR_CIV_APPROACH_NEUTRAL:22879 return true;22880 break;22881 case MAJOR_CIV_APPROACH_WAR:22882 case MAJOR_CIV_APPROACH_HOSTILE:22883 case MAJOR_CIV_APPROACH_GUARDED:22884 return false;22885 break;22886 }22887 }2288822889 return false;22890}