diff options
author | Andrew <47818697+Nyeriah@users.noreply.github.com> | 2025-09-15 16:08:00 -0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-09-15 16:08:00 -0300 |
commit | 900f45514dcfc5ec36eae453fa01540d38ff9d6b (patch) | |
tree | 6e0567a064a390e60cf0fb13122ed9337ecd1c20 /src/server | |
parent | 738ab902a10791176d6fb2e099e39495404c56a6 (diff) |
fix(DB/SAI): Fix several A Returning to Resting quest issues (#22930)
Diffstat (limited to 'src/server')
-rw-r--r-- | src/server/scripts/Northrend/zone_howling_fjord.cpp | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/src/server/scripts/Northrend/zone_howling_fjord.cpp b/src/server/scripts/Northrend/zone_howling_fjord.cpp index c6405cc18c..6022af4bca 100644 --- a/src/server/scripts/Northrend/zone_howling_fjord.cpp +++ b/src/server/scripts/Northrend/zone_howling_fjord.cpp @@ -394,6 +394,38 @@ public: } }; +enum RodinLightningSpells +{ + SPELL_RODIN_LIGHTNING_START = 44787, + SPELL_RODIN_LIGHTNING_END = 44791, + + NPC_RODIN = 24876 +}; + +struct npc_rodin_lightning_enabler : public ScriptedAI +{ + npc_rodin_lightning_enabler(Creature* creature) : ScriptedAI(creature) {} + + void Reset() override + { + _scheduler.Schedule(1s, [this](TaskContext context) + { + if (Creature* rodin = me->FindNearestCreature(NPC_RODIN, 10.0f)) + DoCast(rodin, urand(SPELL_RODIN_LIGHTNING_START, SPELL_RODIN_LIGHTNING_END)); + + context.Repeat(2s, 8s); + }); + } + + void UpdateAI(uint32 /*diff*/) override + { + _scheduler.Update(); + } + +private: + TaskScheduler _scheduler; +}; + enum HawkHunting { SPELL_HAWK_HUNTING_ITEM = 44408 @@ -431,5 +463,6 @@ void AddSC_howling_fjord() new npc_apothecary_hanes(); new npc_plaguehound_tracker(); new npc_razael_and_lyana(); + RegisterCreatureAI(npc_rodin_lightning_enabler); RegisterSpellScript(spell_hawk_hunting); } |