AzerothCore 3.3.5a
OpenSource WoW Emulator
Loading...
Searching...
No Matches
instance_zulaman::instance_zulaman_InstanceMapScript Struct Reference
Inheritance diagram for instance_zulaman::instance_zulaman_InstanceMapScript:
InstanceScript ZoneScript

Public Member Functions

 instance_zulaman_InstanceMapScript (Map *map)
 
void Initialize () override
 
void OnPlayerEnter (Player *) override
 
void OnCreatureCreate (Creature *creature) override
 
void OnGameObjectCreate (GameObject *go) override
 
void SummonHostage (uint8 num)
 
void DoAction (int32 actionId) override
 
void CheckInstanceStatus (GameObject *gate=nullptr)
 
void SetData (uint32 type, uint32 data) override
 
void StartAkilzonGauntlet ()
 
void ResetAkilzonGauntlet ()
 
void OnUnitDeath (Unit *unit) override
 
void OnCreatureEvade (Creature *creature) override
 
bool SetBossState (uint32 type, EncounterState state) override
 
uint32 GetData (uint32 type) const override
 
void Update (uint32 diff) override
 
- Public Member Functions inherited from InstanceScript
 InstanceScript (Map *map)
 
 ~InstanceScript () override
 
virtual void Load (char const *data)
 
virtual void CreatureLooted (Creature *, LootType)
 
virtual std::string GetSaveData ()
 
void SaveToDB ()
 
virtual bool IsEncounterInProgress () const
 
void OnCreatureCreate (Creature *creature) override
 
void OnCreatureRemove (Creature *creature) override
 
void OnGameObjectCreate (GameObject *go) override
 
void OnGameObjectRemove (GameObject *go) override
 
ObjectGuid GetObjectGuid (uint32 type) const
 
ObjectGuid GetGuidData (uint32 type) const override
 
CreatureGetCreature (uint32 type)
 
GameObjectGetGameObject (uint32 type)
 
virtual void OnPlayerLeave (Player *)
 
virtual void OnPlayerAreaUpdate (Player *, uint32, uint32)
 
virtual void OnPlayerInWaterStateUpdate (Player *, bool)
 
void HandleGameObject (ObjectGuid guid, bool open, GameObject *go=nullptr)
 
void DoUseDoorOrButton (ObjectGuid guid, uint32 withRestoreTime=0, bool useAlternativeState=false)
 
void DoRespawnGameObject (ObjectGuid guid, uint32 timeToDespawn=MINUTE)
 
void DoRespawnGameObject (uint32 type)
 
void DoRespawnCreature (ObjectGuid guid, bool force=false)
 
void DoRespawnCreature (uint32 type, bool force=false)
 
void DoUpdateWorldState (uint32 worldstateId, uint32 worldstateValue)
 
void DoSendNotifyToInstance (char const *format,...)
 
void DoUpdateAchievementCriteria (AchievementCriteriaTypes type, uint32 miscValue1=0, uint32 miscValue2=0, Unit *unit=nullptr)
 
void DoStartTimedAchievement (AchievementCriteriaTimedTypes type, uint32 entry)
 
void DoStopTimedAchievement (AchievementCriteriaTimedTypes type, uint32 entry)
 
void DoRemoveAurasDueToSpellOnPlayers (uint32 spell)
 
void DoCastSpellOnPlayers (uint32 spell)
 
void DoCastSpellOnPlayer (Player *player, uint32 spell, bool includePets, bool includeControlled)
 
bool ServerAllowsTwoSideGroups ()
 
EncounterState GetBossState (uint32 id) const
 
CreatureBoundary const * GetBossBoundary (uint32 id) const
 
BossInfo const * GetBossInfo (uint32 id) const
 
uint32 GetPersistentData (uint32 index) const
 
void StorePersistentData (uint32 index, uint32 data)
 
virtual bool CheckAchievementCriteriaMeet (uint32, Player const *, Unit const *=nullptr, uint32=0)
 
virtual bool CheckRequiredBosses (uint32, Player const *=nullptr) const
 
void SetCompletedEncountersMask (uint32 newMask, bool save)
 
uint32 GetCompletedEncounterMask () const
 
