CvPlayer::HasAnyTradeRouteWith(PlayerTypes) const
- Defined in
- CvPlayer.cpp, line 28422
- Class
- CvPlayer
- Hook name
CivHooks::CvPlayer_HasAnyTradeRouteWith
Hooks
static bool BeforeCvPlayer_HasAnyTradeRouteWith(const CvPlayer* self, PlayerTypes iPlayer, bool& result);static void AfterCvPlayer_HasAnyTradeRouteWith(const CvPlayer* self, PlayerTypes iPlayer, bool& result);static bool ReplaceCvPlayer_HasAnyTradeRouteWith(bool (*original)(const CvPlayer*, PlayerTypes), const CvPlayer* self, PlayerTypes iPlayer);CivRegisterBefore<CivHooks::CvPlayer_HasAnyTradeRouteWith>(host, &BeforeCvPlayer_HasAnyTradeRouteWith);CivRegisterAfter<CivHooks::CvPlayer_HasAnyTradeRouteWith>(host, &AfterCvPlayer_HasAnyTradeRouteWith);CivRegisterReplace<CivHooks::CvPlayer_HasAnyTradeRouteWith>(host, &ReplaceCvPlayer_HasAnyTradeRouteWith);
Code
28422bool CvPlayer::HasAnyTradeRouteWith(PlayerTypes iPlayer) const28423{28424 int iOwner = GetID();28425 CvGameTrade* pTrade = GC.getGame().GetGameTrade();2842628427 for (uint iTradeRoute = 0; iTradeRoute < pTrade->m_aTradeConnections.size(); iTradeRoute++) {28428 if (pTrade->IsTradeRouteIndexEmpty(iTradeRoute)) {28429 continue;28430 }2843128432 TradeConnection* pConnection = &(pTrade->m_aTradeConnections[iTradeRoute]);2843328434 if ((pConnection->m_eOriginOwner == iOwner && pConnection->m_eDestOwner == iPlayer) ||28435 (pConnection->m_eDestOwner == iOwner && pConnection->m_eOriginOwner == iPlayer)) {28436 return true;28437 }28438 }2843928440 return false;28441}
Calls
BaseVector::operator[]BaseVector::size- CvGame::GetGameTrade()
- CvGameTrade::IsTradeRouteIndexEmpty(int)
- CvGlobals::getGame()
- CvPlayer::GetID() const