From 98be6badacecaac0f7c36c66de63a2ae4a070464 Mon Sep 17 00:00:00 2001 From: Ovahlord Date: Sun, 27 Jan 2019 22:22:49 +0100 Subject: [PATCH] Scripts/TotFW: Slipstream will now despawn when engaging Al'akir --- .../Kalimdor/ThroneOfTheFourWinds/boss_alakir.cpp | 2 ++ .../ThroneOfTheFourWinds/throne_of_the_four_winds.cpp | 9 +++++++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/src/server/scripts/Kalimdor/ThroneOfTheFourWinds/boss_alakir.cpp b/src/server/scripts/Kalimdor/ThroneOfTheFourWinds/boss_alakir.cpp index bdb6292c91a..070453ca04e 100644 --- a/src/server/scripts/Kalimdor/ThroneOfTheFourWinds/boss_alakir.cpp +++ b/src/server/scripts/Kalimdor/ThroneOfTheFourWinds/boss_alakir.cpp @@ -333,6 +333,8 @@ struct boss_alakir : public BossAI if (IsHeroic()) events.ScheduleEvent(EVENT_STATIC_SHOCK, 5s, 0, PHASE_ONE); + + summons.DespawnEntry(NPC_SLIPSTREAM); } void Reset() diff --git a/src/server/scripts/Kalimdor/ThroneOfTheFourWinds/throne_of_the_four_winds.cpp b/src/server/scripts/Kalimdor/ThroneOfTheFourWinds/throne_of_the_four_winds.cpp index 95971743e8d..f9f2761f836 100644 --- a/src/server/scripts/Kalimdor/ThroneOfTheFourWinds/throne_of_the_four_winds.cpp +++ b/src/server/scripts/Kalimdor/ThroneOfTheFourWinds/throne_of_the_four_winds.cpp @@ -87,8 +87,6 @@ class at_totfw_catch_fall : public AreaTriggerScript bool OnTrigger(Player* player, AreaTriggerEntry const* /*areaTrigger*/) { - if (Creature* trigger = player->FindNearestCreature(NPC_WORLD_TRIGGER, 500.0f, true)) - trigger->CastSpell(player, SPELL_CATCH_FALL, true); if (InstanceScript* instance = player->GetInstanceScript()) { @@ -98,7 +96,14 @@ class at_totfw_catch_fall : public AreaTriggerScript nezir->AI()->DoAction(ACTION_PLAYER_LEFT_PLATFORM); else if (Creature* rohash = instance->GetCreature(DATA_ROHASH)) rohash->AI()->DoAction(ACTION_PLAYER_LEFT_PLATFORM); + + if (instance->GetBossState(DATA_ALAKIR) == IN_PROGRESS) + return true; } + + if (Creature* trigger = player->FindNearestCreature(NPC_WORLD_TRIGGER, 500.0f, true)) + trigger->CastSpell(player, SPELL_CATCH_FALL, true); + return true; } };