void SendEncounterUnit (uint32 type, Unit *unit=nullptr, uint8 param1=0, uint8 param2=0)
 
virtual void FillInitialWorldStates (WorldPackets::WorldState::InitWorldStates &)
 
uint32 GetEncounterCount () const
 
void MarkAreaTriggerDone (uint32 id)
 
void ResetAreaTriggerDone (uint32 id)
 
bool IsAreaTriggerDone (uint32 id) const
 
void DoForAllMinions (uint32 id, std::function< void(Creature *)> exec)
 
void StoreGameObjectState (ObjectGuid::LowType spawnId, uint8 state)
 
uint8 GetStoredGameObjectState (ObjectGuid::LowType spawnId) const
 
void LoadInstanceSavedGameobjectStateData ()
 
bool IsBossDone (uint32 bossId) const
 
bool AllBossesDone () const
 
bool AllBossesDone (std::initializer_list< uint32 > bossIds) const
 
TeamId GetTeamIdInInstance () const
 
void SetTeamIdInInstance (TeamId teamId)
 
bool IsTwoFactionInstance () const
 
- Public Member Functions inherited from ZoneScript
 ZoneScript ()
 
virtual ~ZoneScript ()
 
virtual uint32 GetCreatureEntry (ObjectGuid::LowType, CreatureData const *data)
 
virtual uint32 GetGameObjectEntry (ObjectGuid::LowType, uint32 entry)
 
virtual void SetGuidData (uint32, ObjectGuid)
 
virtual uint64 GetData64 (uint32) const
 
virtual void SetData64 (uint32, uint64)
 
virtual void ProcessEvent (WorldObject *, uint32)
 

Private Attributes

uint32 RandVendor [RAND_VENDOR]
 
GuidSet AkilzonTrash
 
EncounterState _akilzonGauntlet = NOT_STARTED
 

Additional Inherited Members

- Static Public Member Functions inherited from InstanceScript
static std::string GetBossStateName (uint8 state)
 
- Public Attributes inherited from InstanceScript
Mapinstance
 
TaskScheduler scheduler
 
- Protected Member Functions inherited from InstanceScript
void SetHeaders (std::string const &dataHeaders)
 
void SetBossNumber (uint32 number)
 
void SetPersistentDataCount (uint32 number)
 
void LoadBossBoundaries (BossBoundaryData const &data)
 
void LoadDoorData (DoorData const *data)
 
void LoadMinionData (MinionData const *data)
 
void LoadObjectData (ObjectData const *creatureData, ObjectData const *gameObjectData)
 
void LoadSummonData (ObjectData const *data)
 
void SetSummoner (Creature *creature)
 
void AddObject (Creature *obj, bool add=true)
 
void RemoveObject (Creature *obj)
 
void AddObject (GameObject *obj, bool add=true)
 
void RemoveObject (GameObject *obj)
 
void AddObject (WorldObject *obj, uint32 type, bool add=true)
 
void RemoveObject (WorldObject *obj, uint32 type)
 
void AddDoor (GameObject *door, bool add=true)
 
void RemoveDoor (GameObject *door)
 
void AddMinion (Creature *minion, bool add=true)
 
void RemoveMinion (Creature *minion)
 
void UpdateDoorState (GameObject *door)
 
void UpdateMinionState (Creature *minion, EncounterState state)
 
bool ReadSaveDataHeaders (std::istringstream &data)
 
void ReadSaveDataBossStates (std::istringstream &data)
 
void ReadSavePersistentData (std::istringstream &data)
 
virtual void ReadSaveDataMore (std::istringstream &)
 
void WriteSaveDataHeaders (std::ostringstream &data)
 
void WriteSaveDataBossStates (std::ostringstream &data)
 
void WritePersistentData (std::ostringstream &data)
 
virtual void WriteSaveDataMore (std::ostringstream &)
 

Detailed Description

Constructor & Destructor Documentation

◆ instance_zulaman_InstanceMapScript()

instance_zulaman::instance_zulaman_InstanceMapScript::instance_zulaman_InstanceMapScript ( Map map)
inline
103: InstanceScript(map) {}
Definition InstanceScript.h:143

Member Function Documentation

◆ CheckInstanceStatus()

