Bazaar developer reference

CvDeal::AddDefensivePact(PlayerTypes, int)

Defined in
CvDealClasses.cpp, line 1115
Class
CvDeal
Hook name
CivHooks::CvDeal_AddDefensivePact

Hooks

static bool BeforeCvDeal_AddDefensivePact(CvDeal* self, PlayerTypes eFrom, int iDuration);static void AfterCvDeal_AddDefensivePact(CvDeal* self, PlayerTypes eFrom, int iDuration);static void ReplaceCvDeal_AddDefensivePact(void (*original)(CvDeal*, PlayerTypes, int), CvDeal* self, PlayerTypes eFrom, int iDuration);CivRegisterBefore<CivHooks::CvDeal_AddDefensivePact>(host, &BeforeCvDeal_AddDefensivePact);CivRegisterAfter<CivHooks::CvDeal_AddDefensivePact>(host, &AfterCvDeal_AddDefensivePact);CivRegisterReplace<CivHooks::CvDeal_AddDefensivePact>(host, &ReplaceCvDeal_AddDefensivePact);

Code

1114/// Insert a defensive pact1115void CvDeal::AddDefensivePact(PlayerTypes eFrom, int iDuration)1116{1117	CvAssertMsg(iDuration >= 0, "DEAL: Trying to add a negative duration to a TradeItem.  Please send Jon this with your last 5 autosaves and what changelist # you're playing.");1118	CvAssertMsg(iDuration < GC.getGame().getEstimateEndTurn() * 2, "DEAL: Trade item has a crazy long duration (probably invalid).  Please send Jon this with your last 5 autosaves and what changelist # you're playing.");1119	CvAssertMsg(eFrom == m_eFromPlayer || eFrom == m_eToPlayer, "DEAL: Adding deal item for a player that's not actually in this deal!  Please send Jon this with your last 5 autosaves and what changelist # you're playing.");11201121	if(IsPossibleToTradeItem(eFrom, GetOtherPlayer(eFrom), TRADE_ITEM_DEFENSIVE_PACT, iDuration))1122	{1123		CvTradedItem item;1124		item.m_eItemType = TRADE_ITEM_DEFENSIVE_PACT;1125		item.m_iDuration = iDuration;1126		//item.m_iFinalTurn = iDuration + GC.getGame().getGameTurn();1127		item.m_iFinalTurn = -1;1128		item.m_eFromPlayer = eFrom;1129		m_TradedItems.push_back(item);1130	}1131	else1132	{1133		CvAssertMsg(false, "DEAL: Trying to add an invalid Defensive Pact item to a deal");1134	}1135}

Calls

Called by