Bazaar developer reference

CvPlayerTrade::GetTradeConnection(CvCity *, CvCity *)

Defined in
CvTradeClasses.cpp, line 2998
Class
CvPlayerTrade
Hook name
CivHooks::CvPlayerTrade_GetTradeConnection

Hooks

static bool BeforeCvPlayerTrade_GetTradeConnection(CvPlayerTrade* self, CvCity* pOriginCity, CvCity* pDestCity, TradeConnection*& result);static void AfterCvPlayerTrade_GetTradeConnection(CvPlayerTrade* self, CvCity* pOriginCity, CvCity* pDestCity, TradeConnection*& result);static TradeConnection* ReplaceCvPlayerTrade_GetTradeConnection(TradeConnection* (*original)(CvPlayerTrade*, CvCity*, CvCity*), CvPlayerTrade* self, CvCity* pOriginCity, CvCity* pDestCity);CivRegisterBefore<CivHooks::CvPlayerTrade_GetTradeConnection>(host, &BeforeCvPlayerTrade_GetTradeConnection);CivRegisterAfter<CivHooks::CvPlayerTrade_GetTradeConnection>(host, &AfterCvPlayerTrade_GetTradeConnection);CivRegisterReplace<CivHooks::CvPlayerTrade_GetTradeConnection>(host, &ReplaceCvPlayerTrade_GetTradeConnection);

Code

2998TradeConnection* CvPlayerTrade::GetTradeConnection(CvCity* pOriginCity, CvCity* pDestCity)2999{3000	int iOriginX = pOriginCity->getX();3001	int iOriginY = pOriginCity->getY();3002	int iDestX = pDestCity->getX();3003	int iDestY = pDestCity->getY();30043005	CvGameTrade* pTrade = GC.getGame().GetGameTrade();3006	for (uint ui = 0; ui < pTrade->m_aTradeConnections.size(); ui++)3007	{3008		TradeConnection* pConnection = &(pTrade->m_aTradeConnections[ui]);3009		if (pConnection->m_eOriginOwner == m_pPlayer->GetID())3010		{3011			if (pConnection->m_iOriginX == iOriginX && pConnection->m_iOriginY == iOriginY && pConnection->m_iDestX == iDestX && pConnection->m_iDestY == iDestY)3012			{3013				return pConnection;3014			}3015		}3016	}30173018	return NULL;3019}

Calls

Called by