Bazaar developer reference

CvDeal::AddThirdPartyPeace(PlayerTypes, TeamTypes, int)

Defined in
CvDealClasses.cpp, line 1258
Class
CvDeal
Hook name
CivHooks::CvDeal_AddThirdPartyPeace

Hooks

static bool BeforeCvDeal_AddThirdPartyPeace(CvDeal* self, PlayerTypes eFrom, TeamTypes eThirdPartyTeam, int iDuration);static void AfterCvDeal_AddThirdPartyPeace(CvDeal* self, PlayerTypes eFrom, TeamTypes eThirdPartyTeam, int iDuration);static void ReplaceCvDeal_AddThirdPartyPeace(void (*original)(CvDeal*, PlayerTypes, TeamTypes, int), CvDeal* self, PlayerTypes eFrom, TeamTypes eThirdPartyTeam, int iDuration);CivRegisterBefore<CivHooks::CvDeal_AddThirdPartyPeace>(host, &BeforeCvDeal_AddThirdPartyPeace);CivRegisterAfter<CivHooks::CvDeal_AddThirdPartyPeace>(host, &AfterCvDeal_AddThirdPartyPeace);CivRegisterReplace<CivHooks::CvDeal_AddThirdPartyPeace>(host, &ReplaceCvDeal_AddThirdPartyPeace);

Code

1257/// Insert going to peace with a third party1258void CvDeal::AddThirdPartyPeace(PlayerTypes eFrom, TeamTypes eThirdPartyTeam, int iDuration)1259{1260	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.");12611262	if(IsPossibleToTradeItem(eFrom, GetOtherPlayer(eFrom), TRADE_ITEM_THIRD_PARTY_PEACE, eThirdPartyTeam))1263	{1264		CvTradedItem item;1265		item.m_eItemType = TRADE_ITEM_THIRD_PARTY_PEACE;1266		item.m_iDuration = iDuration;1267		item.m_iFinalTurn = -1;1268		item.m_iData1 = eThirdPartyTeam;1269		item.m_eFromPlayer = eFrom;1270		m_TradedItems.push_back(item);1271	}1272	else1273	{1274		CvAssertMsg(false, "DEAL: Trying to add an invalid Third Party Peace item to a deal");1275	}1276}

Calls

Called by