Hooks
static bool BeforeCvDeal_AreAllTradeItemsValid(CvDeal* self, bool& result);static void AfterCvDeal_AreAllTradeItemsValid(CvDeal* self, bool& result);static bool ReplaceCvDeal_AreAllTradeItemsValid(bool (*original)(CvDeal*), CvDeal* self);CivRegisterBefore<CivHooks::CvDeal_AreAllTradeItemsValid>(host, &BeforeCvDeal_AreAllTradeItemsValid);CivRegisterAfter<CivHooks::CvDeal_AreAllTradeItemsValid>(host, &AfterCvDeal_AreAllTradeItemsValid);CivRegisterReplace<CivHooks::CvDeal_AreAllTradeItemsValid>(host, &ReplaceCvDeal_AreAllTradeItemsValid);
Code
2065bool CvDeal::AreAllTradeItemsValid()2066{2067 TradedItemList::iterator iter;2068 for (iter = m_TradedItems.begin(); iter != m_TradedItems.end(); ++iter)2069 {2070 if (iter->m_bToRenewed) // slewis - added exception in case of something that was renewed2071 {2072 continue;2073 }20742075 if (!IsPossibleToTradeItem(iter->m_eFromPlayer, GetOtherPlayer(iter->m_eFromPlayer), iter->m_eItemType, iter->m_iData1, iter->m_iData2, iter->m_iData3, iter->m_bFlag1, false, true))2076 return false;2077 }2078 return true;2079}