Bazaar developer reference

CvGameDeals::GetProposedDeal(PlayerTypes, PlayerTypes, bool)

Defined in
CvDealClasses.cpp, line 3000
Class
CvGameDeals
Hook name
CivHooks::CvGameDeals_GetProposedDeal

Hooks

static bool BeforeCvGameDeals_GetProposedDeal(CvGameDeals* self, PlayerTypes eFromPlayer, PlayerTypes eToPlayer, bool latest, CvDeal*& result);static void AfterCvGameDeals_GetProposedDeal(CvGameDeals* self, PlayerTypes eFromPlayer, PlayerTypes eToPlayer, bool latest, CvDeal*& result);static CvDeal* ReplaceCvGameDeals_GetProposedDeal(CvDeal* (*original)(CvGameDeals*, PlayerTypes, PlayerTypes, bool), CvGameDeals* self, PlayerTypes eFromPlayer, PlayerTypes eToPlayer, bool latest);CivRegisterBefore<CivHooks::CvGameDeals_GetProposedDeal>(host, &BeforeCvGameDeals_GetProposedDeal);CivRegisterAfter<CivHooks::CvGameDeals_GetProposedDeal>(host, &AfterCvGameDeals_GetProposedDeal);CivRegisterReplace<CivHooks::CvGameDeals_GetProposedDeal>(host, &ReplaceCvGameDeals_GetProposedDeal);

Code

2999#if defined(MOD_AI_MP_DIPLOMACY)3000CvDeal* CvGameDeals::GetProposedDeal(PlayerTypes eFromPlayer, PlayerTypes eToPlayer, bool latest)3001#else3002CvDeal* CvGameDeals::GetProposedDeal(PlayerTypes eFromPlayer, PlayerTypes eToPlayer)3003#endif3004{3005#if defined(MOD_AI_MP_DIPLOMACY)3006	if (MOD_AI_MP_DIPLOMACY) {3007		int start = latest ? m_ProposedDeals.size() - 1 : 0;3008		int end = latest ? -1 : m_ProposedDeals.size();3009		int inc = latest ? -1 : 1;3010		for (int i = start; i != end; i += inc) {3011			CvDeal* pDeal = &m_ProposedDeals[i];3012			if (pDeal->GetFromPlayer() == eFromPlayer && pDeal->GetToPlayer() == eToPlayer)3013				return pDeal;3014		}3015	} else {3016#endif3017	if(m_ProposedDeals.size() > 0)3018	{3019		DealList::iterator iter;3020		for(iter = m_ProposedDeals.begin(); iter != m_ProposedDeals.end(); ++iter)3021			if(iter->m_eFromPlayer == eFromPlayer && iter->m_eToPlayer == eToPlayer)3022				return &(*iter);3023	}3024#if defined(MOD_AI_MP_DIPLOMACY)3025	}3026#endif30273028	return NULL;3029}

Calls

Called by