Bazaar developer reference

CvTeam::GetProjectedVotesFromMinorAllies() const

Defined in
CvTeam.cpp, line 2046
Class
CvTeam
Hook name
CivHooks::CvTeam_GetProjectedVotesFromMinorAllies

Hooks

static bool BeforeCvTeam_GetProjectedVotesFromMinorAllies(const CvTeam* self, int& result);static void AfterCvTeam_GetProjectedVotesFromMinorAllies(const CvTeam* self, int& result);static int ReplaceCvTeam_GetProjectedVotesFromMinorAllies(int (*original)(const CvTeam*), const CvTeam* self);CivRegisterBefore<CivHooks::CvTeam_GetProjectedVotesFromMinorAllies>(host, &BeforeCvTeam_GetProjectedVotesFromMinorAllies);CivRegisterAfter<CivHooks::CvTeam_GetProjectedVotesFromMinorAllies>(host, &AfterCvTeam_GetProjectedVotesFromMinorAllies);CivRegisterReplace<CivHooks::CvTeam_GetProjectedVotesFromMinorAllies>(host, &ReplaceCvTeam_GetProjectedVotesFromMinorAllies);

Code

2045/// How many votes are we likely to get from City-State allies in the upcoming election?2046int CvTeam::GetProjectedVotesFromMinorAllies() const2047{2048	int iVotes = 0;2049	if (isAlive())2050	{2051		for (int iTeamLoop = 0; iTeamLoop < MAX_CIV_TEAMS; iTeamLoop++)2052		{2053			TeamTypes eTeamLoop = (TeamTypes) iTeamLoop;2054			CvTeam* pTeamLoop = &GET_TEAM(eTeamLoop);2055			if (pTeamLoop->isAlive() && pTeamLoop->isMinorCiv() && !pTeamLoop->isBarbarian())2056			{2057				// Minor civ team votes are definite things, given the situation doesn't change2058				if (GET_TEAM(eTeamLoop).GetTeamVotingForInDiplo() == GetID())2059				{2060					// Liberated minors are handled elsewhere				2061					if (GetLiberatedByTeam() != GetID())2062					{2063						iVotes++;2064					}2065				}2066			}2067		}2068	}20692070	return iVotes;2071}

Calls

Called by