AzerothCore 3.3.5a
OpenSource WoW Emulator
Loading...
Searching...
No Matches
EventMap Class Reference

#include "EventMap.h"

Classes

struct  Event
 

Public Member Functions

 EventMap ()
 
Reset

Removes all scheduled events and resets time and phase.

void Reset ()
 
Update

Updates the timer of the event map.

Parameters
timeValue in ms to be added to time.
void Update (uint32 time)
 
void Update (Milliseconds time)
 
GetPhaseMask
Returns
Active phases as mask.
PhaseMask GetPhaseMask () const
 
Empty
Returns
True, if there are no events scheduled.
bool Empty () const
 
SetPhase

Sets the phase of the map (absolute).

Parameters
phasePhase which should be set. Values: 1 - 8. 0 resets phase.
void SetPhase (PhaseIndex phase)
 
AddPhase

Activates the given phase (absolute).

Parameters
phasePhase which should be activated. Values: 1 - 8
void AddPhase (PhaseIndex phase)
 
RemovePhase

Deactivates the given phase (absolute).

Parameters
phasePhase which should be deactivated. Values: 1 - 8.
void RemovePhase (PhaseIndex phase)
 
ScheduleEvent

Schedules a new event. An existing event is not canceled.

Parameters
eventIdThe id of the new event.
minTimeThe minimum time until the event occurs as std::chrono type.
maxTimeThe maximum time until the event occurs as std::chrono type.
groupThe group which the event is associated to. Has to be between 1 and 8. 0 means it has no group.
phaseThe phase in which the event can occur. Has to be between 1 and 8. 0 means it can occur in all phases.
void ScheduleEvent (EventId eventId, Milliseconds time, GroupIndex group=0u, PhaseIndex phase=0u)
 
void ScheduleEvent (EventId eventId, Milliseconds minTime, Milliseconds maxTime, GroupIndex group=0u, PhaseIndex phase=0u)
 
RescheduleEvent

Cancels the given event and reschedules it.

Parameters
eventIdThe id of the event.
minTimeThe minimum time until the event occurs as std::chrono type.
maxTimeThe maximum time until the event occurs as std::chrono type.
groupThe group which the event is associated to. Has to be between 1 and 8. 0 means it has no group.
phaseThe phase in which the event can occur. Has to be between 1 and 8. 0 means it can occur in all phases.
void RescheduleEvent (EventId eventId, Milliseconds time, GroupIndex group=0u, PhaseIndex phase=0u)
 
void RescheduleEvent (EventId eventId, Milliseconds minTime, Milliseconds maxTime, GroupIndex group=0u, PhaseIndex phase=0u)
 
Repeat

Repeats the most recently executed event.

Parameters
minTimeThe minimum time until the event occurs as std::chrono type.
maxTimeThe maximum time until the event occurs as std::chrono type.
void Repeat (Milliseconds time)
 
void Repeat (Milliseconds minTime, Milliseconds maxTime)
 
ExecuteEvent

Returns the next event to execute and removes it from map.

Returns
Id of the event to execute.
EventId ExecuteEvent ()
 
DelayEvents

Delay all events of the same group.

Parameters
delayAmount of delay as std::chrono type.
groupGroup of the events.
void DelayEvents (Milliseconds delay)
 
void DelayEvents (Milliseconds delay, GroupIndex group)
 
EventsEvents

Delay all events of the same group.

Parameters
delayAmount of delay as std::chrono type.
groupGroup of the events.
void DelayEventsToMax (Milliseconds delay, GroupIndex group)
 
CancelEvent

Cancels all events of the specified id.

Parameters
eventIdEvent id to cancel.
void CancelEvent (EventId eventId)
 
CancelEventGroup

Cancel events belonging to specified group.

Parameters
groupGroup to cancel.
void CancelEventGroup (GroupIndex group)
 
IsInPhase

Returns whether event map is in specified phase or not.

Parameters
phaseWanted phase.
Returns
True, if phase of event map contains specified phase.
bool IsInPhase (PhaseIndex phase) const
 
GetTimeUntilEvent

Returns time as std::chrono type until next event.

Parameters
eventIdThe id of the event.
Returns
Time of next event. If event is not scheduled returns Milliseconds::max()
Time of next event.
Milliseconds GetTimeUntilEvent (EventId eventId) const
 
HasTimeUntilEvent

Returns whether an event is scheduled

Parameters
eventIdThe id of the event.
Returns
True if event is scheduled
bool HasTimeUntilEvent (EventId eventId) const
 

Private Types

using EventId = uint16
 
using GroupIndex = uint8
 
using GroupMask = uint8
 
using PhaseIndex = uint8
 
using PhaseMask = uint8
 
using EventStore = std::multimap< TimePoint, Event >
 

Private Attributes

_time

Internal timer.

This does not represent the real date/time value. It's more like a stopwatch: It can run, it can be stopped, it can be resetted and so on. Events occur when this timer has reached their time value. Its value is changed in the Update method.

TimePoint _time { TimePoint::min() }
 
_phaseMask

Phase mask of the event map.

Contains the phases the event map is in. Multiple phases from 1 to 8 can be set with SetPhase or AddPhase. RemovePhase deactives a phase.

PhaseMask _phaseMask { 0 }
 
_lastEvent

Stores information on the most recently executed event

Event _lastEvent
 
_eventMap

Internal event storage map. Contains the scheduled events.

See typedef at the beginning of the class for more details.

EventStore _eventMap
 

Detailed Description

Member Typedef Documentation

◆ EventId

using EventMap::EventId = uint16
private

◆ EventStore

using EventMap::EventStore = std::multimap<TimePoint, Event>
private

Internal storage type. Key: Time as TimePoint when the event should occur.

◆ GroupIndex

using EventMap::GroupIndex = uint8
private

◆ GroupMask

using EventMap::GroupMask = uint8
private

◆ PhaseIndex

using EventMap::PhaseIndex = uint8
private

◆ PhaseMask

using EventMap::PhaseMask = uint8
private

Constructor & Destructor Documentation

◆ EventMap()

EventMap::EventMap ( )
inline
54{ }

Member Function Documentation

◆ AddPhase()

void EventMap::AddPhase ( PhaseIndex  phase)
37{
38 if (phase && phase <= sizeof(PhaseMask) * 8)
39 _phaseMask |= PhaseMask(1u << (phase - 1u));
40}
phase
Definition boss_skadi.cpp:99
uint8 PhaseMask
Definition EventMap.h:31
PhaseMask _phaseMask
Definition EventMap.h:268

References _phaseMask.

◆ CancelEvent()

◆ CancelEventGroup()

void EventMap::CancelEventGroup ( GroupIndex  group)
178{
179 if (!group || group > sizeof(GroupMask) * 8 || Empty())
180 return;
181
182 for (auto itr = _eventMap.begin(); itr != _eventMap.end();)
183 {
184 if (itr->second._groupMask & GroupMask(1u << (group - 1u)))
185 {
186 _eventMap.erase(itr);
187 itr = _eventMap.begin();
188 continue;
189 }
190
191 ++itr;
192 }
193}
uint8 GroupMask
Definition EventMap.h:29

References _eventMap, and Empty().

Referenced by npc_simon_bunny::npc_simon_bunnyAI::DoAction(), and boss_ragnaros::boss_ragnarosAI::HandleEmerge().

◆ DelayEvents() [1/2]

