aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/server/scripts/EasternKingdoms/zone_stormwind_city.cpp111
-rw-r--r--src/server/scripts/Kalimdor/zone_durotar.cpp45
-rw-r--r--src/server/scripts/Kalimdor/zone_orgrimmar.cpp28
-rw-r--r--src/server/scripts/Pandaria/zone_the_jade_forest.cpp129
4 files changed, 240 insertions, 73 deletions
diff --git a/src/server/scripts/EasternKingdoms/zone_stormwind_city.cpp b/src/server/scripts/EasternKingdoms/zone_stormwind_city.cpp
index 902fb016da4..bacfef7e2c5 100644
--- a/src/server/scripts/EasternKingdoms/zone_stormwind_city.cpp
+++ b/src/server/scripts/EasternKingdoms/zone_stormwind_city.cpp
@@ -32,13 +32,18 @@
#include "SpellScript.h"
#include "TemporarySummon.h"
-namespace StormwindCity
+namespace Scripts::EasternKingdoms::StormwindCity
{
- namespace Spells
- {
- static constexpr uint32 MOPAllianceIntroMoviePlay = 130805;
- static constexpr uint32 FadeToBlack = 130411;
- }
+namespace Spells
+{
+ // The King's Command
+ static constexpr uint32 MOPAllianceIntroMoviePlay = 130805;
+ static constexpr uint32 FadeToBlack = 130411;
+
+ // The Mission
+ static constexpr uint32 TeleportPrep = 130832;
+ static constexpr uint32 TeleportTimer = 132032;
+ static constexpr uint32 TheMissionTeleportPlayer = 130321;
}
enum TidesOfWarData
@@ -511,15 +516,13 @@ class spell_the_kings_command_movie_aura : public SpellScript
bool Validate(SpellInfo const* /*spellInfo*/) override
{
return ValidateSpellInfo({
- StormwindCity::Spells::FadeToBlack
+ Spells::FadeToBlack
});
}
void HandleHitTarget(SpellEffIndex /*effIndex*/) const
{
- Unit* hitUnit = GetHitUnit();
-
- hitUnit->CastSpell(hitUnit, StormwindCity::Spells::FadeToBlack, CastSpellExtraArgsInit{
+ GetHitUnit()->CastSpell(nullptr, Spells::FadeToBlack, CastSpellExtraArgsInit{
.TriggerFlags = TRIGGERED_IGNORE_CAST_IN_PROGRESS | TRIGGERED_DONT_REPORT_CAST_ERROR,
.OriginalCastId = GetSpell()->m_castId
});
@@ -531,12 +534,87 @@ class spell_the_kings_command_movie_aura : public SpellScript
}
};
+// 130804 - The King's Command Movie Aura
class spell_the_kings_command_movie_aura_aura : public AuraScript
{
bool Validate(SpellInfo const* /*spellInfo*/) override
{
return ValidateSpellInfo({
- StormwindCity::Spells::MOPAllianceIntroMoviePlay
+ Spells::MOPAllianceIntroMoviePlay
+ });
+ }
+
+ void HandleAfterEffectRemove(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/) const
+ {
+ GetTarget()->CastSpell(nullptr, Spells::MOPAllianceIntroMoviePlay, CastSpellExtraArgsInit{
+ .TriggerFlags = TRIGGERED_IGNORE_CAST_IN_PROGRESS | TRIGGERED_DONT_REPORT_CAST_ERROR
+ });
+ }
+
+ void Register() override
+ {
+ AfterEffectRemove += AuraEffectRemoveFn(spell_the_kings_command_movie_aura_aura::HandleAfterEffectRemove, EFFECT_0, SPELL_AURA_DUMMY, AURA_EFFECT_HANDLE_REAL);
+ }
+};
+
+// 140885 - Admiral Rogers Script Effect
+class spell_admiral_rogers_script_effect : public SpellScript
+{
+ bool Validate(SpellInfo const* /*spellInfo*/) override
+ {
+ return ValidateSpellInfo({
+ Spells::TeleportPrep
+ });
+ }
+
+ void HandleHitTarget(SpellEffIndex /*effIndex*/) const
+ {
+ GetHitUnit()->CastSpell(nullptr, Spells::TeleportPrep, CastSpellExtraArgsInit{
+ .TriggerFlags = TRIGGERED_IGNORE_CAST_IN_PROGRESS | TRIGGERED_DONT_REPORT_CAST_ERROR,
+ .OriginalCastId = GetSpell()->m_castId
+ });
+ }
+
+ void Register() override
+ {
+ OnEffectHitTarget += SpellEffectFn(spell_admiral_rogers_script_effect::HandleHitTarget, EFFECT_0, SPELL_EFFECT_SCRIPT_EFFECT);
+ }
+};
+
+// 130832 - Teleport Prep
+class spell_teleport_prep_alliance : public SpellScript
+{
+ bool Validate(SpellInfo const* /*spellInfo*/) override
+ {
+ return ValidateSpellInfo({
+ Spells::TeleportTimer
+ });
+ }
+
+ void HandleHitTarget(SpellEffIndex /*effIndex*/) const
+ {
+ Unit* hitUnit = GetHitUnit();
+
+ hitUnit->CancelMountAura();
+ hitUnit->CastSpell(nullptr, Spells::TeleportTimer, CastSpellExtraArgsInit{
+ .TriggerFlags = TRIGGERED_IGNORE_CAST_IN_PROGRESS | TRIGGERED_DONT_REPORT_CAST_ERROR,
+ .OriginalCastId = GetSpell()->m_castId
+ });
+ }
+
+ void Register() override
+ {
+ OnEffectHitTarget += SpellEffectFn(spell_teleport_prep_alliance::HandleHitTarget, EFFECT_0, SPELL_EFFECT_APPLY_AURA);
+ }
+};
+
+// 132032 - Teleport Timer
+class spell_teleport_timer_alliance : public AuraScript
+{
+ bool Validate(SpellInfo const* /*spellInfo*/) override
+ {
+ return ValidateSpellInfo({
+ Spells::TheMissionTeleportPlayer
});
}
@@ -544,19 +622,23 @@ class spell_the_kings_command_movie_aura_aura : public AuraScript
{
Unit* target = GetTarget();
- target->CastSpell(target, StormwindCity::Spells::MOPAllianceIntroMoviePlay, CastSpellExtraArgsInit{
+ target->CancelTravelShapeshiftForm();
+ target->CastSpell(nullptr, Spells::TheMissionTeleportPlayer, CastSpellExtraArgsInit{
.TriggerFlags = TRIGGERED_IGNORE_CAST_IN_PROGRESS | TRIGGERED_DONT_REPORT_CAST_ERROR
});
}
void Register() override
{
- AfterEffectRemove += AuraEffectRemoveFn(spell_the_kings_command_movie_aura_aura::HandleAfterEffectRemove, EFFECT_0, SPELL_AURA_DUMMY, AURA_EFFECT_HANDLE_REAL);
+ AfterEffectRemove += AuraEffectRemoveFn(spell_teleport_timer_alliance::HandleAfterEffectRemove, EFFECT_0, SPELL_AURA_DUMMY, AURA_EFFECT_HANDLE_REAL);
}
};
+}
void AddSC_stormwind_city()
{
+ using namespace Scripts::EasternKingdoms::StormwindCity;
+
// Creature
RegisterCreatureAI(npc_jaina_proudmoore_tides_of_war);
RegisterCreatureAI(npc_anduin_wrynn_nation_of_kultiras);
@@ -577,4 +659,7 @@ void AddSC_stormwind_city()
RegisterSpellScript(spell_despawn_sailor_memory);
RegisterSpellScript(spell_kultiras_skip_intro);
RegisterSpellAndAuraScriptPair(spell_the_kings_command_movie_aura, spell_the_kings_command_movie_aura_aura);
+ RegisterSpellScript(spell_admiral_rogers_script_effect);
+ RegisterSpellScript(spell_teleport_prep_alliance);
+ RegisterSpellScript(spell_teleport_timer_alliance);
}
diff --git a/src/server/scripts/Kalimdor/zone_durotar.cpp b/src/server/scripts/Kalimdor/zone_durotar.cpp
index 9e69f784319..9e979057641 100644
--- a/src/server/scripts/Kalimdor/zone_durotar.cpp
+++ b/src/server/scripts/Kalimdor/zone_durotar.cpp
@@ -29,14 +29,16 @@
#include "PassiveAI.h"
#include "ObjectAccessor.h"
-namespace Durotar
+namespace Scripts::Kalimdor::Durotar
{
- namespace Spells
- {
- static constexpr uint32 PhasePlayer = 130750;
- static constexpr uint32 TeleportTimer = 132034;
- static constexpr uint32 TeleportPlayerToCrashSite = 102930;
- }
+namespace Spells
+{
+ // All Aboard!
+ static constexpr uint32 PhasePlayer = 130750;
+
+ // Into the Mists
+ static constexpr uint32 TeleportTimer = 132034;
+ static constexpr uint32 TeleportPlayerToCrashSite = 102930;
}
/*######
@@ -1231,7 +1233,7 @@ public:
bool OnTrigger(Player* player, AreaTriggerEntry const* /*areaTrigger*/) override
{
- player->CastSpell(player, Durotar::Spells::PhasePlayer, CastSpellExtraArgsInit{
+ player->CastSpell(nullptr, Spells::PhasePlayer, CastSpellExtraArgsInit{
.TriggerFlags = TRIGGERED_IGNORE_CAST_IN_PROGRESS | TRIGGERED_DONT_REPORT_CAST_ERROR,
});
return true;
@@ -1239,18 +1241,18 @@ public:
bool OnExit(Player* player, AreaTriggerEntry const* /*areaTrigger*/) override
{
- player->RemoveAurasDueToSpell(Durotar::Spells::PhasePlayer);
+ player->RemoveAurasDueToSpell(Spells::PhasePlayer);
return true;
}
};
// 130810 - Teleport Prep
-class spell_teleport_prep : public SpellScript
+class spell_teleport_prep_horde : public SpellScript
{
bool Validate(SpellInfo const* /*spellInfo*/) override
{
return ValidateSpellInfo({
- Durotar::Spells::TeleportTimer
+ Spells::TeleportTimer
});
}
@@ -1258,7 +1260,8 @@ class spell_teleport_prep : public SpellScript
{
Unit* hitUnit = GetHitUnit();
- hitUnit->CastSpell(hitUnit, Durotar::Spells::TeleportTimer, CastSpellExtraArgsInit{
+ hitUnit->CancelMountAura();
+ hitUnit->CastSpell(nullptr, Spells::TeleportTimer, CastSpellExtraArgsInit{
.TriggerFlags = TRIGGERED_IGNORE_CAST_IN_PROGRESS | TRIGGERED_DONT_REPORT_CAST_ERROR,
.OriginalCastId = GetSpell()->m_castId
});
@@ -1266,17 +1269,17 @@ class spell_teleport_prep : public SpellScript
void Register() override
{
- OnEffectHitTarget += SpellEffectFn(spell_teleport_prep::HandleHitTarget, EFFECT_0, SPELL_EFFECT_APPLY_AURA);
+ OnEffectHitTarget += SpellEffectFn(spell_teleport_prep_horde::HandleHitTarget, EFFECT_0, SPELL_EFFECT_APPLY_AURA);
}
};
// 132034 - Teleport Timer
-class spell_teleport_timer : public AuraScript
+class spell_teleport_timer_horde : public AuraScript
{
bool Validate(SpellInfo const* /*spellInfo*/) override
{
return ValidateSpellInfo({
- Durotar::Spells::TeleportPlayerToCrashSite
+ Spells::TeleportPlayerToCrashSite
});
}
@@ -1284,19 +1287,23 @@ class spell_teleport_timer : public AuraScript
{
Unit* target = GetTarget();
- target->CastSpell(target, Durotar::Spells::TeleportPlayerToCrashSite, CastSpellExtraArgsInit{
+ target->CancelTravelShapeshiftForm();
+ target->CastSpell(nullptr, Spells::TeleportPlayerToCrashSite, CastSpellExtraArgsInit{
.TriggerFlags = TRIGGERED_IGNORE_CAST_IN_PROGRESS | TRIGGERED_DONT_REPORT_CAST_ERROR
});
}
void Register() override
{
- AfterEffectRemove += AuraEffectRemoveFn(spell_teleport_timer::HandleAfterEffectRemove, EFFECT_0, SPELL_AURA_DUMMY, AURA_EFFECT_HANDLE_REAL);
+ AfterEffectRemove += AuraEffectRemoveFn(spell_teleport_timer_horde::HandleAfterEffectRemove, EFFECT_0, SPELL_AURA_DUMMY, AURA_EFFECT_HANDLE_REAL);
}
};
+}
void AddSC_durotar()
{
+ using namespace Scripts::Kalimdor::Durotar;
+
new npc_lazy_peon();
RegisterSpellScript(spell_voodoo);
RegisterCreatureAI(npc_mithaka);
@@ -1340,6 +1347,6 @@ void AddSC_durotar()
new at_hellscreams_fist_gunship();
// Spells
- RegisterSpellScript(spell_teleport_prep);
- RegisterSpellScript(spell_teleport_timer);
+ RegisterSpellScript(spell_teleport_prep_horde);
+ RegisterSpellScript(spell_teleport_timer_horde);
}
diff --git a/src/server/scripts/Kalimdor/zone_orgrimmar.cpp b/src/server/scripts/Kalimdor/zone_orgrimmar.cpp
index 83c2e6711b6..34667e18522 100644
--- a/src/server/scripts/Kalimdor/zone_orgrimmar.cpp
+++ b/src/server/scripts/Kalimdor/zone_orgrimmar.cpp
@@ -22,13 +22,13 @@
#include "SpellScript.h"
#include "Unit.h"
-namespace Orgrimmar
+namespace Scripts::Kalimdor::Orgrimmar
{
- namespace Spells
- {
- static constexpr uint32 MOPHordeIntroMoviePlay = 130409;
- static constexpr uint32 FadeToBlack = 130411;
- }
+namespace Spells
+{
+ // The Art of War
+ static constexpr uint32 MOPHordeIntroMoviePlay = 130409;
+ static constexpr uint32 FadeToBlack = 130411;
}
// 130412 - Art of War Movie Aura
@@ -37,15 +37,13 @@ class spell_art_of_war_movie_aura : public SpellScript
bool Validate(SpellInfo const* /*spellInfo*/) override
{
return ValidateSpellInfo({
- Orgrimmar::Spells::FadeToBlack
+ Spells::FadeToBlack
});
}
void HandleHitTarget(SpellEffIndex /*effIndex*/) const
{
- Unit* hitUnit = GetHitUnit();
-
- hitUnit->CastSpell(hitUnit, Orgrimmar::Spells::FadeToBlack, CastSpellExtraArgsInit{
+ GetHitUnit()->CastSpell(nullptr, Spells::FadeToBlack, CastSpellExtraArgsInit{
.TriggerFlags = TRIGGERED_IGNORE_CAST_IN_PROGRESS | TRIGGERED_DONT_REPORT_CAST_ERROR,
.OriginalCastId = GetSpell()->m_castId
});
@@ -57,20 +55,19 @@ class spell_art_of_war_movie_aura : public SpellScript
}
};
+// 130412 - Art of War Movie Aura
class spell_art_of_war_movie_aura_aura : public AuraScript
{
bool Validate(SpellInfo const* /*spellInfo*/) override
{
return ValidateSpellInfo({
- Orgrimmar::Spells::MOPHordeIntroMoviePlay
+ Spells::MOPHordeIntroMoviePlay
});
}
void HandleAfterEffectRemove(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/) const
{
- Unit* target = GetTarget();
-
- target->CastSpell(target, Orgrimmar::Spells::MOPHordeIntroMoviePlay, CastSpellExtraArgsInit{
+ GetTarget()->CastSpell(nullptr, Spells::MOPHordeIntroMoviePlay, CastSpellExtraArgsInit{
.TriggerFlags = TRIGGERED_IGNORE_CAST_IN_PROGRESS | TRIGGERED_DONT_REPORT_CAST_ERROR
});
}
@@ -80,9 +77,12 @@ class spell_art_of_war_movie_aura_aura : public AuraScript
AfterEffectRemove += AuraEffectRemoveFn(spell_art_of_war_movie_aura_aura::HandleAfterEffectRemove, EFFECT_0, SPELL_AURA_DUMMY, AURA_EFFECT_HANDLE_REAL);
}
};
+}
void AddSC_orgrimmar()
{
+ using namespace Scripts::Kalimdor::Orgrimmar;
+
// Spells
RegisterSpellAndAuraScriptPair(spell_art_of_war_movie_aura, spell_art_of_war_movie_aura_aura);
}
diff --git a/src/server/scripts/Pandaria/zone_the_jade_forest.cpp b/src/server/scripts/Pandaria/zone_the_jade_forest.cpp
index 834c27926ab..593933bac3b 100644
--- a/src/server/scripts/Pandaria/zone_the_jade_forest.cpp
+++ b/src/server/scripts/Pandaria/zone_the_jade_forest.cpp
@@ -21,16 +21,23 @@
#include "SpellScript.h"
#include "Unit.h"
-namespace TheJadeForest
+namespace Scripts::Pandaria::TheJadeForest
{
- namespace Spells
- {
- static constexpr uint32 CancelBlackout = 130812;
- static constexpr uint32 TeleportPrep = 130810;
- static constexpr uint32 TeleportPlayerToCrashSite = 102930;
- static constexpr uint32 CutToBlack = 122343;
- static constexpr uint32 WakeUpDead = 122344;
- }
+namespace Spells
+{
+ // Into the Mists & The Mission
+ static constexpr uint32 CancelBlackout = 130812;
+ static constexpr uint32 CutToBlack = 122343;
+
+ // Into the Mists
+ static constexpr uint32 TeleportPrepHorde = 130810;
+ static constexpr uint32 TeleportPlayerToCrashSite = 102930;
+ static constexpr uint32 WakeUpDead = 122344;
+
+ // The Mission
+ static constexpr uint32 TeleportPrepAlliance = 130832;
+ static constexpr uint32 TheMissionTeleportPlayer = 130321;
+ static constexpr uint32 TheMissionSceneJF = 131057;
}
// 121545 - Into the Mists Scene - JF
@@ -39,7 +46,7 @@ class spell_into_the_mists_scene_jf : public SpellScript
bool Validate(SpellInfo const* /*spellInfo*/) override
{
return ValidateSpellInfo({
- TheJadeForest::Spells::CancelBlackout
+ Spells::CancelBlackout
});
}
@@ -47,7 +54,8 @@ class spell_into_the_mists_scene_jf : public SpellScript
{
Unit* hitUnit = GetHitUnit();
- hitUnit->CastSpell(hitUnit, TheJadeForest::Spells::CancelBlackout, CastSpellExtraArgsInit{
+ hitUnit->CancelMountAura();
+ hitUnit->CastSpell(nullptr, Spells::CancelBlackout, CastSpellExtraArgsInit{
.TriggerFlags = TRIGGERED_IGNORE_CAST_IN_PROGRESS | TRIGGERED_DONT_REPORT_CAST_ERROR,
.OriginalCastId = GetSpell()->m_castId
});
@@ -59,36 +67,44 @@ class spell_into_the_mists_scene_jf : public SpellScript
}
};
-// 130812 - Cancel Blackout
-class spell_cancel_blackout : public AuraScript
+// 130723 - Into the Mists Scene End
+class spell_into_the_mists_scene_end : public SpellScript
{
bool Validate(SpellInfo const* /*spellInfo*/) override
{
return ValidateSpellInfo({
- TheJadeForest::Spells::TeleportPrep
+ Spells::TeleportPlayerToCrashSite,
+ Spells::CutToBlack,
+ Spells::WakeUpDead
});
}
- void HandleAfterEffectRemove(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/) const
+ void HandleHitTarget(SpellEffIndex /*effIndex*/) const
{
- GetTarget()->RemoveAurasDueToSpell(TheJadeForest::Spells::TeleportPrep);
+ Unit* hitUnit = GetHitUnit();
+
+ CastSpellExtraArgs const& castSpellExtraArgs = CastSpellExtraArgsInit{
+ .TriggerFlags = TRIGGERED_IGNORE_CAST_IN_PROGRESS | TRIGGERED_DONT_REPORT_CAST_ERROR,
+ .OriginalCastId = GetSpell()->m_castId
+ };
+ hitUnit->CastSpell(nullptr, Spells::TeleportPlayerToCrashSite, castSpellExtraArgs);
+ hitUnit->CastSpell(nullptr, Spells::CutToBlack, castSpellExtraArgs);
+ hitUnit->CastSpell(nullptr, Spells::WakeUpDead, castSpellExtraArgs);
}
void Register() override
{
- AfterEffectRemove += AuraEffectRemoveFn(spell_cancel_blackout::HandleAfterEffectRemove, EFFECT_0, SPELL_AURA_DUMMY, AURA_EFFECT_HANDLE_REAL);
+ OnEffectHitTarget += SpellEffectFn(spell_into_the_mists_scene_end::HandleHitTarget, EFFECT_1, SPELL_EFFECT_SCRIPT_EFFECT);
}
};
-// 130723 - Into the Mists Scene End
-class spell_into_the_mists_scene_end : public SpellScript
+// 131057 - The Mission Scene - JF
+class spell_the_mission_scene_jf : public SpellScript
{
bool Validate(SpellInfo const* /*spellInfo*/) override
{
return ValidateSpellInfo({
- TheJadeForest::Spells::TeleportPlayerToCrashSite,
- TheJadeForest::Spells::CutToBlack,
- TheJadeForest::Spells::WakeUpDead
+ Spells::CancelBlackout
});
}
@@ -96,25 +112,84 @@ class spell_into_the_mists_scene_end : public SpellScript
{
Unit* hitUnit = GetHitUnit();
+ hitUnit->CancelMountAura();
+ hitUnit->CastSpell(nullptr, Spells::CancelBlackout, CastSpellExtraArgsInit{
+ .TriggerFlags = TRIGGERED_IGNORE_CAST_IN_PROGRESS | TRIGGERED_DONT_REPORT_CAST_ERROR,
+ .OriginalCastId = GetSpell()->m_castId
+ });
+ }
+
+ void Register() override
+ {
+ OnEffectHitTarget += SpellEffectFn(spell_the_mission_scene_jf::HandleHitTarget, EFFECT_3, SPELL_EFFECT_SCRIPT_EFFECT);
+ }
+};
+
+// 131059 - The Mission Scene End
+class spell_the_mission_scene_end : public SpellScript
+{
+ bool Validate(SpellInfo const* /*spellInfo*/) override
+ {
+ return ValidateSpellInfo({
+ Spells::TheMissionSceneJF,
+ Spells::TheMissionTeleportPlayer,
+ Spells::CutToBlack
+ });
+ }
+
+ void HandleHitTarget(SpellEffIndex /*effIndex*/) const
+ {
+ Unit* hitUnit = GetHitUnit();
+
+ // EFFECT_0 is incorrectly removing Horde aura
+ hitUnit->RemoveAurasDueToSpell(Spells::TheMissionSceneJF);
+
CastSpellExtraArgs const& castSpellExtraArgs = CastSpellExtraArgsInit{
.TriggerFlags = TRIGGERED_IGNORE_CAST_IN_PROGRESS | TRIGGERED_DONT_REPORT_CAST_ERROR,
.OriginalCastId = GetSpell()->m_castId
};
- hitUnit->CastSpell(hitUnit, TheJadeForest::Spells::TeleportPlayerToCrashSite, castSpellExtraArgs);
- hitUnit->CastSpell(hitUnit, TheJadeForest::Spells::CutToBlack, castSpellExtraArgs);
- hitUnit->CastSpell(hitUnit, TheJadeForest::Spells::WakeUpDead, castSpellExtraArgs);
+ hitUnit->CastSpell(nullptr, Spells::TheMissionTeleportPlayer, castSpellExtraArgs);
+ hitUnit->CastSpell(nullptr, Spells::CutToBlack, castSpellExtraArgs);
}
void Register() override
{
- OnEffectHitTarget += SpellEffectFn(spell_into_the_mists_scene_end::HandleHitTarget, EFFECT_1, SPELL_EFFECT_SCRIPT_EFFECT);
+ OnEffectHitTarget += SpellEffectFn(spell_the_mission_scene_end::HandleHitTarget, EFFECT_1, SPELL_EFFECT_SCRIPT_EFFECT);
}
};
+// 130812 - Cancel Blackout
+class spell_cancel_blackout : public AuraScript
+{
+ bool Validate(SpellInfo const* /*spellInfo*/) override
+ {
+ return ValidateSpellInfo({
+ Spells::TeleportPrepHorde,
+ Spells::TeleportPrepAlliance
+ });
+ }
+
+ void HandleAfterEffectRemove(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/) const
+ {
+ GetTarget()->RemoveAurasDueToSpell(Spells::TeleportPrepHorde);
+ GetTarget()->RemoveAurasDueToSpell(Spells::TeleportPrepAlliance);
+ }
+
+ void Register() override
+ {
+ AfterEffectRemove += AuraEffectRemoveFn(spell_cancel_blackout::HandleAfterEffectRemove, EFFECT_0, SPELL_AURA_DUMMY, AURA_EFFECT_HANDLE_REAL);
+ }
+};
+}
+
void AddSC_zone_the_jade_forest()
{
+ using namespace Scripts::Pandaria::TheJadeForest;
+
// Spells
RegisterSpellScript(spell_into_the_mists_scene_jf);
- RegisterSpellScript(spell_cancel_blackout);
RegisterSpellScript(spell_into_the_mists_scene_end);
+ RegisterSpellScript(spell_the_mission_scene_jf);
+ RegisterSpellScript(spell_the_mission_scene_end);
+ RegisterSpellScript(spell_cancel_blackout);
}