aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/server/game/Spells/SpellMgr.cpp11
-rw-r--r--src/server/scripts/Pandaria/zone_the_wandering_isle.cpp27
2 files changed, 38 insertions, 0 deletions
diff --git a/src/server/game/Spells/SpellMgr.cpp b/src/server/game/Spells/SpellMgr.cpp
index 5ad8c3e71d1..74ce9528436 100644
--- a/src/server/game/Spells/SpellMgr.cpp
+++ b/src/server/game/Spells/SpellMgr.cpp
@@ -4856,6 +4856,7 @@ void SpellMgr::LoadSpellInfoCorrections()
// ENDOF THE AZURE VAULT SPELLS
//
+
// Summon Master Li Fei
ApplySpellFix({ 102445 }, [](SpellInfo* spellInfo)
{
@@ -4865,6 +4866,16 @@ void SpellMgr::LoadSpellInfoCorrections()
});
});
+ // Summon Amberleaf Troublemaker
+ ApplySpellFix({ 114698 }, [](SpellInfo* spellInfo)
+ {
+ spellInfo->DurationEntry = sSpellDurationStore.LookupEntry(4); // 2mins
+ ApplySpellEffectFix(spellInfo, EFFECT_0, [](SpellEffectInfo* spellEffectInfo)
+ {
+ spellEffectInfo->TargetA = SpellImplicitTargetInfo(TARGET_DEST_DEST);
+ });
+ });
+
// Earthquake
ApplySpellFix({ 61882 }, [](SpellInfo* spellInfo)
{
diff --git a/src/server/scripts/Pandaria/zone_the_wandering_isle.cpp b/src/server/scripts/Pandaria/zone_the_wandering_isle.cpp
index c9a04bc31ec..7ab94ce99e1 100644
--- a/src/server/scripts/Pandaria/zone_the_wandering_isle.cpp
+++ b/src/server/scripts/Pandaria/zone_the_wandering_isle.cpp
@@ -1207,6 +1207,32 @@ class spell_meditation_timer_bar : public AuraScript
}
};
+std::array<Position, 9> AmberleafTroublemakerPositions = { {
+ { 1181.6615f, 3451.1711f, 102.85520f },
+ { 1187.9219f, 3448.9497f, 102.44913f },
+ { 1182.2552f, 3441.4202f, 102.43922f },
+ { 1181.6615f, 3451.1711f, 102.85520f },
+ { 1180.1442f, 3448.6729f, 102.65444f },
+ { 1187.4080f, 3440.7612f, 102.53220f },
+ { 1186.5817f, 3443.6372f, 102.41002f },
+ { 1188.3351f, 3443.0390f, 102.41056f },
+ { 1181.8802f, 3446.1953f, 102.41484f }
+} };
+
+// 114698 - Summon Amberleaf Troublemaker
+class spell_summon_amberleaf_troublemaker : public SpellScript
+{
+ void SetDest(SpellDestination& dest)
+ {
+ dest.Relocate(Trinity::Containers::SelectRandomContainerElement(AmberleafTroublemakerPositions));
+ }
+
+ void Register() override
+ {
+ OnDestinationTargetSelect += SpellDestinationTargetSelectFn(spell_summon_amberleaf_troublemaker::SetDest, EFFECT_0, TARGET_DEST_DEST);
+ }
+};
+
void AddSC_zone_the_wandering_isle()
{
RegisterCreatureAI(npc_tushui_huojin_trainee);
@@ -1225,6 +1251,7 @@ void AddSC_zone_the_wandering_isle()
RegisterSpellScript(spell_force_summoner_to_ride_vehicle);
RegisterSpellScript(spell_ride_drake);
RegisterSpellScript(spell_meditation_timer_bar);
+ RegisterSpellScript(spell_summon_amberleaf_troublemaker);
new at_min_dimwind_captured();
new at_cave_of_meditation();