Bazaar developer reference

CvGameTrade::IsCityConnectedToCity(CvCity *, CvCity *)

Defined in
CvTradeClasses.cpp, line 738
Class
CvGameTrade
Hook name
CivHooks::CvGameTrade_IsCityConnectedToCity

Hooks

static bool BeforeCvGameTrade_IsCityConnectedToCity(CvGameTrade* self, CvCity* pFirstCity, CvCity* pSecondCity, bool& result);static void AfterCvGameTrade_IsCityConnectedToCity(CvGameTrade* self, CvCity* pFirstCity, CvCity* pSecondCity, bool& result);static bool ReplaceCvGameTrade_IsCityConnectedToCity(bool (*original)(CvGameTrade*, CvCity*, CvCity*), CvGameTrade* self, CvCity* pFirstCity, CvCity* pSecondCity);CivRegisterBefore<CivHooks::CvGameTrade_IsCityConnectedToCity>(host, &BeforeCvGameTrade_IsCityConnectedToCity);CivRegisterAfter<CivHooks::CvGameTrade_IsCityConnectedToCity>(host, &AfterCvGameTrade_IsCityConnectedToCity);CivRegisterReplace<CivHooks::CvGameTrade_IsCityConnectedToCity>(host, &ReplaceCvGameTrade_IsCityConnectedToCity);

Code

738bool CvGameTrade::IsCityConnectedToCity (CvCity* pFirstCity, CvCity* pSecondCity)739{740	int iFirstCityX = pFirstCity->getX();741	int iFirstCityY = pFirstCity->getY();742	int iSecondCityX = pSecondCity->getX();743	int iSecondCityY = pSecondCity->getY();744745	for (uint ui = 0; ui < m_aTradeConnections.size(); ui++)746	{747		TradeConnection* pConnection = &(m_aTradeConnections[ui]);748749		if (IsTradeRouteIndexEmpty(ui))750		{751			continue;752		}753754		if (pConnection->m_iOriginX == iFirstCityX && pConnection->m_iOriginY == iFirstCityY && pConnection->m_iDestX == iSecondCityX && pConnection->m_iDestY == iSecondCityY)755		{756			return true;757		}758		else if (pConnection->m_iOriginX == iSecondCityX && pConnection->m_iOriginY == iSecondCityY && pConnection->m_iDestX == iFirstCityX && pConnection->m_iDestY == iFirstCityY)759		{760			return true;761		}762	}763764	return false;	765}

Calls

Called by