Bazaar developer reference

CvMinorCivAI::IsEnabledQuest(MinorCivQuestTypes)

Defined in
CvMinorCivAI.cpp, line 4049
Class
CvMinorCivAI
Hook name
CivHooks::CvMinorCivAI_IsEnabledQuest

Hooks

static bool BeforeCvMinorCivAI_IsEnabledQuest(CvMinorCivAI* self, MinorCivQuestTypes eQuest, bool& result);static void AfterCvMinorCivAI_IsEnabledQuest(CvMinorCivAI* self, MinorCivQuestTypes eQuest, bool& result);static bool ReplaceCvMinorCivAI_IsEnabledQuest(bool (*original)(CvMinorCivAI*, MinorCivQuestTypes), CvMinorCivAI* self, MinorCivQuestTypes eQuest);CivRegisterBefore<CivHooks::CvMinorCivAI_IsEnabledQuest>(host, &BeforeCvMinorCivAI_IsEnabledQuest);CivRegisterAfter<CivHooks::CvMinorCivAI_IsEnabledQuest>(host, &AfterCvMinorCivAI_IsEnabledQuest);CivRegisterReplace<CivHooks::CvMinorCivAI_IsEnabledQuest>(host, &ReplaceCvMinorCivAI_IsEnabledQuest);

Code

4048// Is this quest enabled at all?4049bool CvMinorCivAI::IsEnabledQuest(MinorCivQuestTypes eQuest)4050{4051#if defined(MOD_EVENTS_QUESTS)4052	// Do NOT use UseEvents() here as we need to distinguish missing table entries4053	if (MOD_EVENTS_QUESTS) {4054		CvQuestInfo* pQuestInfo = GC.getQuestInfo(eQuest);4055		// Missing entries in the table are treated as disabled4056		return (pQuestInfo && pQuestInfo->isEnabled());4057	} else {4058#endif4059	// BUILD A ROUTE4060	if(eQuest == MINOR_CIV_QUEST_ROUTE)4061	{4062		if(GC.getQUEST_DISABLED_ROUTE() == 1)4063			return false;4064	}4065	// KILL A CAMP4066	else if(eQuest == MINOR_CIV_QUEST_KILL_CAMP)4067	{4068		if(GC.getQUEST_DISABLED_KILL_CAMP() == 1)4069			return false;4070	}4071	// CONNECT A RESOURCE4072	else if(eQuest == MINOR_CIV_QUEST_CONNECT_RESOURCE)4073	{4074		if(GC.getQUEST_DISABLED_CONNECT_RESOURCE() == 1)4075			return false;4076	}4077	// CONSTRUCT A WONDER4078	else if(eQuest == MINOR_CIV_QUEST_CONSTRUCT_WONDER)4079	{4080		if(GC.getQUEST_DISABLED_CONSTRUCT_WONDER() == 1)4081			return false;4082	}4083	// GREAT PERSON4084	else if(eQuest == MINOR_CIV_QUEST_GREAT_PERSON)4085	{4086		if(GC.getQUEST_DISABLED_GREAT_PERSON() == 1)4087			return false;4088	}4089	// KILL ANOTHER CITY STATE4090	else if(eQuest == MINOR_CIV_QUEST_KILL_CITY_STATE)4091	{4092		if(GC.getQUEST_DISABLED_KILL_CITY_STATE() == 1)4093			return false;4094	}4095	// FIND ANOTHER PLAYER4096	else if(eQuest == MINOR_CIV_QUEST_FIND_PLAYER)4097	{4098		if(GC.getQUEST_DISABLED_FIND_PLAYER() == 1)4099			return false;4100	}4101	// FIND NATURAL WONDER4102	else if(eQuest == MINOR_CIV_QUEST_FIND_NATURAL_WONDER)4103	{4104		if(GC.getQUEST_DISABLED_NATURAL_WONDER() == 1)4105			return false;4106	}4107	// GOLD GIFT4108	else if(eQuest == MINOR_CIV_QUEST_GIVE_GOLD)4109	{4110		if(GC.getQUEST_DISABLED_GIVE_GOLD() == 1)4111			return false;4112	}4113	// PLEDGE TO PROTECT4114	else if(eQuest == MINOR_CIV_QUEST_PLEDGE_TO_PROTECT)4115	{4116		if(GC.getQUEST_DISABLED_PLEDGE_TO_PROTECT() == 1)4117			return false;4118	}4119	// CONTEST CULTURE4120	else if(eQuest == MINOR_CIV_QUEST_CONTEST_CULTURE)4121	{4122		if(GC.getGame().isOption(GAMEOPTION_NO_POLICIES))4123			return false;41244125		if(GC.getQUEST_DISABLED_CONTEST_CULTURE() == 1)4126			return false;4127	}4128	// CONTEST FAITH4129	else if(eQuest == MINOR_CIV_QUEST_CONTEST_FAITH)4130	{4131		if(GC.getGame().isOption(GAMEOPTION_NO_RELIGION))4132			return false;41334134		if(GC.getQUEST_DISABLED_CONTEST_FAITH() == 1)4135			return false;4136	}4137	// CONTEST TECHS4138	else if(eQuest == MINOR_CIV_QUEST_CONTEST_TECHS)4139	{4140		if(GC.getGame().isOption(GAMEOPTION_NO_SCIENCE))4141			return false;41424143		if(GC.getQUEST_DISABLED_CONTEST_TECHS() == 1)4144			return false;4145	}4146	// Invest4147	else if(eQuest == MINOR_CIV_QUEST_INVEST)4148	{4149		if(GC.getQUEST_DISABLED_INVEST() == 1)4150			return false;4151	}4152	// Bully target City-State4153	else if(eQuest == MINOR_CIV_QUEST_BULLY_CITY_STATE)4154	{4155		if(GC.getQUEST_DISABLED_BULLY_CITY_STATE() == 1)4156			return false;4157	}4158	// Denounce target Major4159	else if(eQuest == MINOR_CIV_QUEST_DENOUNCE_MAJOR)4160	{4161		if(GC.getQUEST_DISABLED_DENOUNCE_MAJOR() == 1)4162			return false;4163	}4164	// Spread your religion to us4165	else if(eQuest == MINOR_CIV_QUEST_SPREAD_RELIGION)4166	{4167		if(GC.getGame().isOption(GAMEOPTION_NO_RELIGION))4168			return false;41694170		if(GC.getQUEST_DISABLED_SPREAD_RELIGION() == 1)4171			return false;4172	}4173	// Trade Route4174	else if(eQuest == MINOR_CIV_QUEST_TRADE_ROUTE)4175	{4176		if(GC.getQUEST_DISABLED_TRADE_ROUTE() == 1)4177			return false;4178	}4179#if defined(MOD_EVENTS_QUESTS)4180	}4181#endif41824183	return true;4184}

Calls

Called by