From 2209e08481be3aa32b855fe62c531a6dbe267566 Mon Sep 17 00:00:00 2001 From: sogladev Date: Sat, 25 Apr 2026 23:21:07 +0200 Subject: [PATCH] fix(Scripts/Northrend): fix console errors due to Freya WP scripts (#25581) --- .../rev_1777077414077078712.sql | 4 +++ .../Northrend/Ulduar/Ulduar/boss_freya.cpp | 35 +++++++++++++++++++ 2 files changed, 39 insertions(+) create mode 100644 data/sql/updates/pending_db_world/rev_1777077414077078712.sql diff --git a/data/sql/updates/pending_db_world/rev_1777077414077078712.sql b/data/sql/updates/pending_db_world/rev_1777077414077078712.sql new file mode 100644 index 000000000..ce41d817a --- /dev/null +++ b/data/sql/updates/pending_db_world/rev_1777077414077078712.sql @@ -0,0 +1,4 @@ +-- +-- Remove AoE spell cast to entry, that may sometimes not be in range. +DELETE FROM `waypoint_scripts` WHERE `id` IN (488, 489, 490) AND `guid` IN (891, 892, 893); +UPDATE `waypoint_data` SET `action` = 0 WHERE `id` = 1365540 AND `point` IN (4, 10, 18); diff --git a/src/server/scripts/Northrend/Ulduar/Ulduar/boss_freya.cpp b/src/server/scripts/Northrend/Ulduar/Ulduar/boss_freya.cpp index cb3668d45..3be8247d1 100644 --- a/src/server/scripts/Northrend/Ulduar/Ulduar/boss_freya.cpp +++ b/src/server/scripts/Northrend/Ulduar/Ulduar/boss_freya.cpp @@ -48,6 +48,11 @@ enum FreyaSpells SPELL_UNSTABLE_SUN_FREYA_DAMAGE = 62451, SPELL_UNSTABLE_SUN_VISUAL = 62216, + // CHANNEL STALKER VISUALS + SPELL_FREYA_DUMMY_GREEN = 63295, + SPELL_FREYA_DUMMY_YELLOW = 63292, + SPELL_FREYA_DUMMY_BLUE = 63294, + // ELDERS SPELL_DRAINED_OF_POWER = 62467, SPELL_STONEBARK_ESSENCE = 62483, @@ -164,6 +169,7 @@ enum Texts enum FreyaNPCs { NPC_NATURE_BOMB = 34129, + NPC_CHANNEL_STALKER_FREYA = 33575, NPC_IRON_ROOT_TRIGGER = 33088, NPC_FREYA_UNSTABLE_SUN_BEAM = 33170, NPC_UNSTABLE_SUN_BRIGHTLEAF = 33050, // 10 SECS? @@ -196,6 +202,10 @@ enum Misc DATA_BACK_TO_NATURE = 2, CRITERIA_LUMBERJACKED = 21686, + + WAYPOINT_GREEN = 4, // path: 1365540 + WAYPOINT_YELLOW = 10, + WAYPOINT_BLUE = 18, }; struct boss_freya : public BossAI @@ -591,6 +601,31 @@ struct boss_freya : public BossAI { return me->GetPositionX() < 2135.0f; } + + void MovementInform(uint32 type, uint32 pointId) override + { + if (type != WAYPOINT_MOTION_TYPE) + return; + + Unit* target = GetClosestCreatureWithEntry(me, NPC_CHANNEL_STALKER_FREYA, 30.0f); + if (!target) + return; + + switch (pointId) + { + case WAYPOINT_GREEN: + DoCast(target, SPELL_FREYA_DUMMY_GREEN); + break; + case WAYPOINT_YELLOW: + DoCast(target, SPELL_FREYA_DUMMY_YELLOW); + break; + case WAYPOINT_BLUE: + DoCast(target, SPELL_FREYA_DUMMY_BLUE); + break; + default: + break; + } + } }; struct boss_freya_elder_stonebark : public ScriptedAI