diff options
author | ariel- <ariel-@users.noreply.github.com> | 2018-01-02 03:18:22 -0300 |
---|---|---|
committer | funjoker <funjoker109@gmail.com> | 2021-05-06 07:06:27 +0200 |
commit | f77bd1e7c9e9721dbf1a44acb157de262d93dd02 (patch) | |
tree | 4ea0adbc6a250c4434894ed32dc81bd5c46f7872 /src | |
parent | 87d5544f05a1963ec8bec09056d9bad60b5f697c (diff) |
Core/Scripts: fixed npc immunity flags during Harbinger Skyriss encounter
- Added missing _Reset
- Properly register Skyriss summons in SummonList
Closes #21154
Who ordered up an extra large can of whoop-ass?
(cherry picked from commit f8b148c3346e6d5017bf3b044cc36bce32c0cf45)
Diffstat (limited to 'src')
-rw-r--r-- | src/server/scripts/Outland/TempestKeep/arcatraz/arcatraz.cpp | 4 | ||||
-rw-r--r-- | src/server/scripts/Outland/TempestKeep/arcatraz/boss_harbinger_skyriss.cpp | 10 |
2 files changed, 11 insertions, 3 deletions
diff --git a/src/server/scripts/Outland/TempestKeep/arcatraz/arcatraz.cpp b/src/server/scripts/Outland/TempestKeep/arcatraz/arcatraz.cpp index cc7397d6f26..3dd69ae1c1d 100644 --- a/src/server/scripts/Outland/TempestKeep/arcatraz/arcatraz.cpp +++ b/src/server/scripts/Outland/TempestKeep/arcatraz/arcatraz.cpp @@ -106,7 +106,10 @@ class npc_millhouse_manastorm : public CreatureScript Initialize(); if (instance->GetData(DATA_WARDEN_2) == DONE) + { Init = true; + me->SetImmuneToNPC(false); + } if (instance->GetBossState(DATA_HARBINGER_SKYRISS) == DONE) Talk(SAY_COMPLETE); @@ -178,6 +181,7 @@ class npc_millhouse_manastorm : public CreatureScript case 7: instance->SetData(DATA_WARDEN_2, DONE); Init = true; + me->SetImmuneToNPC(false); break; } ++Phase; diff --git a/src/server/scripts/Outland/TempestKeep/arcatraz/boss_harbinger_skyriss.cpp b/src/server/scripts/Outland/TempestKeep/arcatraz/boss_harbinger_skyriss.cpp index 9b840bf3c6c..4c543f5301a 100644 --- a/src/server/scripts/Outland/TempestKeep/arcatraz/boss_harbinger_skyriss.cpp +++ b/src/server/scripts/Outland/TempestKeep/arcatraz/boss_harbinger_skyriss.cpp @@ -98,9 +98,9 @@ class boss_harbinger_skyriss : public CreatureScript void Reset() override { - if (!Intro) - me->SetImmuneToPC(true); + _Reset(); + me->SetImmuneToAll(!Intro); Initialize(); } @@ -131,6 +131,9 @@ class boss_harbinger_skyriss : public CreatureScript if (me->GetVictim()) if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0)) summon->AI()->AttackStart(target); + + summons.Summon(summon); + summon->SetImmuneToAll(false); } void KilledUnit(Unit* victim) override @@ -182,7 +185,7 @@ class boss_harbinger_skyriss : public CreatureScript Intro_Timer = 3000; break; case 3: - me->SetImmuneToPC(false); + me->SetImmuneToAll(false); Intro = true; break; } @@ -286,6 +289,7 @@ class boss_harbinger_skyriss_illusion : public CreatureScript void Reset() override { + me->SetImmuneToPC(false); me->RemoveUnitFlag(UNIT_FLAG_NON_ATTACKABLE); } |