Bazaar developer reference

CvGameDeals::GetTradeItemGoldCost(TradeableItems, PlayerTypes, PlayerTypes) const

Defined in
CvDealClasses.cpp, line 3479
Class
CvGameDeals
Hook name
CivHooks::CvGameDeals_GetTradeItemGoldCost

Hooks

static bool BeforeCvGameDeals_GetTradeItemGoldCost(const CvGameDeals* self, TradeableItems eItem, PlayerTypes ePlayer1, PlayerTypes ePlayer2, int& result);static void AfterCvGameDeals_GetTradeItemGoldCost(const CvGameDeals* self, TradeableItems eItem, PlayerTypes ePlayer1, PlayerTypes ePlayer2, int& result);static int ReplaceCvGameDeals_GetTradeItemGoldCost(int (*original)(const CvGameDeals*, TradeableItems, PlayerTypes, PlayerTypes), const CvGameDeals* self, TradeableItems eItem, PlayerTypes ePlayer1, PlayerTypes ePlayer2);CivRegisterBefore<CivHooks::CvGameDeals_GetTradeItemGoldCost>(host, &BeforeCvGameDeals_GetTradeItemGoldCost);CivRegisterAfter<CivHooks::CvGameDeals_GetTradeItemGoldCost>(host, &AfterCvGameDeals_GetTradeItemGoldCost);CivRegisterReplace<CivHooks::CvGameDeals_GetTradeItemGoldCost>(host, &ReplaceCvGameDeals_GetTradeItemGoldCost);

Code

3478/// Some trade items require Gold to be spent by both players3479int CvGameDeals::GetTradeItemGoldCost(TradeableItems eItem, PlayerTypes ePlayer1, PlayerTypes ePlayer2) const3480{3481	int iGoldCost = 0;34823483	switch(eItem)3484	{3485	case TRADE_ITEM_RESEARCH_AGREEMENT:3486	{3487		iGoldCost = GC.getGame().GetResearchAgreementCost(ePlayer1, ePlayer2);3488		break;3489	}3490	case TRADE_ITEM_TRADE_AGREEMENT:3491		iGoldCost = 250;3492		break;3493	}34943495	return iGoldCost;3496}

Calls

Called by