bool CGodMode::RespawnPlayerIfDead() const { CActor* player = static_cast<CActor*>(g_pGame->GetIGameFramework()->GetClientActor()); bool result = RespawnIfDead(player); if (result) { SHUDEvent event; event.eventType = eHUDEvent_OnHUDReload; event.AddData(SHUDEventData(true)); event.AddData( SHUDEventData(false)); // Dynamically loaded CHUDEventDispatcher::CallEvent(event); } return result; }
void CHUDMissionObjective::SendRadarEvent() { EntityId trackedEntityId = GetTrackedEntity(); if (trackedEntityId) { SHUDEvent radarEvent; if(m_eStatus == ACTIVATED) radarEvent.eventType = eHUDEvent_AddEntity; else radarEvent.eventType = eHUDEvent_RemoveEntity; radarEvent.AddData(SHUDEventData((int)trackedEntityId)); CHUDEventDispatcher::CallEvent(radarEvent); } }
void CPlayerPlugin_CurrentlyTargetting::NetSerialize(TSerialize ser, EEntityAspects aspect, uint8 profile, int flags) { if(aspect == CPlayer::ASPECT_CURRENTLYTARGETTING_CLIENT) { NET_PROFILE_SCOPE("CurrentlyTargeting", ser.IsReading()); EntityId previousTarget = m_currentTarget; ser.Value("curTargetId", m_currentTarget, 'eid'); if(ser.IsReading()) { if(m_currentTarget != previousTarget) { CCCPOINT_IF(m_currentTarget, PlayerState_RemotePlayerNowTargettingSomebody); CCCPOINT_IF(!m_currentTarget, PlayerState_RemotePlayerNowTargettingNobody); m_currentTargetTime = 0.0f; CGameRules *pGameRules = g_pGame->GetGameRules(); const EntityId clientActorId = g_pGame->GetClientActorId(); if (m_bTargetingLocalPlayer) { SHUDEvent event (eHUDEvent_LocalPlayerTargeted); event.AddData(false); CHUDEventDispatcher::CallEvent(event); m_bTargetingLocalPlayer = false; //m_targetedSignal.Stop(clientActorId); } } } } }
void CPlayerPlugin_CurrentlyTargetting::Leave() { m_currentTarget = 0; m_currentTargetTime = 0.0f; if(m_bTargetingLocalPlayer) { SHUDEvent event (eHUDEvent_LocalPlayerTargeted); event.AddData(false); CHUDEventDispatcher::CallEvent(event); REINST("needs verification!"); /*EntityId clientId = g_pGame->GetClientActorId(); if(clientId && m_targetedSignal.IsPlaying(clientId)) { m_targetedSignal.Stop(clientId); }*/ } CPlayerPlugin::Leave(); }