Hooks
static bool BeforeCvLuaPlayer_lGetInternationalTradeRouteOtherTraitBonus(lua_State* L, int& result);static void AfterCvLuaPlayer_lGetInternationalTradeRouteOtherTraitBonus(lua_State* L, int& result);static int ReplaceCvLuaPlayer_lGetInternationalTradeRouteOtherTraitBonus(int (*original)(lua_State*), lua_State* L);CivRegisterBefore<CivHooks::CvLuaPlayer_lGetInternationalTradeRouteOtherTraitBonus>(host, &BeforeCvLuaPlayer_lGetInternationalTradeRouteOtherTraitBonus);CivRegisterAfter<CivHooks::CvLuaPlayer_lGetInternationalTradeRouteOtherTraitBonus>(host, &AfterCvLuaPlayer_lGetInternationalTradeRouteOtherTraitBonus);CivRegisterReplace<CivHooks::CvLuaPlayer_lGetInternationalTradeRouteOtherTraitBonus>(host, &ReplaceCvLuaPlayer_lGetInternationalTradeRouteOtherTraitBonus);
Code
3805int CvLuaPlayer::lGetInternationalTradeRouteOtherTraitBonus(lua_State* L)3806{3807 CvPlayerAI* pkPlayer = GetInstance(L);3808 CvPlayerTrade* pPlayerTrade = pkPlayer->GetTrade();3809 CvCity* pOriginCity = CvLuaCity::GetInstance(L, 2, true);3810 CvCity* pDestCity = CvLuaCity::GetInstance(L, 3, true);3811 DomainTypes eDomain = (DomainTypes)lua_tointeger(L, 4);3812 bool bOrigin = lua_toboolean(L, 5);38133814 TradeConnection kTradeConnection;3815 kTradeConnection.m_iOriginX = pOriginCity->getX();3816 kTradeConnection.m_iOriginY = pOriginCity->getY();3817 kTradeConnection.m_iDestX = pDestCity->getX();3818 kTradeConnection.m_iDestY = pDestCity->getY();3819 kTradeConnection.m_eOriginOwner = pOriginCity->getOwner();3820 kTradeConnection.m_eDestOwner = pDestCity->getOwner();3821 kTradeConnection.m_eDomain = eDomain;3822 kTradeConnection.m_eConnectionType = TRADE_CONNECTION_INTERNATIONAL;38233824 int iResult = pPlayerTrade->GetTradeConnectionOtherTraitValueTimes100(kTradeConnection, YIELD_GOLD, bOrigin);3825 lua_pushinteger(L, iResult);3826 return 1; 3827}