void EventMap::DelayEvents ( Milliseconds  delay)
109{
110 if (Empty())
111 return;
112
113 EventStore delayed = std::move(_eventMap);
114 for (auto itr = delayed.begin(); itr != delayed.end();)
115 {
116 auto node = delayed.extract(itr++);
117 node.key() = node.key() + delay;
118 _eventMap.insert(_eventMap.end(), std::move(node));
119 }
120}
std::multimap< TimePoint, Event > EventStore
Definition EventMap.h:51

References _eventMap, and Empty().

◆ DelayEvents() [2/2]

void EventMap::DelayEvents ( Milliseconds  delay,
GroupIndex  group 
)
123{
124 if (group > sizeof(GroupMask) * 8 || Empty())
125 return;
126
127 EventStore delayed;
128
129 for (auto itr = _eventMap.begin(); itr != _eventMap.end();)
130 {
131 if (!group || (itr->second._groupMask & GroupMask(1u << (group - 1u))))
132 {
133 delayed.emplace(itr->first + delay, itr->second);
134 itr = _eventMap.erase(itr);
135 continue;
136 }
137
138 ++itr;
139 }
140
141 _eventMap.insert(delayed.begin(), delayed.end());
142}

References _eventMap, and Empty().

◆ DelayEventsToMax()

void EventMap::DelayEventsToMax ( Milliseconds  delay,
GroupIndex  group 
)
145{
146 for (auto itr = _eventMap.begin(); itr != _eventMap.end();)
147 {
148 if (itr->first < _time + delay && (!group || (itr->second._groupMask & GroupMask(1u << (group - 1u)))))
149 {
150 ScheduleEvent(itr->second._id, delay, group);
151 _eventMap.erase(itr);
152 itr = _eventMap.begin();
153 continue;
154 }
155
156 ++itr;
157 }
158}
TimePoint _time
Definition EventMap.h:258
void ScheduleEvent(EventId eventId, Milliseconds time, GroupIndex group=0u, PhaseIndex phase=0u)
Definition EventMap.cpp:48

References _eventMap, _time, and ScheduleEvent().

Referenced by boss_faction_championsAI::EventMapGCD().

◆ Empty()

◆ ExecuteEvent()

EventMap::EventId EventMap::ExecuteEvent ( )
87{
88 while (!Empty())
89 {
90 auto const& itr = _eventMap.begin();
91
92 if (itr->first > _time)
93 return 0;
94 else if (_phaseMask && itr->second._phaseMask && !(itr->second._phaseMask & _phaseMask))
95 _eventMap.erase(itr);
96 else
97 {
98 auto eventId = itr->second._id;
99 _lastEvent = itr->second;
100 _eventMap.erase(itr);
101 return eventId;
102 }
103 }
104
105 return 0;
106}
Event _lastEvent
Definition EventMap.h:274

References _eventMap, _lastEvent, _phaseMask, _time, and Empty().

Referenced by BattlegroundAB::PostUpdateImpl(), BattlegroundDS::PostUpdateImpl(), BattlegroundEY::PostUpdateImpl(), BattlegroundWS::PostUpdateImpl(), instance_blackwing_lair::instance_blackwing_lair_InstanceMapScript::Update(), instance_sunken_temple::instance_sunken_temple_InstanceMapScript::Update(), instance_old_hillsbrad::instance_old_hillsbrad_InstanceMapScript::Update(), instance_naxxramas::Update(), instance_ulduar::instance_ulduar_InstanceMapScript::Update(), go_bear_trap::go_bear_trapAI::UpdateAI(), go_gilded_brazier::go_gilded_brazierAI::UpdateAI(), go_bells::go_bellsAI::UpdateAI(), boss_sartharion_dragonAI::UpdateAI(), boss_ambassador_flamelash::boss_ambassador_flamelashAI::UpdateAI(), boss_doomrel::boss_doomrelAI::UpdateAI(), npc_blackhand_incarcerator::npc_blackhand_incarceratorAI::UpdateAI(), npc_vaelastrasz_the_red::npc_vaelastrasz_the_redAI::UpdateAI(), go_suppression_device::go_suppression_deviceAI::UpdateAI(), boss_vaelastrasz::boss_vaelAI::UpdateAI(), boss_ragnaros::boss_ragnarosAI::UpdateAI(), boss_kirtonos_the_herald::boss_kirtonos_the_heraldAI::UpdateAI(), npc_cameron::UpdateAI(), npc_supervisor_raelen::UpdateAI(), npc_eastvale_peasent::UpdateAI(), npc_partygoer_pather::UpdateAI(), npc_partygoer::UpdateAI(), npc_sentinel_leader::UpdateAI(), npc_sentinel_infiltrator::UpdateAI(), npc_lady_sylvanas_windrunner::npc_lady_sylvanas_windrunnerAI::UpdateAI(), npc_varian_wrynn::npc_varian_wrynnAI::UpdateAI(), npc_jaina_proudmoore_bfu::npc_jaina_proudmoore_bfuAI::UpdateAI(), boss_blight_worm::boss_blight_wormAI::UpdateAI(), npc_thrall_bfu::npc_thrall_bfuAI::UpdateAI(), npc_lady_sylvanas_windrunner_bfu::npc_lady_sylvanas_windrunner_bfuAI::UpdateAI(), npc_zulian_prowler::npc_zulian_prowlerAI::UpdateAI(), npc_coren_direbrew::UpdateAI(), npc_arthas::npc_arthasAI::UpdateAI(), npc_stillpine_capitive::npc_stillpine_capitiveAI::UpdateAI(), npc_rabid_thistle_bear::npc_rabid_thistle_bearAI::UpdateAI(), npc_tharnarian::npc_tharnarianAI::UpdateAI(), npc_tiger_matriarch::npc_tiger_matriarchAI::UpdateAI(), boss_sartharion::boss_sartharionAI::UpdateAI(), npc_baltharus_the_warborn_clone::npc_baltharus_the_warborn_cloneAI::UpdateAI(), npc_xerestrasza::npc_xerestraszaAI::UpdateAI(), boss_halion::boss_halionAI::UpdateAI(), boss_twilight_halion::boss_twilight_halionAI::UpdateAI(), npc_halion_controller::npc_halion_controllerAI::UpdateAI(), boss_trollgore::boss_trollgoreAI::UpdateAI(), boss_moorabi::boss_moorabiAI::UpdateAI(), npc_blood_queen_lana_thel::npc_blood_queen_lana_thelAI::UpdateAI(), npc_kinetic_bomb::npc_kinetic_bombAI::UpdateAI(), npc_high_overlord_saurfang_icc::npc_high_overlord_saurfangAI::UpdateAI(), npc_muradin_bronzebeard_icc::npc_muradin_bronzebeard_iccAI::UpdateAI(), npc_high_overlord_saurfang_igb::npc_high_overlord_saurfang_igbAI::UpdateAI(), npc_muradin_bronzebeard_igb::npc_muradin_bronzebeard_igbAI::UpdateAI(), npc_gunship_boarding_leader::npc_gunship_boarding_leaderAI::UpdateAI(), npc_spinestalker::npc_spinestalkerAI::UpdateAI(), npc_rimefang::npc_rimefangAI::UpdateAI(), npc_sindragosa_trash::npc_sindragosa_trashAI::UpdateAI(), npc_tirion_fordring_tft::npc_tirion_fordringAI::UpdateAI(), npc_shambling_horror_icc::npc_shambling_horror_iccAI::UpdateAI(), npc_raging_spirit::npc_raging_spiritAI::UpdateAI(), npc_valkyr_shadowguard::npc_valkyr_shadowguardAI::UpdateAI(), npc_strangulate_vehicle::npc_strangulate_vehicleAI::UpdateAI(), npc_terenas_menethil::npc_terenas_menethilAI::UpdateAI(), npc_spirit_warden::npc_spirit_wardenAI::UpdateAI(), boss_valithria_dreamwalker::boss_valithria_dreamwalkerAI::UpdateAI(), npc_the_lich_king_controller::npc_the_lich_king_controllerAI::UpdateAI(), npc_risen_archmage::npc_risen_archmageAI::UpdateAI(), npc_valithria_cloud::npc_valithria_cloudAI::UpdateAI(), npc_blazing_skeleton::npc_blazing_skeletonAI::UpdateAI(), npc_gluttonous_abomination::npc_gluttonous_abominationAI::UpdateAI(), npc_highlord_tirion_fordring_lh::npc_highlord_tirion_fordringAI::UpdateAI(), npc_rotting_frost_giant::npc_rotting_frost_giantAI::UpdateAI(), npc_frost_freeze_trap::npc_frost_freeze_trapAI::UpdateAI(), npc_crok_scourgebane::npc_crok_scourgebaneAI::UpdateAI(), npc_frostwing_vrykul::npc_frostwing_vrykulAI::UpdateAI(), npc_arthas_teleport_visual::npc_arthas_teleport_visualAI::UpdateAI(), npc_ioc_gunship_captain::npc_ioc_gunship_captainAI::UpdateAI(), npc_naxxramas_trigger::UpdateAI(), npc_spark_of_ionar::UpdateAI(), npc_enslaved_proto_drake::UpdateAI(), boss_svala::boss_svalaAI::UpdateAI(), npc_beryl_sorcerer::npc_beryl_sorcererAI::UpdateAI(), npc_captured_beryl_sorcerer::npc_captured_beryl_sorcererAI::UpdateAI(), npc_hidden_cultist::npc_hidden_cultistAI::UpdateAI(), npc_bloodmage_laurith::npc_bloodmage_laurithAI::UpdateAI(), npc_thassarian::npc_thassarianAI::UpdateAI(), npc_thassarian2::npc_thassarian2AI::UpdateAI(), npc_counselor_talbot::npc_counselor_talbotAI::UpdateAI(), npc_shandy_dalaran::npc_shandy_dalaranAI::UpdateAI(), npc_commander_eligor_dawnbringer::npc_commander_eligor_dawnbringerAI::UpdateAI(), npc_torturer_lecraft::npc_torturer_lecraftAI::UpdateAI(), npc_amberpine_woodsman::npc_amberpine_woodsmanAI::UpdateAI(), npc_venture_co_straggler::npc_venture_co_stragglerAI::UpdateAI(), npc_lake_frog::npc_lake_frogAI::UpdateAI(), npc_crusade_recruit::npc_crusade_recruitAI::UpdateAI(), npc_frozen_core::UpdateAI(), npc_ahune_bunny::UpdateAI(), npc_earthen_ring_flamecaller::UpdateAI(), npc_millhouse_manastorm::npc_millhouse_manastormAI::UpdateAI(), npc_simon_bunny::npc_simon_bunnyAI::UpdateAI(), npc_magister_aledis::UpdateAI(), npc_pet_shaman_earth_elemental::UpdateAI(), npc_pet_shaman_fire_elemental::UpdateAI(), go_l70_etc_music::go_l70_etc_musicAI::UpdateAI(), go_brewfest_music::go_brewfest_musicAI::UpdateAI(), go_pirate_day_music::go_pirate_day_musicAI::UpdateAI(), go_darkmoon_faire_music::go_darkmoon_faire_musicAI::UpdateAI(), go_midsummer_music::go_midsummer_musicAI::UpdateAI(), npc_thrall_old_hillsbrad::npc_thrall_old_hillsbradAI::UpdateEscortAI(), npc_magwin::npc_magwinAI::UpdateEscortAI(), npc_onyx_flamecaller::npc_onyx_flamecallerAI::UpdateEscortAI(), and npc_jenny::UpdateFollowerAI().

