AzerothCore 3.3.5a
OpenSource WoW Emulator
|
#include "EventProcessor.h"
Public Member Functions | |
EventProcessor ()=default | |
~EventProcessor () | |
void | Update (uint32 p_time) |
void | KillAllEvents (bool force) |
void | AddEvent (BasicEvent *Event, uint64 e_time, bool set_addtime=true) |
void | AddEvent (BasicEvent *Event, uint64 e_time, bool set_addtime, uint8 eventGroup) |
template<typename T > | |
is_lambda_event< T > | AddEvent (T &&event, Milliseconds e_time, bool set_addtime=true) |
void | AddEventAtOffset (BasicEvent *event, Milliseconds offset) |
void | AddEventAtOffset (BasicEvent *event, Milliseconds offset, Milliseconds offset2) |
template<typename T > | |
is_lambda_event< T > | AddEventAtOffset (T &&event, Milliseconds offset, uint8 eventGroup) |
template<typename T > | |
is_lambda_event< T > | AddEventAtOffset (T &&event, Milliseconds offset, Milliseconds offset2, uint8 eventGroup) |
template<typename T > | |
is_lambda_event< T > | AddEventAtOffset (T &&event, Milliseconds offset) |
template<typename T > | |
is_lambda_event< T > | AddEventAtOffset (T &&event, Milliseconds offset, Milliseconds offset2) |
void | ModifyEventTime (BasicEvent *event, Milliseconds newTime) |
uint64 | CalculateTime (uint64 t_offset) const |
uint64 | CalculateQueueTime (uint64 delay) const |
void | CancelEventGroup (uint8 group) |
Protected Attributes | |
uint64 | m_time {0} |
EventList | m_events |
bool | m_aborting |
|
default |
EventProcessor::~EventProcessor | ( | ) |
References KillAllEvents().
void EventProcessor::AddEvent | ( | BasicEvent * | Event, |
uint64 | e_time, | ||
bool | set_addtime, | ||
uint8 | eventGroup | ||
) |
|
inline |
References AddEvent().
Referenced by Unit::_ExitVehicle(), npc_q24545_wretched_ghoul::npc_q24545_wretched_ghoulAI::Activate(), BattlegroundQueue::AddEvent(), AddEvent(), AddEventAtOffset(), Spell::AddUnitTarget(), spell_sindragosa_ice_tomb_trap_aura::AfterApply(), Creature::CallAssistance(), Unit::CastDelayedSpellWithPeriodicAmount(), boss_the_lich_king::boss_the_lich_kingAI::DamageTaken(), boss_baltharus_the_warborn::boss_baltharus_the_warbornAI::DoAction(), boss_prince_keleseth_icc::boss_prince_kelesethAI::DoAction(), boss_prince_taldaram_icc::boss_prince_taldaramAI::DoAction(), boss_prince_valanar_icc::boss_prince_valanarAI::DoAction(), boss_sindragosa::boss_sindragosaAI::DoAction(), npc_spinestalker::npc_spinestalkerAI::DoAction(), npc_rimefang::npc_rimefangAI::DoAction(), npc_green_dragon_combat_trigger::npc_green_dragon_combat_triggerAI::DoAction(), SpellEvent::Execute(), BattleExperienceEvent::Execute(), UtherBatteredHiltEvent::Execute(), TriggerWickedSpirit::Execute(), lapseTeleport::Execute(), PartyTimeEmoteEvent::Execute(), npc_xt002_boombot::npc_xt002_boombotAI::Explode(), Creature::ForcedDespawn(), WorldSession::HandleAuctionListOwnerItems(), spell_item_party_time::HandleEffectApply(), spell_alar_flame_quills::HandlePeriodic(), npc_pet_mage_mirror_image::InitializeAI(), npc_swarm_scarab::npc_swarm_scarabAI::JustDied(), npc_nerubian_burrower::npc_nerubian_burrowerAI::JustDied(), npc_gunship::npc_gunshipAI::JustDied(), npc_xt002_boombot::npc_xt002_boombotAI::JustDied(), npc_q24545_wretched_ghoul::npc_q24545_wretched_ghoulAI::JustDied(), boss_kiljaeden::JustSummoned(), boss_baltharus_the_warborn::boss_baltharus_the_warbornAI::JustSummoned(), boss_drakkari_colossus::boss_drakkari_colossusAI::JustSummoned(), boss_prince_valanar_icc::boss_prince_valanarAI::JustSummoned(), boss_sindragosa::boss_sindragosaAI::JustSummoned(), boss_the_lich_king::boss_the_lich_kingAI::JustSummoned(), boss_valithria_dreamwalker::boss_valithria_dreamwalkerAI::JustSummoned(), npc_risen_archmage::npc_risen_archmageAI::JustSummoned(), boss_algalon_the_observer::boss_algalon_the_observerAI::JustSummoned(), Creature::ModifyThreatPercentTemp(), boss_essence_of_suffering::boss_essence_of_sufferingAI::MovementInform(), boss_essence_of_desire::boss_essence_of_desireAI::MovementInform(), gunship_npc_AI::MovementInform(), npc_gunship_boarding_addAI::MovementInform(), spell_halion_twilight_realm_aura::OnApply(), instance_icecrown_citadel::instance_icecrown_citadel_InstanceMapScript::OnCreatureCreate(), spell_halion_leave_twilight_realm_aura::OnRemove(), instance_icecrown_citadel::instance_icecrown_citadel_InstanceMapScript::OnUnitDeath(), npc_hyldsmeet_protodrake::npc_hyldsmeet_protodrakeAI::PassengerBoarded(), Spell::prepare(), boss_runemaster_molgeim::boss_runemaster_molgeimAI::Reset(), boss_felmyst::ScheduleFlightAbilities(), npc_gunship_boarding_addAI::SetData(), npc_highlord_darion_mograine::npc_highlord_darion_mograineAI::SummonedCreatureDies(), TempSummon::UnSummon(), Totem::UnSummon(), spell_illidari_council_deadly_strike_aura::Update(), Update(), and boss_anomalus::UpdateAI().
|
inline |
|
inline |
References AddEvent(), and CalculateTime().
Referenced by CharmInfo::AddSpellToActionBar(), boss_high_nethermancer_zerevor::CastDampenMagicIfPossible(), boss_murmur::CastSuppressionOOC(), boss_romulo::DamageTaken(), boss_muru::DamageTaken(), boss_julianne::DoAction(), boss_akilzon::DoAction(), boss_cthun::DoAction(), boss_kalecgos::DoAction(), boss_illidan_stormrage::DoAction(), npc_akama_illidan::DoAction(), npc_maiev_illidan::DoAction(), npc_blade_of_azzinoth::DoAction(), boss_ouro::Emerge(), boss_zuljin::EnterPhase(), BattlegroundAV::EventPlayerAssaultsPoint(), BattlegroundIC::EventPlayerClickedOnFlag(), BattlegroundEY::EventTeamLostPoint(), WorldSession::HandlePlayerLoginFromDB(), spell_ayamiss_swarmer_teleport_trigger::HandleScript(), boss_akilzon::HandleStormSequence(), boss_kiljaeden::InitializeAI(), boss_ambassador_hellmaw::InitializeAI(), Totem::InitSummon(), npc_blade_of_azzinoth::IsSummonedBy(), npc_flame_of_azzinoth::IsSummonedBy(), npc_maiev_illidan::IsSummonedBy(), boss_zuljin::JustDied(), boss_akilzon::JustEngagedWith(), boss_zuljin::JustEngagedWith(), boss_keleseth::JustEngagedWith(), npc_flame_of_azzinoth::JustEngagedWith(), boss_essence_of_suffering::boss_essence_of_sufferingAI::JustEngagedWith(), boss_swamplord_muselek::JustEngagedWith(), boss_brutallus::JustEngagedWith(), boss_sacrolash::JustEngagedWith(), boss_alythess::JustEngagedWith(), boss_kalecgos::JustEngagedWith(), boss_muru::JustEngagedWith(), boss_janalai::JustEngagedWith(), boss_anubrekhan::boss_anubrekhanAI::JustEngagedWith(), boss_gurtogg_bloodboil::JustEngagedWith(), boss_illidan_stormrage::JustEngagedWith(), boss_mother_shahraz::JustEngagedWith(), boss_najentus::JustEngagedWith(), npc_akama_illidan::JustReachedHome(), boss_hazzarah::JustSummoned(), boss_reliquary_of_souls::boss_reliquary_of_soulsAI::JustSummoned(), boss_gurtogg_bloodboil::KilledUnit(), boss_illidan_stormrage::KilledUnit(), boss_essence_of_suffering::boss_essence_of_sufferingAI::KilledUnit(), boss_essence_of_desire::boss_essence_of_desireAI::KilledUnit(), boss_essence_of_anger::boss_essence_of_angerAI::KilledUnit(), boss_ebonroc::boss_ebonrocAI::MovementInform(), boss_zuljin::MovementInform(), boss_captain_skarloc::MovementInform(), boss_ayamiss::MovementInform(), boss_illidan_stormrage::MovementInform(), npc_akama_illidan::MovementInform(), boss_felmyst::MovementInform(), boss_ghazan::MovementInform(), BattlegroundAB::NodeDeoccupied(), go_main_chambers_access_panel::OnGossipHello(), at_cthun_stomach_exit::OnTrigger(), boss_anetheron::PathEndReached(), boss_rage_winterchill::PathEndReached(), npc_hyjal_ground_trash::PathEndReached(), npc_hyjal_frost_wyrm::PathEndReached(), boss_ambassador_hellmaw::PathEndReached(), npc_akama_illidan::PathEndReached(), npc_hyjal_gargoyle::PathEndReached(), npc_hive_zara_swarmer::PathEndReached(), boss_reliquary_of_souls::boss_reliquary_of_soulsAI::PhaseTransitionSpawns(), SmartScript::ProcessAction(), boss_kalec::Reset(), boss_kiljaeden::Reset(), boss_entropius::Reset(), npc_singularity::Reset(), boss_alar::ScheduleAbilities(), boss_illidan_stormrage::ScheduleAbilities(), boss_felmyst::ScheduleFlightAbilities(), boss_felmyst::ScheduleFlightSequence(), boss_felmyst::StartIntro(), boss_hydross_the_unstable::SummonMovementInform(), boss_hydross_the_unstable::SummonTaintedElementalOOC(), and CreatureAI::Talk().
|
inline |
References AddEvent(), CalculateTime(), and randtime().
|
inline |
References AddEventAtOffset().
Referenced by AddEventAtOffset().
|
inline |
|
inline |
References AddEvent(), CalculateTime(), and randtime().
|
inline |
References AddEvent(), and CalculateTime().
References CalculateTime(), and m_time.
Referenced by Unit::CastDelayedSpellWithPeriodicAmount().
References m_time.
Referenced by Unit::_ExitVehicle(), npc_q24545_wretched_ghoul::npc_q24545_wretched_ghoulAI::Activate(), BattlegroundQueue::AddEvent(), AddEventAtOffset(), Spell::AddUnitTarget(), CalculateQueueTime(), Creature::CallAssistance(), boss_the_lich_king::boss_the_lich_kingAI::DamageTaken(), boss_baltharus_the_warborn::boss_baltharus_the_warbornAI::DoAction(), boss_prince_keleseth_icc::boss_prince_kelesethAI::DoAction(), boss_prince_taldaram_icc::boss_prince_taldaramAI::DoAction(), boss_prince_valanar_icc::boss_prince_valanarAI::DoAction(), boss_sindragosa::boss_sindragosaAI::DoAction(), npc_spinestalker::npc_spinestalkerAI::DoAction(), npc_rimefang::npc_rimefangAI::DoAction(), npc_green_dragon_combat_trigger::npc_green_dragon_combat_triggerAI::DoAction(), UtherBatteredHiltEvent::Execute(), TriggerWickedSpirit::Execute(), lapseTeleport::Execute(), PartyTimeEmoteEvent::Execute(), npc_xt002_boombot::npc_xt002_boombotAI::Explode(), Creature::ForcedDespawn(), WorldSession::HandleAuctionListOwnerItems(), spell_item_party_time::HandleEffectApply(), npc_pet_mage_mirror_image::InitializeAI(), npc_swarm_scarab::npc_swarm_scarabAI::JustDied(), npc_nerubian_burrower::npc_nerubian_burrowerAI::JustDied(), npc_gunship::npc_gunshipAI::JustDied(), npc_xt002_boombot::npc_xt002_boombotAI::JustDied(), npc_q24545_wretched_ghoul::npc_q24545_wretched_ghoulAI::JustDied(), boss_kiljaeden::JustSummoned(), boss_baltharus_the_warborn::boss_baltharus_the_warbornAI::JustSummoned(), boss_drakkari_colossus::boss_drakkari_colossusAI::JustSummoned(), boss_prince_valanar_icc::boss_prince_valanarAI::JustSummoned(), boss_sindragosa::boss_sindragosaAI::JustSummoned(), boss_the_lich_king::boss_the_lich_kingAI::JustSummoned(), boss_valithria_dreamwalker::boss_valithria_dreamwalkerAI::JustSummoned(), npc_risen_archmage::npc_risen_archmageAI::JustSummoned(), boss_algalon_the_observer::boss_algalon_the_observerAI::JustSummoned(), Creature::ModifyThreatPercentTemp(), boss_essence_of_suffering::boss_essence_of_sufferingAI::MovementInform(), boss_essence_of_desire::boss_essence_of_desireAI::MovementInform(), gunship_npc_AI::MovementInform(), npc_gunship_boarding_addAI::MovementInform(), instance_icecrown_citadel::instance_icecrown_citadel_InstanceMapScript::OnCreatureCreate(), instance_icecrown_citadel::instance_icecrown_citadel_InstanceMapScript::OnUnitDeath(), npc_hyldsmeet_protodrake::npc_hyldsmeet_protodrakeAI::PassengerBoarded(), Spell::prepare(), boss_runemaster_molgeim::boss_runemaster_molgeimAI::Reset(), boss_felmyst::ScheduleFlightAbilities(), npc_gunship_boarding_addAI::SetData(), boss_the_beast::boss_thebeastAI::SetData(), npc_highlord_darion_mograine::npc_highlord_darion_mograineAI::SummonedCreatureDies(), TempSummon::UnSummon(), Totem::UnSummon(), Update(), and boss_anomalus::UpdateAI().
void EventProcessor::CancelEventGroup | ( | uint8 | group | ) |
References m_events, and m_time.
Referenced by boss_murmur::CastSuppressionOOC(), boss_illidan_stormrage::DoAction(), boss_illidan_stormrage::EnterEvadeMode(), boss_mother_shahraz::JustDied(), boss_najentus::JustDied(), boss_zuljin::JustEngagedWith(), boss_murmur::JustEngagedWith(), boss_hydross_the_unstable::JustEngagedWith(), boss_janalai::Reset(), boss_illidan_stormrage::Reset(), boss_mother_shahraz::Reset(), boss_najentus::Reset(), and boss_illidan_stormrage::ScheduleAbilities().
void EventProcessor::KillAllEvents | ( | bool | force | ) |
References m_events, and m_time.
Referenced by WorldObject::CleanupsBeforeDelete(), npc_q24545_wretched_ghoul::npc_q24545_wretched_ghoulAI::DoAction(), boss_akilzon::JustDied(), at_cthun_stomach_exit::OnTrigger(), boss_brutallus::Reset(), boss_sacrolash::Reset(), boss_alythess::Reset(), boss_felmyst::Reset(), boss_muru::Reset(), boss_akilzon::Reset(), boss_janalai::Reset(), boss_zuljin::Reset(), boss_anubrekhan::boss_anubrekhanAI::Reset(), npc_akama_illidan::Reset(), npc_maiev_illidan::Reset(), boss_alar::Reset(), NPCStaveQuestAI::ResetState(), Battleground::~Battleground(), BattlegroundQueue::~BattlegroundQueue(), and ~EventProcessor().
void EventProcessor::ModifyEventTime | ( | BasicEvent * | event, |
Milliseconds | newTime | ||
) |
References m_events.
Referenced by Spell::RecalculateDelayMomentForDst().
void EventProcessor::Update | ( | uint32 | p_time | ) |
References AddEvent(), CalculateTime(), m_events, and m_time.
Referenced by Battleground::_ProcessResurrect(), WorldObject::Update(), and BattlegroundQueue::UpdateEvents().
|
protected |
|
protected |
Referenced by AddEvent(), CancelEventGroup(), KillAllEvents(), ModifyEventTime(), and Update().
|
protected |
Referenced by AddEvent(), CalculateQueueTime(), CalculateTime(), CancelEventGroup(), KillAllEvents(), and Update().