Bazaar developer reference

CvMinorCivAI::DoTestSeedGlobalQuestCountdown(bool)

Defined in
CvMinorCivAI.cpp, line 5163
Class
CvMinorCivAI
Hook name
CivHooks::CvMinorCivAI_DoTestSeedGlobalQuestCountdown

Hooks

static bool BeforeCvMinorCivAI_DoTestSeedGlobalQuestCountdown(CvMinorCivAI* self, bool bForceSeed);static void AfterCvMinorCivAI_DoTestSeedGlobalQuestCountdown(CvMinorCivAI* self, bool bForceSeed);static void ReplaceCvMinorCivAI_DoTestSeedGlobalQuestCountdown(void (*original)(CvMinorCivAI*, bool), CvMinorCivAI* self, bool bForceSeed);CivRegisterBefore<CivHooks::CvMinorCivAI_DoTestSeedGlobalQuestCountdown>(host, &BeforeCvMinorCivAI_DoTestSeedGlobalQuestCountdown);CivRegisterAfter<CivHooks::CvMinorCivAI_DoTestSeedGlobalQuestCountdown>(host, &AfterCvMinorCivAI_DoTestSeedGlobalQuestCountdown);CivRegisterReplace<CivHooks::CvMinorCivAI_DoTestSeedGlobalQuestCountdown>(host, &ReplaceCvMinorCivAI_DoTestSeedGlobalQuestCountdown);

Code

5163void CvMinorCivAI::DoTestSeedGlobalQuestCountdown(bool bForceSeed)5164{5165	if(!bForceSeed)5166	{5167		// Only seed if there is a potential spot for a global quest5168		if(GetNumActiveGlobalQuests() >= GetMaxActiveGlobalQuests())5169		{5170			return;5171		}51725173		// Only seed if the countdown is not already active5174		if(GetGlobalQuestCountdown() > 0)5175		{5176			return;5177		}5178	}51795180	int iNumTurns = 0;51815182	// Quests are now available for the first time?5183	if(GC.getGame().getElapsedGameTurns() == GetFirstPossibleTurnForGlobalQuests())5184	{5185		int iRand = /*20*/ GC.getMINOR_CIV_GLOBAL_QUEST_FIRST_POSSIBLE_TURN_RAND();5186		iNumTurns += GC.getGame().getJonRandNum(iRand, "Random # of turns for Minor Civ global quest counter - first time.");5187	}5188	else5189	{5190		iNumTurns += /*40*/ GC.getMINOR_CIV_GLOBAL_QUEST_MIN_TURNS_BETWEEN();51915192		int iRand = /*25*/ GC.getMINOR_CIV_GLOBAL_QUEST_RAND_TURNS_BETWEEN();5193		if(GetPersonality() == MINOR_CIV_PERSONALITY_HOSTILE)5194		{5195			iRand *= /*200*/ GC.getMINOR_CIV_GLOBAL_QUEST_RAND_TURNS_BETWEEN_HOSTILE_MULTIPLIER();5196			iRand /= 100;5197		}5198		iNumTurns += GC.getGame().getJonRandNum(iRand, "Random # of turns for Minor Civ global quest counter.");5199	}52005201	// Modify for Game Speed5202	iNumTurns *= GC.getGame().getGameSpeedInfo().getGreatPeoplePercent();5203	iNumTurns /= 100;52045205	SetGlobalQuestCountdown(iNumTurns);5206}

Calls

Called by