◆ GetPhaseMask()

◆ GetTimeUntilEvent()

Milliseconds EventMap::GetTimeUntilEvent ( EventId  eventId) const
201{
202 for (auto const& [time, event] : _eventMap)
203 if (eventId == event._id)
204 return std::chrono::duration_cast<Milliseconds>(time - _time);
205
206 return Milliseconds::max();
207}
std::chrono::milliseconds Milliseconds
Milliseconds shorthand typedef.
Definition Duration.h:27
STL namespace.

References _eventMap, and _time.

Referenced by HasTimeUntilEvent().

◆ HasTimeUntilEvent()

bool EventMap::HasTimeUntilEvent ( EventId  eventId) const
210{
211 return GetTimeUntilEvent(eventId) != Milliseconds::max();
212}
Milliseconds GetTimeUntilEvent(EventId eventId) const
Definition EventMap.cpp:200

References GetTimeUntilEvent().

Referenced by BattlegroundWS::GetAssaultSpellId(), boss_twilight_halion::boss_twilight_halionAI::KilledUnit(), and instance_blackwing_lair::instance_blackwing_lair_InstanceMapScript::OnUnitDeath().

◆ IsInPhase()

bool EventMap::IsInPhase ( PhaseIndex  phase) const
196{
197 return phase <= sizeof(PhaseIndex) * 8 && (!phase || _phaseMask & PhaseMask(1u << (phase - 1u)));
198}
uint8 PhaseIndex
Definition EventMap.h:30

References _phaseMask.

Referenced by npc_coren_direbrew::DamageTaken(), npc_coren_direbrew::MoveInLineOfSight(), and npc_coren_direbrew::UpdateAI().

◆ RemovePhase()

void EventMap::RemovePhase ( PhaseIndex  phase)
43{
44 if (phase && phase <= sizeof(PhaseMask) * 8)
45 _phaseMask &= PhaseMask(~(1u << (phase - 1u)));
46}

References _phaseMask.

◆ Repeat() [1/2]

void EventMap::Repeat ( Milliseconds  minTime,
Milliseconds  maxTime 
)
82{
83 Repeat(randtime(minTime, maxTime));
84}
Milliseconds randtime(Milliseconds min, Milliseconds max)
Definition Random.cpp:64
void Repeat(Milliseconds time)
Definition EventMap.cpp:76

References randtime(), and Repeat().

◆ Repeat() [2/2]

◆ RescheduleEvent() [1/2]

void EventMap::RescheduleEvent ( EventId  eventId,
Milliseconds  minTime,
Milliseconds  maxTime,
GroupIndex  group = 0u,
PhaseIndex  phase = 0u 
)
65{
66 CancelEvent(eventId);
67 ScheduleEvent(eventId, randtime(minTime, maxTime), group, phase);
68}
void CancelEvent(EventId eventId)
Definition EventMap.cpp:160

References CancelEvent(), randtime(), and ScheduleEvent().

◆ RescheduleEvent() [2/2]

◆ Reset()

void EventMap::Reset ( )
22{
23 _eventMap.clear();
24 _time = TimePoint::min();
25 _phaseMask = 0;
26}

