CvPlayerEspionage::HasSharedIntrigue(PlayerTypes, PlayerTypes, CvIntrigueType)
- Defined in
- CvEspionageClasses.cpp, line 3990
- Class
- CvPlayerEspionage
- Hook name
CivHooks::CvPlayerEspionage_HasSharedIntrigue
Hooks
static bool BeforeCvPlayerEspionage_HasSharedIntrigue(CvPlayerEspionage* self, PlayerTypes eTargetPlayer, PlayerTypes eSourcePlayer, CvIntrigueType eIntrigueType, bool& result);static void AfterCvPlayerEspionage_HasSharedIntrigue(CvPlayerEspionage* self, PlayerTypes eTargetPlayer, PlayerTypes eSourcePlayer, CvIntrigueType eIntrigueType, bool& result);static bool ReplaceCvPlayerEspionage_HasSharedIntrigue(bool (*original)(CvPlayerEspionage*, PlayerTypes, PlayerTypes, CvIntrigueType), CvPlayerEspionage* self, PlayerTypes eTargetPlayer, PlayerTypes eSourcePlayer, CvIntrigueType eIntrigueType);CivRegisterBefore<CivHooks::CvPlayerEspionage_HasSharedIntrigue>(host, &BeforeCvPlayerEspionage_HasSharedIntrigue);CivRegisterAfter<CivHooks::CvPlayerEspionage_HasSharedIntrigue>(host, &AfterCvPlayerEspionage_HasSharedIntrigue);CivRegisterReplace<CivHooks::CvPlayerEspionage_HasSharedIntrigue>(host, &ReplaceCvPlayerEspionage_HasSharedIntrigue);
Code
3989/// HasSharedIntrigue - Has this player shared information in the last few turns about this point of intrigue?3990bool CvPlayerEspionage::HasSharedIntrigue(PlayerTypes eTargetPlayer, PlayerTypes eSourcePlayer, CvIntrigueType eIntrigueType)3991{3992 for(uint ui = 0; ui < m_aIntrigueNotificationMessages.size(); ui++)3993 {3994 IntrigueNotificationMessage* pMessage = &(m_aIntrigueNotificationMessages[ui]);39953996 // if we HAVE NOT shared this information, don't count it3997 if(!pMessage->m_bShared)3998 {3999 continue;4000 }40014002 // if we did not discover the message, we cannot share the intrigue4003 if (pMessage->m_eDiscoveringPlayer != m_pPlayer->GetID())4004 {4005 continue;4006 }40074008 if(pMessage->m_eTargetPlayer != eTargetPlayer)4009 {4010 continue;4011 }40124013 if(pMessage->m_eSourcePlayer != eSourcePlayer)4014 {4015 continue;4016 }40174018 if(pMessage->m_iIntrigueType != eIntrigueType)4019 {4020 continue;4021 }40224023 // has this intrigue been shared the last 30 turns?4024 if((GC.getGame().getGameTurn() - m_aIntrigueNotificationMessages[ui].m_iTurnNum) > 30)4025 {4026 continue;4027 }40284029 return true;4030 }40314032 return false;4033}
Calls
- CvGame::getGameTurn()
- CvGlobals::getGame()
- CvPlayer::GetID() const
std::vector::operator[]std::vector::size