diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/server/game/Spells/SpellMgr.cpp | 11 | ||||
-rw-r--r-- | src/server/scripts/Pandaria/zone_the_wandering_isle.cpp | 27 |
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(); |