References _eventMap, _phaseMask, and _time.

Referenced by npc_terenas_menethil::npc_terenas_menethilAI::DamageTaken(), npc_magister_aledis::DamageTaken(), boss_kirtonos_the_herald::boss_kirtonos_the_heraldAI::DoAction(), npc_halion_controller::npc_halion_controllerAI::DoAction(), npc_strangulate_vehicle::npc_strangulate_vehicleAI::DoAction(), npc_terenas_menethil::npc_terenas_menethilAI::DoAction(), boss_valithria_dreamwalker::boss_valithria_dreamwalkerAI::DoAction(), npc_the_lich_king_controller::npc_the_lich_king_controllerAI::DoAction(), npc_frozen_core::DoAction(), npc_ahune_bunny::DoAction(), npc_spark_of_ionar::DoAction(), BattlegroundAB::EndBattleground(), npc_valkyr_shadowguard::npc_valkyr_shadowguardAI::GoSiphon(), boss_valithria_dreamwalker::boss_valithria_dreamwalkerAI::HealReceived(), BattlegroundAB::Init(), BattlegroundEY::Init(), BattlegroundWS::Init(), instance_old_hillsbrad::instance_old_hillsbrad_InstanceMapScript::Initialize(), instance_ulduar::instance_ulduar_InstanceMapScript::Initialize(), npc_millhouse_manastorm::npc_millhouse_manastormAI::InitializeAI(), instance_naxxramas::instance_naxxramas(), npc_strangulate_vehicle::npc_strangulate_vehicleAI::IsSummonedBy(), boss_ambassador_flamelash::boss_ambassador_flamelashAI::JustDied(), boss_ragnaros::boss_ragnarosAI::JustDied(), npc_coren_direbrew::JustDied(), npc_spinestalker::npc_spinestalkerAI::JustDied(), npc_rimefang::npc_rimefangAI::JustDied(), npc_rotting_frost_giant::npc_rotting_frost_giantAI::JustDied(), npc_thrall_old_hillsbrad::npc_thrall_old_hillsbradAI::JustEngagedWith(), npc_tiger_matriarch::npc_tiger_matriarchAI::JustEngagedWith(), npc_baltharus_the_warborn_clone::npc_baltharus_the_warborn_cloneAI::JustEngagedWith(), npc_onyx_flamecaller::npc_onyx_flamecallerAI::JustEngagedWith(), boss_twilight_halion::boss_twilight_halionAI::JustEngagedWith(), npc_gunship_boarding_leader::npc_gunship_boarding_leaderAI::JustEngagedWith(), npc_pet_shaman_earth_elemental::JustEngagedWith(), npc_pet_shaman_fire_elemental::JustEngagedWith(), npc_valkyr_shadowguard::npc_valkyr_shadowguardAI::MovementInform(), npc_high_overlord_saurfang_igb::npc_high_overlord_saurfang_igbAI::npc_high_overlord_saurfang_igbAI(), npc_muradin_bronzebeard_igb::npc_muradin_bronzebeard_igbAI::npc_muradin_bronzebeard_igbAI(), npc_valkyr_shadowguard::npc_valkyr_shadowguardAI::npc_valkyr_shadowguardAI(), boss_ambassador_flamelash::boss_ambassador_flamelashAI::Reset(), boss_vaelastrasz::boss_vaelAI::Reset(), boss_ragnaros::boss_ragnarosAI::Reset(), npc_lady_sylvanas_windrunner::npc_lady_sylvanas_windrunnerAI::Reset(), npc_coren_direbrew::Reset(), npc_arthas::npc_arthasAI::Reset(), npc_thrall_old_hillsbrad::npc_thrall_old_hillsbradAI::Reset(), npc_magwin::npc_magwinAI::Reset(), npc_stillpine_capitive::npc_stillpine_capitiveAI::Reset(), npc_tharnarian::npc_tharnarianAI::Reset(), boss_sartharion::boss_sartharionAI::Reset(), npc_xerestrasza::npc_xerestraszaAI::Reset(), boss_halion::boss_halionAI::Reset(), boss_twilight_halion::boss_twilight_halionAI::Reset(), npc_halion_controller::npc_halion_controllerAI::Reset(), boss_trollgore::boss_trollgoreAI::Reset(), boss_moorabi::boss_moorabiAI::Reset(), npc_blood_queen_lana_thel::npc_blood_queen_lana_thelAI::Reset(), npc_kinetic_bomb::npc_kinetic_bombAI::Reset(), npc_high_overlord_saurfang_icc::npc_high_overlord_saurfangAI::Reset(), npc_muradin_bronzebeard_icc::npc_muradin_bronzebeard_iccAI::Reset(), npc_spinestalker::npc_spinestalkerAI::Reset(), npc_rimefang::npc_rimefangAI::Reset(), npc_sindragosa_trash::npc_sindragosa_trashAI::Reset(), npc_tirion_fordring_tft::npc_tirion_fordringAI::Reset(), npc_shambling_horror_icc::npc_shambling_horror_iccAI::Reset(), npc_raging_spirit::npc_raging_spiritAI::Reset(), npc_spirit_warden::npc_spirit_wardenAI::Reset(), boss_valithria_dreamwalker::boss_valithria_dreamwalkerAI::Reset(), npc_the_lich_king_controller::npc_the_lich_king_controllerAI::Reset(), npc_risen_archmage::npc_risen_archmageAI::Reset(), npc_valithria_cloud::npc_valithria_cloudAI::Reset(), npc_blazing_skeleton::npc_blazing_skeletonAI::Reset(), npc_gluttonous_abomination::npc_gluttonous_abominationAI::Reset(), npc_highlord_tirion_fordring_lh::npc_highlord_tirion_fordringAI::Reset(), npc_rotting_frost_giant::npc_rotting_frost_giantAI::Reset(), npc_crok_scourgebane::npc_crok_scourgebaneAI::Reset(), npc_frostwing_vrykul::npc_frostwing_vrykulAI::Reset(), npc_arthas_teleport_visual::npc_arthas_teleport_visualAI::Reset(), npc_naxxramas_trigger::Reset(), npc_enslaved_proto_drake::Reset(), boss_svala::boss_svalaAI::Reset(), npc_bloodmage_laurith::npc_bloodmage_laurithAI::Reset(), npc_shandy_dalaran::npc_shandy_dalaranAI::Reset(), npc_torturer_lecraft::npc_torturer_lecraftAI::Reset(), npc_earthen_ring_flamecaller::Reset(), boss_wrath_scryer_soccothrates::Reset(), npc_shandy_dalaran::npc_shandy_dalaranAI::SetData(), npc_cameron::sOnGameEvent(), npc_rabid_thistle_bear::npc_rabid_thistle_bearAI::SpellHit(), npc_simon_bunny::npc_simon_bunnyAI::StartGame(), npc_blood_queen_lana_thel::npc_blood_queen_lana_thelAI::UpdateAI(), npc_terenas_menethil::npc_terenas_menethilAI::UpdateAI(), npc_shandy_dalaran::npc_shandy_dalaranAI::UpdateAI(), and npc_ahune_bunny::UpdateAI().

◆ ScheduleEvent() [1/2]

void EventMap::ScheduleEvent ( EventId  eventId,
Milliseconds  minTime,
Milliseconds  maxTime,
GroupIndex  group = 0u,
PhaseIndex  phase = 0u 
)
60{
61 ScheduleEvent(eventId, randtime(minTime, maxTime), group, phase);
62}

