Hooks
static bool BeforeCvDeal_AddVoteCommitment(CvDeal* self, PlayerTypes eFrom, int iResolutionID, int iVoteChoice, int iNumVotes, bool bRepeal);static void AfterCvDeal_AddVoteCommitment(CvDeal* self, PlayerTypes eFrom, int iResolutionID, int iVoteChoice, int iNumVotes, bool bRepeal);static void ReplaceCvDeal_AddVoteCommitment(void (*original)(CvDeal*, PlayerTypes, int, int, int, bool), CvDeal* self, PlayerTypes eFrom, int iResolutionID, int iVoteChoice, int iNumVotes, bool bRepeal);CivRegisterBefore<CivHooks::CvDeal_AddVoteCommitment>(host, &BeforeCvDeal_AddVoteCommitment);CivRegisterAfter<CivHooks::CvDeal_AddVoteCommitment>(host, &AfterCvDeal_AddVoteCommitment);CivRegisterReplace<CivHooks::CvDeal_AddVoteCommitment>(host, &ReplaceCvDeal_AddVoteCommitment);
Code
1344/// Insert a vote commitment to the deal1345void CvDeal::AddVoteCommitment(PlayerTypes eFrom, int iResolutionID, int iVoteChoice, int iNumVotes, bool bRepeal)1346{1347 CvAssertMsg(eFrom == m_eFromPlayer || eFrom == m_eToPlayer, "DEAL: Adding deal item for a player that's not actually in this deal!");13481349 if(IsPossibleToTradeItem(eFrom, GetOtherPlayer(eFrom), TRADE_ITEM_VOTE_COMMITMENT, iResolutionID, iVoteChoice, iNumVotes, bRepeal))1350 {1351 CvTradedItem item;1352 item.m_eItemType = TRADE_ITEM_VOTE_COMMITMENT;1353 item.m_eFromPlayer = eFrom;1354 item.m_iData1 = iResolutionID;1355 item.m_iData2 = iVoteChoice;1356 item.m_iData3 = iNumVotes;1357 item.m_bFlag1 = bRepeal;1358 m_TradedItems.push_back(item);1359 }1360 else1361 {1362 CvAssertMsg(false, "DEAL: Trying to add an invalid Vote Commitment item to a deal");1363 }1364}