Bazaar developer reference

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

Called by