References randtime(), and ScheduleEvent().

◆ ScheduleEvent() [2/2]

void EventMap::ScheduleEvent ( EventId  eventId,
Milliseconds  time,
GroupIndex  group = 0u,
PhaseIndex  phase = 0u 
)
49{
50 if (group > sizeof(GroupMask) * 8)
51 return;
52
53 if (phase > sizeof(PhaseMask) * 8)
54 return;
55
56 _eventMap.emplace(_time + time, Event(eventId, group, phase));
57}
Event
Definition boss_kelthuzad.cpp:77

References _eventMap, and _time.

Referenced by go_suppression_device::go_suppression_deviceAI::Activate(), boss_vaelastrasz::boss_vaelAI::BeginSpeech(), npc_commander_eligor_dawnbringer::npc_commander_eligor_dawnbringerAI::ChangeImage(), instance_old_hillsbrad::instance_old_hillsbrad_InstanceMapScript::CleanupInstance(), npc_terenas_menethil::npc_terenas_menethilAI::DamageTaken(), npc_crok_scourgebane::npc_crok_scourgebaneAI::DamageTaken(), npc_magister_aledis::DamageTaken(), DelayEventsToMax(), go_suppression_device::go_suppression_deviceAI::DoAction(), boss_ragnaros::boss_ragnarosAI::DoAction(), boss_kirtonos_the_herald::boss_kirtonos_the_heraldAI::DoAction(), npc_coren_direbrew::DoAction(), npc_xerestrasza::npc_xerestraszaAI::DoAction(), npc_halion_controller::npc_halion_controllerAI::DoAction(), npc_high_overlord_saurfang_icc::npc_high_overlord_saurfangAI::DoAction(), npc_muradin_bronzebeard_icc::npc_muradin_bronzebeard_iccAI::DoAction(), npc_high_overlord_saurfang_igb::npc_high_overlord_saurfang_igbAI::DoAction(), npc_muradin_bronzebeard_igb::npc_muradin_bronzebeard_igbAI::DoAction(), npc_tirion_fordring_tft::npc_tirion_fordringAI::DoAction(), npc_terenas_menethil::npc_terenas_menethilAI::DoAction(), boss_valithria_dreamwalker::boss_valithria_dreamwalkerAI::DoAction(), npc_the_lich_king_controller::npc_the_lich_king_controllerAI::DoAction(), npc_frost_freeze_trap::npc_frost_freeze_trapAI::DoAction(), npc_crok_scourgebane::npc_crok_scourgebaneAI::DoAction(), npc_ioc_gunship_captain::npc_ioc_gunship_captainAI::DoAction(), npc_frozen_core::DoAction(), npc_ahune_bunny::DoAction(), npc_simon_bunny::npc_simon_bunnyAI::DoAction(), boss_ambassador_flamelash::boss_ambassador_flamelashAI::DoAction(), npc_arthas::npc_arthasAI::DoAction(), BattlegroundWS::EventPlayerCapturedFlag(), go_brewfest_music::go_brewfest_musicAI::go_brewfest_musicAI(), go_darkmoon_faire_music::go_darkmoon_faire_musicAI::go_darkmoon_faire_musicAI(), go_l70_etc_music::go_l70_etc_musicAI::go_l70_etc_musicAI(), go_midsummer_music::go_midsummer_musicAI::go_midsummer_musicAI(), go_pirate_day_music::go_pirate_day_musicAI::go_pirate_day_musicAI(), npc_valkyr_shadowguard::npc_valkyr_shadowguardAI::GoSiphon(), go_gilded_brazier::go_gilded_brazierAI::GossipHello(), npc_valkyr_shadowguard::npc_valkyr_shadowguardAI::HandleSpeedChangeIfNeeded(), boss_valithria_dreamwalker::boss_valithria_dreamwalkerAI::HealReceived(), npc_jenny::Initialize(), npc_captured_beryl_sorcerer::npc_captured_beryl_sorcererAI::Initialize(), go_bear_trap::go_bear_trapAI::Initialize(), go_suppression_device::go_suppression_deviceAI::InitializeAI(), npc_millhouse_manastorm::npc_millhouse_manastormAI::InitializeAI(), npc_strangulate_vehicle::npc_strangulate_vehicleAI::IsSummonedBy(), boss_ambassador_flamelash::boss_ambassador_flamelashAI::JustEngagedWith(), boss_doomrel::boss_doomrelAI::JustEngagedWith(), npc_blackhand_incarcerator::npc_blackhand_incarceratorAI::JustEngagedWith(), npc_sentinel_leader::JustEngagedWith(), npc_sentinel_infiltrator::JustEngagedWith(), npc_lady_sylvanas_windrunner::npc_lady_sylvanas_windrunnerAI::JustEngagedWith(), npc_thrall_old_hillsbrad::npc_thrall_old_hillsbradAI::JustEngagedWith(), npc_tiger_matriarch::npc_tiger_matriarchAI::JustEngagedWith(), npc_baltharus_the_warborn_clone::npc_baltharus_the_warborn_cloneAI::JustEngagedWith(), npc_onyx_flamecaller::npc_onyx_flamecallerAI::JustEngagedWith(), boss_twilight_halion::boss_twilight_halionAI::JustEngagedWith(), npc_high_overlord_saurfang_igb::npc_high_overlord_saurfang_igbAI::JustEngagedWith(), npc_muradin_bronzebeard_igb::npc_muradin_bronzebeard_igbAI::JustEngagedWith(), npc_gunship_boarding_leader::npc_gunship_boarding_leaderAI::JustEngagedWith(), npc_counselor_talbot::npc_counselor_talbotAI::JustEngagedWith(), npc_pet_shaman_earth_elemental::JustEngagedWith(), npc_pet_shaman_fire_elemental::JustEngagedWith(), boss_sartharion::boss_sartharionAI::JustEngagedWith(), boss_halion::boss_halionAI::JustEngagedWith(), npc_beryl_sorcerer::npc_beryl_sorcererAI::JustEngagedWith(), npc_torturer_lecraft::npc_torturer_lecraftAI::JustEngagedWith(), boss_twilight_halion::boss_twilight_halionAI::KilledUnit(), npc_coren_direbrew::MoveInLineOfSight(), npc_blood_queen_lana_thel::npc_blood_queen_lana_thelAI::MoveInLineOfSight(), npc_jenny::MoveInLineOfSight(), boss_kirtonos_the_herald::boss_kirtonos_the_heraldAI::MovementInform(), npc_sentinel_leader::MovementInform(), npc_sentinel_infiltrator::MovementInform(), npc_stillpine_capitive::npc_stillpine_capitiveAI::MovementInform(), npc_high_overlord_saurfang_icc::npc_high_overlord_saurfangAI::MovementInform(), npc_muradin_bronzebeard_icc::npc_muradin_bronzebeard_iccAI::MovementInform(), npc_tirion_fordring_tft::npc_tirion_fordringAI::MovementInform(), npc_valkyr_shadowguard::npc_valkyr_shadowguardAI::MovementInform(), npc_commander_eligor_dawnbringer::npc_commander_eligor_dawnbringerAI::MovementInform(), npc_thassarian2::npc_thassarian2AI::MovementInform(), npc_valkyr_shadowguard::npc_valkyr_shadowguardAI::npc_valkyr_shadowguardAI(), instance_naxxramas::OnPlayerEnter(), instance_blackwing_lair::instance_blackwing_lair_InstanceMapScript::OnUnitDeath(), npc_cameron::PathEndReached(), npc_eastvale_peasent::PathEndReached(), npc_partygoer_pather::PathEndReached(), BattlegroundAB::PostUpdateImpl(), BattlegroundDS::PostUpdateImpl(), BattlegroundEY::PostUpdateImpl(), BattlegroundWS::PostUpdateImpl(), npc_hidden_cultist::npc_hidden_cultistAI::PreScript(), npc_lake_frog::npc_lake_frogAI::ReceiveEmote(), RescheduleEvent(), RescheduleEvent(), npc_supervisor_raelen::Reset(), npc_partygoer_pather::Reset(), npc_partygoer::Reset(), npc_varian_wrynn::npc_varian_wrynnAI::Reset(), npc_jaina_proudmoore_bfu::npc_jaina_proudmoore_bfuAI::Reset(), boss_blight_worm::boss_blight_wormAI::Reset(), npc_thrall_bfu::npc_thrall_bfuAI::Reset(), npc_lady_sylvanas_windrunner_bfu::npc_lady_sylvanas_windrunner_bfuAI::Reset(), npc_zulian_prowler::npc_zulian_prowlerAI::Reset(), boss_trollgore::boss_trollgoreAI::Reset(), boss_moorabi::boss_moorabiAI::Reset(), npc_spinestalker::npc_spinestalkerAI::Reset(), npc_rimefang::npc_rimefangAI::Reset(), npc_sindragosa_trash::npc_sindragosa_trashAI::Reset(), npc_shambling_horror_icc::npc_shambling_horror_iccAI::Reset(), npc_raging_spirit::npc_raging_spiritAI::Reset(), npc_spirit_warden::npc_spirit_wardenAI::Reset(), npc_risen_archmage::npc_risen_archmageAI::Reset(), npc_valithria_cloud::npc_valithria_cloudAI::Reset(), npc_blazing_skeleton::npc_blazing_skeletonAI::Reset(), npc_gluttonous_abomination::npc_gluttonous_abominationAI::Reset(), npc_rotting_frost_giant::npc_rotting_frost_giantAI::Reset(), npc_crok_scourgebane::npc_crok_scourgebaneAI::Reset(), npc_frostwing_vrykul::npc_frostwing_vrykulAI::Reset(), npc_arthas_teleport_visual::npc_arthas_teleport_visualAI::Reset(), npc_naxxramas_trigger::Reset(), npc_spark_of_ionar::Reset(), npc_enslaved_proto_drake::Reset(), npc_thassarian::npc_thassarianAI::Reset(), npc_commander_eligor_dawnbringer::npc_commander_eligor_dawnbringerAI::Reset(), npc_amberpine_woodsman::npc_amberpine_woodsmanAI::Reset(), ScheduleEvent(), instance_naxxramas::SetBossState(), instance_blackwing_lair::instance_blackwing_lair_InstanceMapScript::SetBossState(), boss_svala::boss_svalaAI::SetData(), npc_blackhand_incarcerator::npc_blackhand_incarceratorAI::SetData(), instance_blackwing_lair::instance_blackwing_lair_InstanceMapScript::SetData(), instance_sunken_temple::instance_sunken_temple_InstanceMapScript::SetData(), instance_old_hillsbrad::instance_old_hillsbrad_InstanceMapScript::SetData(), npc_high_overlord_saurfang_igb::npc_high_overlord_saurfang_igbAI::SetData(), npc_muradin_bronzebeard_igb::npc_muradin_bronzebeard_igbAI::SetData(), npc_highlord_tirion_fordring_lh::npc_highlord_tirion_fordringAI::SetData(), npc_shandy_dalaran::npc_shandy_dalaranAI::SetData(), npc_simon_bunny::npc_simon_bunnyAI::SetData(), npc_supervisor_raelen::SetData(), npc_thassarian2::npc_thassarian2AI::SetData(), npc_tharnarian::npc_tharnarianAI::SetGUID(), boss_ragnaros::boss_ragnarosAI::SetGUID(), npc_lady_sylvanas_windrunner::npc_lady_sylvanas_windrunnerAI::SetGUID(), npc_bloodmage_laurith::npc_bloodmage_laurithAI::SetGUID(), npc_high_overlord_saurfang_igb::npc_high_overlord_saurfang_igbAI::sGossipSelect(), npc_muradin_bronzebeard_igb::npc_muradin_bronzebeard_igbAI::sGossipSelect(), npc_crusade_recruit::npc_crusade_recruitAI::sGossipSelect(), npc_cameron::sOnGameEvent(), npc_rabid_thistle_bear::npc_rabid_thistle_bearAI::SpellHit(), npc_earthen_ring_flamecaller::SpellHit(), npc_venture_co_straggler::npc_venture_co_stragglerAI::SpellHit(), npc_beryl_sorcerer::npc_beryl_sorcererAI::SpellHit(), npc_magwin::npc_magwinAI::sQuestAccept(), npc_magister_aledis::StartFight(), npc_simon_bunny::npc_simon_bunnyAI::StartGame(), BattlegroundAB::StartingEventOpenDoors(), BattlegroundDS::StartingEventOpenDoors(), BattlegroundEY::StartingEventOpenDoors(), BattlegroundWS::StartingEventOpenDoors(), npc_coren_direbrew::SummonedCreatureDies(), boss_sartharion::boss_sartharionAI::SummonLavaWaves(), boss_ambassador_flamelash::boss_ambassador_flamelashAI::SummonSpirits(), instance_blackwing_lair::instance_blackwing_lair_InstanceMapScript::Update(), instance_naxxramas::Update(), go_bear_trap::go_bear_trapAI::UpdateAI(), go_gilded_brazier::go_gilded_brazierAI::UpdateAI(), go_bells::go_bellsAI::UpdateAI(), boss_ambassador_flamelash::boss_ambassador_flamelashAI::UpdateAI(), boss_doomrel::boss_doomrelAI::UpdateAI(), npc_blackhand_incarcerator::npc_blackhand_incarceratorAI::UpdateAI(), npc_vaelastrasz_the_red::npc_vaelastrasz_the_redAI::UpdateAI(), go_suppression_device::go_suppression_deviceAI::UpdateAI(), boss_vaelastrasz::boss_vaelAI::UpdateAI(), boss_ragnaros::boss_ragnarosAI::UpdateAI(), npc_supervisor_raelen::UpdateAI(), npc_eastvale_peasent::UpdateAI(), npc_partygoer_pather::UpdateAI(), npc_partygoer::UpdateAI(), npc_sentinel_leader::UpdateAI(), npc_sentinel_infiltrator::UpdateAI(), npc_lady_sylvanas_windrunner::npc_lady_sylvanas_windrunnerAI::UpdateAI(), npc_varian_wrynn::npc_varian_wrynnAI::UpdateAI(), npc_jaina_proudmoore_bfu::npc_jaina_proudmoore_bfuAI::UpdateAI(), boss_blight_worm::boss_blight_wormAI::UpdateAI(), npc_thrall_bfu::npc_thrall_bfuAI::UpdateAI(), npc_lady_sylvanas_windrunner_bfu::npc_lady_sylvanas_windrunner_bfuAI::UpdateAI(), npc_coren_direbrew::UpdateAI(), npc_rabid_thistle_bear::npc_rabid_thistle_bearAI::UpdateAI(), npc_tharnarian::npc_tharnarianAI::UpdateAI(), npc_tiger_matriarch::npc_tiger_matriarchAI::UpdateAI(), npc_baltharus_the_warborn_clone::npc_baltharus_the_warborn_cloneAI::UpdateAI(), boss_twilight_halion::boss_twilight_halionAI::UpdateAI(), npc_halion_controller::npc_halion_controllerAI::UpdateAI(), boss_trollgore::boss_trollgoreAI::UpdateAI(), boss_moorabi::boss_moorabiAI::UpdateAI(), npc_high_overlord_saurfang_igb::npc_high_overlord_saurfang_igbAI::UpdateAI(), npc_muradin_bronzebeard_igb::npc_muradin_bronzebeard_igbAI::UpdateAI(), npc_gunship_boarding_leader::npc_gunship_boarding_leaderAI::UpdateAI(), npc_spinestalker::npc_spinestalkerAI::UpdateAI(), npc_rimefang::npc_rimefangAI::UpdateAI(), npc_sindragosa_trash::npc_sindragosa_trashAI::UpdateAI(), npc_tirion_fordring_tft::npc_tirion_fordringAI::UpdateAI(), npc_shambling_horror_icc::npc_shambling_horror_iccAI::UpdateAI(), npc_raging_spirit::npc_raging_spiritAI::UpdateAI(), npc_valkyr_shadowguard::npc_valkyr_shadowguardAI::UpdateAI(), npc_terenas_menethil::npc_terenas_menethilAI::UpdateAI(), npc_spirit_warden::npc_spirit_wardenAI::UpdateAI(), boss_valithria_dreamwalker::boss_valithria_dreamwalkerAI::UpdateAI(), npc_risen_archmage::npc_risen_archmageAI::UpdateAI(), npc_valithria_cloud::npc_valithria_cloudAI::UpdateAI(), npc_blazing_skeleton::npc_blazing_skeletonAI::UpdateAI(), npc_gluttonous_abomination::npc_gluttonous_abominationAI::UpdateAI(), npc_rotting_frost_giant::npc_rotting_frost_giantAI::UpdateAI(), npc_frost_freeze_trap::npc_frost_freeze_trapAI::UpdateAI(), npc_crok_scourgebane::npc_crok_scourgebaneAI::UpdateAI(), npc_frostwing_vrykul::npc_frostwing_vrykulAI::UpdateAI(), npc_arthas_teleport_visual::npc_arthas_teleport_visualAI::UpdateAI(), npc_ioc_gunship_captain::npc_ioc_gunship_captainAI::UpdateAI(), npc_enslaved_proto_drake::UpdateAI(), boss_svala::boss_svalaAI::UpdateAI(), npc_beryl_sorcerer::npc_beryl_sorcererAI::UpdateAI(), npc_captured_beryl_sorcerer::npc_captured_beryl_sorcererAI::UpdateAI(), npc_hidden_cultist::npc_hidden_cultistAI::UpdateAI(), npc_bloodmage_laurith::npc_bloodmage_laurithAI::UpdateAI(), npc_thassarian2::npc_thassarian2AI::UpdateAI(), npc_counselor_talbot::npc_counselor_talbotAI::UpdateAI(), npc_shandy_dalaran::npc_shandy_dalaranAI::UpdateAI(), npc_commander_eligor_dawnbringer::npc_commander_eligor_dawnbringerAI::UpdateAI(), npc_torturer_lecraft::npc_torturer_lecraftAI::UpdateAI(), npc_amberpine_woodsman::npc_amberpine_woodsmanAI::UpdateAI(), npc_venture_co_straggler::npc_venture_co_stragglerAI::UpdateAI(), npc_lake_frog::npc_lake_frogAI::UpdateAI(), npc_crusade_recruit::npc_crusade_recruitAI::UpdateAI(), npc_ahune_bunny::UpdateAI(), npc_earthen_ring_flamecaller::UpdateAI(), npc_millhouse_manastorm::npc_millhouse_manastormAI::UpdateAI(), npc_simon_bunny::npc_simon_bunnyAI::UpdateAI(), npc_magister_aledis::UpdateAI(), npc_pet_shaman_earth_elemental::UpdateAI(), npc_pet_shaman_fire_elemental::UpdateAI(), go_l70_etc_music::go_l70_etc_musicAI::UpdateAI(), go_brewfest_music::go_brewfest_musicAI::UpdateAI(), go_pirate_day_music::go_pirate_day_musicAI::UpdateAI(), go_darkmoon_faire_music::go_darkmoon_faire_musicAI::UpdateAI(), go_midsummer_music::go_midsummer_musicAI::UpdateAI(), npc_halion_controller::npc_halion_controllerAI::UpdateCorporeality(), npc_magwin::npc_magwinAI::UpdateEscortAI(), npc_onyx_flamecaller::npc_onyx_flamecallerAI::UpdateEscortAI(), npc_jenny::UpdateFollowerAI(), npc_arthas::npc_arthasAI::WaypointReached(), and npc_magwin::npc_magwinAI::WaypointReached().

