CvGameTrade::GetNumTimesOriginCity(CvCity *, bool)
- Defined in
- CvTradeClasses.cpp, line 794
- Class
- CvGameTrade
- Hook name
CivHooks::CvGameTrade_GetNumTimesOriginCity
Hooks
static bool BeforeCvGameTrade_GetNumTimesOriginCity(CvGameTrade* self, CvCity* pCity, bool bOnlyInternational, int& result);static void AfterCvGameTrade_GetNumTimesOriginCity(CvGameTrade* self, CvCity* pCity, bool bOnlyInternational, int& result);static int ReplaceCvGameTrade_GetNumTimesOriginCity(int (*original)(CvGameTrade*, CvCity*, bool), CvGameTrade* self, CvCity* pCity, bool bOnlyInternational);CivRegisterBefore<CivHooks::CvGameTrade_GetNumTimesOriginCity>(host, &BeforeCvGameTrade_GetNumTimesOriginCity);CivRegisterAfter<CivHooks::CvGameTrade_GetNumTimesOriginCity>(host, &AfterCvGameTrade_GetNumTimesOriginCity);CivRegisterReplace<CivHooks::CvGameTrade_GetNumTimesOriginCity>(host, &ReplaceCvGameTrade_GetNumTimesOriginCity);
Code
794int CvGameTrade::GetNumTimesOriginCity (CvCity* pCity, bool bOnlyInternational)795{796 int iCount = 0;797 int iCityX = pCity->getX();798 int iCityY = pCity->getY();799800 for (uint ui = 0; ui < m_aTradeConnections.size(); ui++)801 {802 TradeConnection* pConnection = &(m_aTradeConnections[ui]);803804 if (IsTradeRouteIndexEmpty(ui))805 {806 continue;807 }808809 if (pConnection->m_iOriginX == iCityX && pConnection->m_iOriginY == iCityY)810 {811 if (bOnlyInternational)812 {813 if (pConnection->m_eConnectionType == TRADE_CONNECTION_INTERNATIONAL)814 {815 iCount++;816 }817 }818 else819 {820 iCount++;821 }822 }823 }824825 return iCount; 826}
Calls
BaseVector::operator[]BaseVector::size- CvCity::getX() const
- CvCity::getY() const
- CvGameTrade::IsTradeRouteIndexEmpty(int)