diff options
| author | ariel- <ariel-@users.noreply.github.com> | 2018-01-02 03:35:02 -0300 |
|---|---|---|
| committer | ariel- <ariel-@users.noreply.github.com> | 2018-01-02 03:35:02 -0300 |
| commit | 036a05458eb90f137326885651dec05b303116f9 (patch) | |
| tree | 95dc73d95fa825f77d5816526d790a2668220697 /src | |
| parent | f8b148c3346e6d5017bf3b044cc36bce32c0cf45 (diff) | |
Core/Scripts: cast "Trial of the Naaru: Tenacity" credit spell when criteria is achieved
Closes #21155
Diffstat (limited to 'src')
| -rw-r--r-- | src/server/scripts/Outland/TempestKeep/arcatraz/arcatraz.h | 8 | ||||
| -rw-r--r-- | src/server/scripts/Outland/TempestKeep/arcatraz/instance_arcatraz.cpp | 15 |
2 files changed, 22 insertions, 1 deletions
diff --git a/src/server/scripts/Outland/TempestKeep/arcatraz/arcatraz.h b/src/server/scripts/Outland/TempestKeep/arcatraz/arcatraz.h index 2b767b94a6d..27b044a691f 100644 --- a/src/server/scripts/Outland/TempestKeep/arcatraz/arcatraz.h +++ b/src/server/scripts/Outland/TempestKeep/arcatraz/arcatraz.h @@ -49,7 +49,8 @@ enum AZCreatureIds NPC_DALLIAH = 20885, NPC_SOCCOTHRATES = 20886, NPC_MELLICHAR = 20904, // skyriss will kill this unit - NPC_ALPHA_POD_TARGET = 21436 + NPC_ALPHA_POD_TARGET = 21436, + NPC_MILLHOUSE = 20977 }; enum AZGameObjectIds @@ -64,6 +65,11 @@ enum AZGameObjectIds GO_WARDENS_SHIELD = 184802 // shield 'protecting' mellichar }; +enum AZSpellIds +{ + SPELL_QID_10886 = 39564 +}; + template <class AI, class T> inline AI* GetArcatrazAI(T* obj) { diff --git a/src/server/scripts/Outland/TempestKeep/arcatraz/instance_arcatraz.cpp b/src/server/scripts/Outland/TempestKeep/arcatraz/instance_arcatraz.cpp index 3fc9a874722..9fb985f45a1 100644 --- a/src/server/scripts/Outland/TempestKeep/arcatraz/instance_arcatraz.cpp +++ b/src/server/scripts/Outland/TempestKeep/arcatraz/instance_arcatraz.cpp @@ -49,6 +49,8 @@ class instance_arcatraz : public InstanceMapScript void OnCreatureCreate(Creature* creature) override { + InstanceScript::OnCreatureCreate(creature); + switch (creature->GetEntry()) { case NPC_DALLIAH: @@ -60,6 +62,9 @@ class instance_arcatraz : public InstanceMapScript case NPC_MELLICHAR: MellicharGUID = creature->GetGUID(); break; + case NPC_MILLHOUSE: + MillhouseGUID = creature->GetGUID(); + break; default: break; } @@ -167,6 +172,15 @@ class instance_arcatraz : public InstanceMapScript SetData(DATA_WARDEN_4, NOT_STARTED); SetData(DATA_WARDEN_5, NOT_STARTED); } + else if (state == DONE) + { + if (!instance->IsHeroic()) + break; + + if (Creature* millhouse = instance->GetCreature(MillhouseGUID)) + if (millhouse->IsAlive()) + DoCastSpellOnPlayers(SPELL_QID_10886); + } break; default: break; @@ -180,6 +194,7 @@ class instance_arcatraz : public InstanceMapScript ObjectGuid StasisPodGUIDs[5]; ObjectGuid MellicharGUID; ObjectGuid WardensShieldGUID; + ObjectGuid MillhouseGUID; uint8 ConversationState; uint8 StasisPodStates[5]; |