void instance_zulaman::instance_zulaman_InstanceMapScript::CheckInstanceStatus ( GameObject gate = nullptr)
inline
198 {
201 }
void HandleGameObject(ObjectGuid guid, bool open, GameObject *go=nullptr)
Definition InstanceScript.cpp:125
bool AllBossesDone() const
Definition InstanceScript.cpp:808
GameObject * GetGameObject(uint32 type)
Definition InstanceScript.cpp:120
static ObjectGuid const Empty
Definition ObjectGuid.h:120
@ DATA_AKILZON
Definition zulaman.h:29
@ DATA_NALORAKK
Definition zulaman.h:28
@ DATA_JANALAI
Definition zulaman.h:30
@ DATA_HALAZZI
Definition zulaman.h:31
@ DATA_HEXLORD_GATE
Definition zulaman.h:40

References InstanceScript::AllBossesDone(), DATA_AKILZON, DATA_HALAZZI, DATA_HEXLORD_GATE, DATA_JANALAI, DATA_NALORAKK, ObjectGuid::Empty, InstanceScript::GetGameObject(), and InstanceScript::HandleGameObject().

Referenced by OnGameObjectCreate(), and SetBossState().

◆ DoAction()

void instance_zulaman::instance_zulaman_InstanceMapScript::DoAction ( int32  actionId)
inlineoverridevirtual

Reimplemented from InstanceScript.

172 {
173 if (actionId == ACTION_START_TIMED_RUN)
174 {
176 {
179 }
180
181 scheduler.Schedule(1min, GROUP_TIMED_RUN, [this](TaskContext context)
182 {
184 {
185 --timer;
189 context.Repeat();
190 }
191 else
193 });
194 }
195 }
std::uint32_t uint32
Definition Define.h:107
@ WORLD_STATE_ZUL_AMAN_SHOW_TIMER
Definition WorldStateDefines.h:579
@ WORLD_STATE_ZUL_AMAN_TIME_TO_SACRIFICE
Definition WorldStateDefines.h:580
uint32 GetPersistentData(uint32 index) const
Definition InstanceScript.h:247
void StorePersistentData(uint32 index, uint32 data)
Definition InstanceScript.cpp:422
TaskScheduler scheduler
Definition InstanceScript.h:293
void DoUpdateWorldState(uint32 worldstateId, uint32 worldstateValue)
Definition InstanceScript.cpp:621
Definition TaskScheduler.h:421
TaskContext & Repeat(std::chrono::duration< _Rep, _Period > const &duration)
Definition TaskScheduler.h:493
TaskScheduler & Schedule(std::chrono::duration< _Rep, _Period > const &time, task_handler_t const &task)
Definition TaskScheduler.h:232
@ DATA_TIMED_RUN
Definition zulaman.h:95
@ ACTION_START_TIMED_RUN
Definition zulaman.h:98
@ GROUP_TIMED_RUN
Definition zulaman.h:101

References ACTION_START_TIMED_RUN, DATA_TIMED_RUN, InstanceScript::DoUpdateWorldState(), InstanceScript::GetPersistentData(), GROUP_TIMED_RUN, TaskContext::Repeat(), TaskScheduler::Schedule(), InstanceScript::scheduler, InstanceScript::StorePersistentData(), WORLD_STATE_ZUL_AMAN_SHOW_TIMER, and WORLD_STATE_ZUL_AMAN_TIME_TO_SACRIFICE.

Referenced by OnPlayerEnter().

◆ GetData()

uint32 instance_zulaman::instance_zulaman_InstanceMapScript::GetData ( uint32  type) const
inlineoverridevirtual

Reimplemented from ZoneScript.

350 {
351 if (type == TYPE_RAND_VENDOR_1)
352 return RandVendor[0];
353 else if (type == TYPE_RAND_VENDOR_2)
354 return RandVendor[1];
355 else if (type == TYPE_AKILZON_GAUNTLET)
356 return _akilzonGauntlet;
357 else if (type == DATA_CHEST_LOOTED)
359
360 return 0;
361 }
EncounterState _akilzonGauntlet
Definition instance_zulaman.cpp:371
uint32 RandVendor[RAND_VENDOR]
Definition instance_zulaman.cpp:369
@ DATA_CHEST_COUNT
Definition zulaman.h:96
@ TYPE_AKILZON_GAUNTLET
Definition zulaman.h:42
@ TYPE_RAND_VENDOR_1
Definition zulaman.h:36
@ DATA_CHEST_LOOTED
Definition zulaman.h:45
@ TYPE_RAND_VENDOR_2
Definition zulaman.h:37

References _akilzonGauntlet, DATA_CHEST_COUNT, DATA_CHEST_LOOTED, InstanceScript::GetPersistentData(), RandVendor, TYPE_AKILZON_GAUNTLET, TYPE_RAND_VENDOR_1, and TYPE_RAND_VENDOR_2.

◆ Initialize()

void instance_zulaman::instance_zulaman_InstanceMapScript::Initialize ( )
inlineoverridevirtual

Reimplemented from InstanceScript.

106 {
114
115 for (uint8 i = 0; i < RAND_VENDOR; ++i)
117
119 }
std::uint8_t uint8
Definition Define.h:109
@ NOT_STARTED
Definition InstanceScript.h:58
#define DataHeader
Definition blackrock_depths.h:23
void SetBossNumber(uint32 number)
Definition InstanceScript.h:296
void LoadSummonData(ObjectData const *data)
Definition InstanceScript.cpp:212
void SetPersistentDataCount(uint32 number)
Definition InstanceScript.h:297
void LoadDoorData(DoorData const *data)
Definition InstanceScript.cpp:176
void LoadBossBoundaries(BossBoundaryData const &data)
Definition InstanceScript.cpp:146
void SetHeaders(std::string const &dataHeaders)
Definition InstanceScript.cpp:153
void LoadObjectData(ObjectData const *creatureData, ObjectData const *gameObjectData)
Definition InstanceScript.cpp:188
ObjectData const gameObjectData[]
Definition instance_zulaman.cpp:71
@ RAND_VENDOR
Definition instance_zulaman.cpp:27
ObjectData const creatureData[]
Definition instance_zulaman.cpp:62
DoorData const doorData[]
Definition instance_zulaman.cpp:49
BossBoundaryData const boundaries
Definition instance_zulaman.cpp:86
ObjectData const summonData[]
Definition instance_zulaman.cpp:80
#define MAX_ENCOUNTER
Definition violet_hold.h:21
uint32 constexpr PersistentDataCount
Definition zulaman.h:104

References boundaries, creatureData, DATA_TIMED_RUN, DataHeader, doorData, gameObjectData, InstanceScript::LoadBossBoundaries(), InstanceScript::LoadDoorData(), InstanceScript::LoadObjectData(), InstanceScript::LoadSummonData(), MAX_ENCOUNTER, NOT_STARTED, PersistentDataCount, RAND_VENDOR, RandVendor, InstanceScript::SetBossNumber(), InstanceScript::SetHeaders(), InstanceScript::SetPersistentDataCount(), InstanceScript::StorePersistentData(), and summonData.

◆ OnCreatureCreate()

void instance_zulaman::instance_zulaman_InstanceMapScript::OnCreatureCreate ( Creature creature)
inlineoverridevirtual

Reimplemented from ZoneScript.

128 {
129 switch (creature->GetEntry())
130 {
133 if (creature->GetPositionY() >= 1500.0f) // gate
134 creature->SetImmuneToAll(true);
135 break;
136 // Akil'zon gauntlet
138 if (creature->GetPositionZ() >= 50.0f) // excludes Tempest in Hexlord Malacrass' trash
139 AkilzonTrash.insert(creature->GetGUID());
140 break;
144 AkilzonTrash.insert(creature->GetGUID());
145 break;
147 if (creature->GetPositionZ() >= 26.0f) // excludes Wind Walker in first patrol
148 AkilzonTrash.insert(creature->GetGUID());
149 break;
150 }
151
153 }
void OnCreatureCreate(Creature *creature) override
Definition InstanceScript.cpp:70
uint32 GetEntry() const
Definition Object.h:115
static ObjectGuid GetGUID(Object const *o)
Definition Object.h:112
void SetImmuneToAll(bool apply, bool keepCombat=false)
Definition Unit.h:883
float GetPositionZ() const
Definition Position.h:123
float GetPositionY() const
Definition Position.h:122
GuidSet AkilzonTrash
Definition instance_zulaman.cpp:370
@ NPC_AMANISHI_PROTECTOR
Definition zulaman.h:67
@ NPC_AMANISHI_WIND_WALKER
Definition zulaman.h:65
@ NPC_AMANISHI_GUARDIAN
Definition zulaman.h:63
@ NPC_AMANISHI_LOOKOUT
Definition zulaman.h:66
@ NPC_EAGLE_TRASH_AGGRO_TRIGGER
Definition zulaman.h:69
@ NPC_AMANISHI_SAVAGE
Definition zulaman.h:57
@ NPC_AMANISHI_TEMPEST
Definition zulaman.h:68

References AkilzonTrash, Object::GetEntry(), Object::GetGUID(), Position::GetPositionY(), Position::GetPositionZ(), NPC_AMANISHI_GUARDIAN, NPC_AMANISHI_LOOKOUT, NPC_AMANISHI_PROTECTOR, NPC_AMANISHI_SAVAGE, NPC_AMANISHI_TEMPEST, NPC_AMANISHI_WIND_WALKER, NPC_EAGLE_TRASH_AGGRO_TRIGGER, InstanceScript::OnCreatureCreate(), and Unit::SetImmuneToAll().

◆ OnCreatureEvade()

void instance_zulaman::instance_zulaman_InstanceMapScript::OnCreatureEvade ( Creature creature)
inlineoverridevirtual

Reimplemented from ZoneScript.

278 {
279 switch (creature->GetEntry())
280 {
284 if (AkilzonTrash.contains(creature->GetGUID()))
286 break;
287 default:
288 break;
289 }
290 }
void ResetAkilzonGauntlet()
Definition instance_zulaman.cpp:244

References AkilzonTrash, Object::GetEntry(), Object::GetGUID(), NPC_AMANISHI_PROTECTOR, NPC_AMANISHI_TEMPEST, NPC_AMANISHI_WIND_WALKER, and ResetAkilzonGauntlet().

◆ OnGameObjectCreate()

void instance_zulaman::instance_zulaman_InstanceMapScript::OnGameObjectCreate ( GameObject go)
inlineoverridevirtual

Reimplemented from ZoneScript.

156 {
158
159 if (go->GetEntry() == GO_GATE_HEXLORD)
161 }
void OnGameObjectCreate(GameObject *go) override
Definition InstanceScript.cpp:85
void CheckInstanceStatus(GameObject *gate=nullptr)
Definition instance_zulaman.cpp:197
@ GO_GATE_HEXLORD
Definition zulaman.h:76

References CheckInstanceStatus(), Object::GetEntry(), GO_GATE_HEXLORD, and InstanceScript::OnGameObjectCreate().

◆ OnPlayerEnter()

void instance_zulaman::instance_zulaman_InstanceMapScript::OnPlayerEnter ( Player )
inlineoverridevirtual

Reimplemented from InstanceScript.

122 {
125 }
bool IsGroupScheduled(group_t const group)
Check if the group exists and is currently scheduled.
Definition TaskScheduler.cpp:122
void DoAction(int32 actionId) override
Definition instance_zulaman.cpp:171

References ACTION_START_TIMED_RUN, DATA_TIMED_RUN, DoAction(), InstanceScript::GetPersistentData(), GROUP_TIMED_RUN, TaskScheduler::IsGroupScheduled(), and InstanceScript::scheduler.

◆ OnUnitDeath()

void instance_zulaman::instance_zulaman_InstanceMapScript::OnUnitDeath ( Unit unit)
inlineoverridevirtual

Reimplemented from ZoneScript.

261 {
262 Creature* creature = unit->ToCreature();
263 if (!creature)
264 return;
265
266 switch (creature->GetEntry())
267 {
270 if (_akilzonGauntlet == NOT_STARTED && AkilzonTrash.contains(creature->GetGUID()))
271 creature->DespawnOrUnsummon(30s, 1s);
272 default:
273 break;
274 }
275 }
Definition Creature.h:43
void DespawnOrUnsummon(Milliseconds msTimeToDespawn, Seconds forcedRespawnTimer)
Definition Creature.cpp:2183
Creature * ToCreature()
Definition Object.h:205

References _akilzonGauntlet, AkilzonTrash, Creature::DespawnOrUnsummon(), Object::GetEntry(), Object::GetGUID(), NOT_STARTED, NPC_AMANISHI_PROTECTOR, NPC_AMANISHI_WIND_WALKER, and Object::ToCreature().

◆ ResetAkilzonGauntlet()

void instance_zulaman::instance_zulaman_InstanceMapScript::ResetAkilzonGauntlet ( )
inline
245 {
247 for (ObjectGuid guid : AkilzonTrash)
248 if (Creature* creature = instance->GetCreature(guid))
249 {
250 if (!creature->IsAlive())
251 creature->Respawn();
252 else if (creature->GetEntry() == NPC_AMANISHI_TEMPEST)
253 creature->AI()->DoAction(ACTION_RESET_AKILZON_GAUNTLET);
254 }
255 if (Creature* creature = GetCreature(DATA_LOOKOUT))
256 if (creature->isMoving())
257 creature->Respawn(true);
258 }
Creature * GetCreature(uint32 type)
Definition InstanceScript.cpp:115
Map * instance
Definition InstanceScript.h:149
Definition ObjectGuid.h:118
@ ACTION_RESET_AKILZON_GAUNTLET
Definition zulaman.h:100
@ DATA_LOOKOUT
Definition zulaman.h:43

References _akilzonGauntlet, ACTION_RESET_AKILZON_GAUNTLET, AkilzonTrash, DATA_LOOKOUT, Map::GetCreature(), InstanceScript::GetCreature(), InstanceScript::instance, NOT_STARTED, and NPC_AMANISHI_TEMPEST.

Referenced by OnCreatureEvade(), and SetData().

◆ SetBossState()

bool instance_zulaman::instance_zulaman_InstanceMapScript::SetBossState ( uint32  type,
EncounterState  state 
)
inlineoverridevirtual

Reimplemented from InstanceScript.

293 {
294 if (!InstanceScript::SetBossState(type, state))
295 return false;
296
297 if (state == DONE)
298 {
299 switch (type)
300 {
301 case DATA_NALORAKK:
303 {
306 }
307 SummonHostage(type);
308 break;
309 case DATA_AKILZON:
311 {
314 }
315 SummonHostage(type);
316 break;
317 case DATA_JANALAI:
318 case DATA_HALAZZI:
319 SummonHostage(type);
320 break;
321 case DATA_HEXLORD:
322 if (GameObject* zuljinGate = GetGameObject(DATA_ZULJIN_GATE))
323 zuljinGate->RemoveGameObjectFlag(GO_FLAG_LOCKED);
324 break;
325 }
326
328 {
331 }
332
334 }
335 else
336 {
337 if (type == DATA_HEXLORD)
338 {
339 if (state == IN_PROGRESS)
341 else if (state == NOT_STARTED)
343 }
344 }
345
346 return true;
347 }
@ IN_PROGRESS
Definition InstanceScript.h:59
@ DONE
Definition InstanceScript.h:61
@ GO_FLAG_LOCKED
Definition SharedDefines.h:1604
Definition GameObject.h:120
virtual bool SetBossState(uint32 id, EncounterState state)
Definition InstanceScript.cpp:385
void SummonHostage(uint8 num)
Definition instance_zulaman.cpp:163
@ DATA_HEXLORD
Definition zulaman.h:32
@ DATA_ZULJIN_GATE
Definition zulaman.h:44

References InstanceScript::AllBossesDone(), CheckInstanceStatus(), DATA_AKILZON, DATA_HALAZZI, DATA_HEXLORD, DATA_HEXLORD_GATE, DATA_JANALAI, DATA_NALORAKK, DATA_TIMED_RUN, DATA_ZULJIN_GATE, DONE, InstanceScript::DoUpdateWorldState(), ObjectGuid::Empty, InstanceScript::GetGameObject(), InstanceScript::GetPersistentData(), GO_FLAG_LOCKED, InstanceScript::HandleGameObject(), IN_PROGRESS, NOT_STARTED, InstanceScript::SetBossState(), InstanceScript::StorePersistentData(), SummonHostage(), WORLD_STATE_ZUL_AMAN_SHOW_TIMER, and WORLD_STATE_ZUL_AMAN_TIME_TO_SACRIFICE.

◆ SetData()

void instance_zulaman::instance_zulaman_InstanceMapScript::SetData ( uint32  type,
uint32  data 
)
inlineoverridevirtual

Reimplemented from ZoneScript.

204 {
205 if (type == TYPE_RAND_VENDOR_1)
206 RandVendor[0] = data;
207 else if (type == TYPE_RAND_VENDOR_2)
208 RandVendor[1] = data;
209 else if (type == TYPE_AKILZON_GAUNTLET)
210 {
211 if (data == IN_PROGRESS)
213 else if (data == NOT_STARTED)
215 else if (data == DONE)
217 }
218 else if (type == DATA_CHEST_LOOTED)
219 {
222 }
223 }
void StartAkilzonGauntlet()
Definition instance_zulaman.cpp:225

References _akilzonGauntlet, DATA_CHEST_COUNT, DATA_CHEST_LOOTED, DONE, InstanceScript::GetPersistentData(), IN_PROGRESS, NOT_STARTED, RandVendor, ResetAkilzonGauntlet(), StartAkilzonGauntlet(), InstanceScript::StorePersistentData(), TYPE_AKILZON_GAUNTLET, TYPE_RAND_VENDOR_1, and TYPE_RAND_VENDOR_2.

◆ StartAkilzonGauntlet()

void instance_zulaman::instance_zulaman_InstanceMapScript::StartAkilzonGauntlet ( )
inline
226 {
228 for (ObjectGuid const& guid : AkilzonTrash)
229 if (Creature* creature = instance->GetCreature(guid))
230 switch (creature->GetEntry())
231 {
233 creature->DisappearAndDie();
234 break;
237 creature->AI()->DoAction(ACTION_START_AKILZON_GAUNTLET);
238 break;
239 default:
240 break;
241 }
242 }
MapEntry const * GetEntry()
Definition ScriptObject.h:92
@ ACTION_START_AKILZON_GAUNTLET
Definition zulaman.h:99

References _akilzonGauntlet, ACTION_START_AKILZON_GAUNTLET, AkilzonTrash, Map::GetCreature(), IN_PROGRESS, InstanceScript::instance, NPC_AMANISHI_LOOKOUT, NPC_AMANISHI_TEMPEST, and NPC_EAGLE_TRASH_AGGRO_TRIGGER.

Referenced by SetData().

◆ SummonHostage()

void instance_zulaman::instance_zulaman_InstanceMapScript::SummonHostage ( uint8  num)
inline
164 {
166 return;
167
169 }
npc
Definition BattlegroundSA.h:47
TempSummon * SummonCreature(uint32 entry, Position const &pos, SummonPropertiesEntry const *properties=nullptr, uint32 duration=0, WorldObject *summoner=nullptr, uint32 spellId=0, uint32 vehId=0, bool visibleBySummonerOnly=false)
Definition Object.cpp:2174
static SHostageInfo HostageInfo[]
Definition instance_zulaman.cpp:39

References DATA_TIMED_RUN, InstanceScript::GetPersistentData(), HostageInfo, InstanceScript::instance, and Map::SummonCreature().

Referenced by SetBossState().

◆ Update()

void instance_zulaman::instance_zulaman_InstanceMapScript::Update ( uint32  diff)
inlineoverridevirtual

Reimplemented from InstanceScript.

364 {
365 scheduler.Update(diff);
366 }
TaskScheduler & Update(success_t const &callback=EmptyCallback)
Definition TaskScheduler.cpp:27

References InstanceScript::scheduler, and TaskScheduler::Update().

Member Data Documentation

◆ _akilzonGauntlet

EncounterState instance_zulaman::instance_zulaman_InstanceMapScript::_akilzonGauntlet = NOT_STARTED
private

◆ AkilzonTrash

GuidSet instance_zulaman::instance_zulaman_InstanceMapScript::AkilzonTrash
private

◆ RandVendor

uint32 instance_zulaman::instance_zulaman_InstanceMapScript::RandVendor[RAND_VENDOR]
private

Referenced by GetData(), Initialize(), and SetData().


The documentation for this struct was generated from the following file: