Bazaar developer reference

CvLeague::DoRepealResolution(CvRepealProposal *)

Defined in
CvVotingClasses.cpp, line 5751
Class
CvLeague
Hook name
CivHooks::CvLeague_DoRepealResolution

Hooks

static bool BeforeCvLeague_DoRepealResolution(CvLeague* self, CvRepealProposal* pProposal);static void AfterCvLeague_DoRepealResolution(CvLeague* self, CvRepealProposal* pProposal);static void ReplaceCvLeague_DoRepealResolution(void (*original)(CvLeague*, CvRepealProposal*), CvLeague* self, CvRepealProposal* pProposal);CivRegisterBefore<CivHooks::CvLeague_DoRepealResolution>(host, &BeforeCvLeague_DoRepealResolution);CivRegisterAfter<CivHooks::CvLeague_DoRepealResolution>(host, &AfterCvLeague_DoRepealResolution);CivRegisterReplace<CivHooks::CvLeague_DoRepealResolution>(host, &ReplaceCvLeague_DoRepealResolution);

Code

5751void CvLeague::DoRepealResolution(CvRepealProposal* pProposal)5752{5753	CvAssertMsg(pProposal->IsPassed(GetVotesSpentThisSession()), "Doing a proposal that has not been passed. Please send Anton your save file and version.");57545755	int iFound = 0;5756	for (ActiveResolutionList::iterator it = m_vActiveResolutions.begin(); it != m_vActiveResolutions.end(); it++)5757	{5758		if (it->GetID() == pProposal->GetTargetResolutionID())5759		{5760			for (uint i = 0; i < m_vMembers.size(); i++)5761			{5762				it->RemoveEffects(m_vMembers[i].ePlayer);5763			}5764			m_vActiveResolutions.erase(it);5765			//antonjs: todo: relocate these league-level effects:5766			for (uint i = 0; i < m_vMembers.size(); i++)5767			{5768				GET_PLAYER(m_vMembers[i].ePlayer).DoUpdateHappiness();5769				GET_PLAYER(m_vMembers[i].ePlayer).updateYield();5770				GET_PLAYER(m_vMembers[i].ePlayer).recomputeGreatPeopleModifiers();5771			}5772			it--;5773			iFound++;5774		}5775	}5776	CvAssertMsg(iFound == 1, "Unexpected number of active resolutions with this ID. Please send Anton your save file and version.");5777}

Calls

Called by