◆ SetPhase()

◆ Update() [1/2]

void EventMap::Update ( Milliseconds  time)
inline
78 {
79 _time += time;
80 }

References _time.

◆ Update() [2/2]

void EventMap::Update ( uint32  time)
inline
68 {
69 Update(Milliseconds(time));
70 }
void Update(uint32 time)
Definition EventMap.h:67

References Update().

Referenced by BattlegroundAB::PostUpdateImpl(), BattlegroundDS::PostUpdateImpl(), BattlegroundEY::PostUpdateImpl(), BattlegroundWS::PostUpdateImpl(), instance_blackwing_lair::instance_blackwing_lair_InstanceMapScript::Update(), instance_sunken_temple::instance_sunken_temple_InstanceMapScript::Update(), instance_old_hillsbrad::instance_old_hillsbrad_InstanceMapScript::Update(), instance_naxxramas::Update(), instance_ulduar::instance_ulduar_InstanceMapScript::Update(), Update(), go_bear_trap::go_bear_trapAI::UpdateAI(), go_gilded_brazier::go_gilded_brazierAI::UpdateAI(), go_bells::go_bellsAI::UpdateAI(), boss_sartharion_dragonAI::UpdateAI(), boss_ambassador_flamelash::boss_ambassador_flamelashAI::UpdateAI(), boss_doomrel::boss_doomrelAI::UpdateAI(), npc_blackhand_incarcerator::npc_blackhand_incarceratorAI::UpdateAI(), npc_vaelastrasz_the_red::npc_vaelastrasz_the_redAI::UpdateAI(), go_suppression_device::go_suppression_deviceAI::UpdateAI(), boss_vaelastrasz::boss_vaelAI::UpdateAI(), boss_ragnaros::boss_ragnarosAI::UpdateAI(), boss_kirtonos_the_herald::boss_kirtonos_the_heraldAI::UpdateAI(), npc_cameron::UpdateAI(), npc_supervisor_raelen::UpdateAI(), npc_eastvale_peasent::UpdateAI(), npc_partygoer_pather::UpdateAI(), npc_partygoer::UpdateAI(), npc_sentinel_leader::UpdateAI(), npc_sentinel_infiltrator::UpdateAI(), npc_lady_sylvanas_windrunner::npc_lady_sylvanas_windrunnerAI::UpdateAI(), npc_varian_wrynn::npc_varian_wrynnAI::UpdateAI(), npc_jaina_proudmoore_bfu::npc_jaina_proudmoore_bfuAI::UpdateAI(), boss_blight_worm::boss_blight_wormAI::UpdateAI(), npc_thrall_bfu::npc_thrall_bfuAI::UpdateAI(), npc_lady_sylvanas_windrunner_bfu::npc_lady_sylvanas_windrunner_bfuAI::UpdateAI(), npc_zulian_prowler::npc_zulian_prowlerAI::UpdateAI(), npc_coren_direbrew::UpdateAI(), npc_arthas::npc_arthasAI::UpdateAI(), npc_stillpine_capitive::npc_stillpine_capitiveAI::UpdateAI(), npc_rabid_thistle_bear::npc_rabid_thistle_bearAI::UpdateAI(), npc_tharnarian::npc_tharnarianAI::UpdateAI(), npc_tiger_matriarch::npc_tiger_matriarchAI::UpdateAI(), boss_sartharion::boss_sartharionAI::UpdateAI(), npc_baltharus_the_warborn_clone::npc_baltharus_the_warborn_cloneAI::UpdateAI(), npc_xerestrasza::npc_xerestraszaAI::UpdateAI(), boss_halion::boss_halionAI::UpdateAI(), boss_twilight_halion::boss_twilight_halionAI::UpdateAI(), npc_halion_controller::npc_halion_controllerAI::UpdateAI(), boss_trollgore::boss_trollgoreAI::UpdateAI(), boss_moorabi::boss_moorabiAI::UpdateAI(), npc_blood_queen_lana_thel::npc_blood_queen_lana_thelAI::UpdateAI(), npc_kinetic_bomb::npc_kinetic_bombAI::UpdateAI(), npc_high_overlord_saurfang_icc::npc_high_overlord_saurfangAI::UpdateAI(), npc_muradin_bronzebeard_icc::npc_muradin_bronzebeard_iccAI::UpdateAI(), npc_high_overlord_saurfang_igb::npc_high_overlord_saurfang_igbAI::UpdateAI(), npc_muradin_bronzebeard_igb::npc_muradin_bronzebeard_igbAI::UpdateAI(), npc_gunship_boarding_leader::npc_gunship_boarding_leaderAI::UpdateAI(), npc_gunship_boarding_add::npc_gunship_boarding_add_realAI::UpdateAI(), npc_spinestalker::npc_spinestalkerAI::UpdateAI(), npc_rimefang::npc_rimefangAI::UpdateAI(), npc_sindragosa_trash::npc_sindragosa_trashAI::UpdateAI(), npc_tirion_fordring_tft::npc_tirion_fordringAI::UpdateAI(), npc_shambling_horror_icc::npc_shambling_horror_iccAI::UpdateAI(), npc_raging_spirit::npc_raging_spiritAI::UpdateAI(), npc_valkyr_shadowguard::npc_valkyr_shadowguardAI::UpdateAI(), npc_strangulate_vehicle::npc_strangulate_vehicleAI::UpdateAI(), npc_terenas_menethil::npc_terenas_menethilAI::UpdateAI(), npc_spirit_warden::npc_spirit_wardenAI::UpdateAI(), boss_valithria_dreamwalker::boss_valithria_dreamwalkerAI::UpdateAI(), npc_the_lich_king_controller::npc_the_lich_king_controllerAI::UpdateAI(), npc_risen_archmage::npc_risen_archmageAI::UpdateAI(), npc_valithria_cloud::npc_valithria_cloudAI::UpdateAI(), npc_blazing_skeleton::npc_blazing_skeletonAI::UpdateAI(), npc_gluttonous_abomination::npc_gluttonous_abominationAI::UpdateAI(), npc_highlord_tirion_fordring_lh::npc_highlord_tirion_fordringAI::UpdateAI(), npc_rotting_frost_giant::npc_rotting_frost_giantAI::UpdateAI(), npc_frost_freeze_trap::npc_frost_freeze_trapAI::UpdateAI(), npc_crok_scourgebane::npc_crok_scourgebaneAI::UpdateAI(), npc_frostwing_vrykul::npc_frostwing_vrykulAI::UpdateAI(), npc_arthas_teleport_visual::npc_arthas_teleport_visualAI::UpdateAI(), npc_ioc_gunship_captain::npc_ioc_gunship_captainAI::UpdateAI(), npc_naxxramas_trigger::UpdateAI(), npc_spark_of_ionar::UpdateAI(), npc_enslaved_proto_drake::UpdateAI(), boss_svala::boss_svalaAI::UpdateAI(), npc_beryl_sorcerer::npc_beryl_sorcererAI::UpdateAI(), npc_captured_beryl_sorcerer::npc_captured_beryl_sorcererAI::UpdateAI(), npc_hidden_cultist::npc_hidden_cultistAI::UpdateAI(), npc_bloodmage_laurith::npc_bloodmage_laurithAI::UpdateAI(), npc_thassarian::npc_thassarianAI::UpdateAI(), npc_thassarian2::npc_thassarian2AI::UpdateAI(), npc_counselor_talbot::npc_counselor_talbotAI::UpdateAI(), npc_shandy_dalaran::npc_shandy_dalaranAI::UpdateAI(), npc_commander_eligor_dawnbringer::npc_commander_eligor_dawnbringerAI::UpdateAI(), npc_torturer_lecraft::npc_torturer_lecraftAI::UpdateAI(), npc_amberpine_woodsman::npc_amberpine_woodsmanAI::UpdateAI(), npc_venture_co_straggler::npc_venture_co_stragglerAI::UpdateAI(), npc_lake_frog::npc_lake_frogAI::UpdateAI(), npc_crusade_recruit::npc_crusade_recruitAI::UpdateAI(), npc_frozen_core::UpdateAI(), npc_ahune_bunny::UpdateAI(), npc_earthen_ring_flamecaller::UpdateAI(), npc_millhouse_manastorm::npc_millhouse_manastormAI::UpdateAI(), npc_simon_bunny::npc_simon_bunnyAI::UpdateAI(), npc_magister_aledis::UpdateAI(), npc_pet_shaman_earth_elemental::UpdateAI(), npc_pet_shaman_fire_elemental::UpdateAI(), go_l70_etc_music::go_l70_etc_musicAI::UpdateAI(), go_brewfest_music::go_brewfest_musicAI::UpdateAI(), go_pirate_day_music::go_pirate_day_musicAI::UpdateAI(), go_darkmoon_faire_music::go_darkmoon_faire_musicAI::UpdateAI(), go_midsummer_music::go_midsummer_musicAI::UpdateAI(), npc_thrall_old_hillsbrad::npc_thrall_old_hillsbradAI::UpdateEscortAI(), npc_magwin::npc_magwinAI::UpdateEscortAI(), npc_onyx_flamecaller::npc_onyx_flamecallerAI::UpdateEscortAI(), and npc_jenny::UpdateFollowerAI().

Member Data Documentation

◆ _eventMap

◆ _lastEvent

Event EventMap::_lastEvent
private

Referenced by ExecuteEvent(), and Repeat().

◆ _phaseMask

PhaseMask EventMap::_phaseMask { 0 }
private

◆ _time

TimePoint EventMap::_time { TimePoint::min() }
private

The documentation for this class was generated from the following files: