diff --git a/data/sql/updates/pending_db_world/rev_1782661989089356961.sql b/data/sql/updates/pending_db_world/rev_1782661989089356961.sql new file mode 100644 index 0000000000..5d4ee9eb52 --- /dev/null +++ b/data/sql/updates/pending_db_world/rev_1782661989089356961.sql @@ -0,0 +1,11 @@ +-- +-- 62375 Gathering Speed is not removed by Evade +-- SPELL_ATTR0_CU_IGNORE_EVADE = 0x00000800 +DELETE FROM `spell_custom_attr` WHERE `spell_id` = 62375; +INSERT INTO `spell_custom_attr` (`spell_id`, `attributes`) VALUES (62375, 0x800); + +-- Flame Leviathan +UPDATE `creature_template_addon` SET `visibilityDistanceType` = 4 WHERE (`entry` IN (33113, 33114, 33139, 34003, 34111, 33143)); + +-- Ulduar Colossus +UPDATE `creature_addon` SET `visibilityDistanceType`=4 WHERE `guid` IN (137476, 137477, 137478, 137479, 137480) diff --git a/src/server/scripts/Northrend/Ulduar/Ulduar/boss_flame_leviathan.cpp b/src/server/scripts/Northrend/Ulduar/Ulduar/boss_flame_leviathan.cpp index f763c60a45..a1cb2ebec9 100644 --- a/src/server/scripts/Northrend/Ulduar/Ulduar/boss_flame_leviathan.cpp +++ b/src/server/scripts/Northrend/Ulduar/Ulduar/boss_flame_leviathan.cpp @@ -121,7 +121,6 @@ enum Events EVENT_MIMIRONS_INFERNO = 8, EVENT_THORIMS_HAMMER = 9, EVENT_SOUND_BEGINNING = 10, - EVENT_POSITION_CHECK = 11, }; enum Texts @@ -209,13 +208,13 @@ struct boss_flame_leviathan : public BossAI void ScheduleEvents(); void SummonTowerHelpers(uint8 towerId); - // Original void JustReachedHome() override { _JustReachedHome(); // For achievement instance->StorePersistentData(PERSISTENT_DATA_UNBROKEN, 0); me->setActive(false); + me->RemoveAurasDueToSpell(SPELL_GATHERING_SPEED); } void MoveInLineOfSight(Unit*) override {} @@ -380,14 +379,6 @@ struct boss_flame_leviathan : public BossAI switch (events.ExecuteEvent()) { - case EVENT_POSITION_CHECK: - if (me->GetPositionX() > 450 || me->GetPositionX() < 120) - { - EnterEvadeMode(); - return; - } - events.Repeat(5s); - break; case EVENT_PURSUE: Talk(FLAME_LEVIATHAN_SAY_PURSUE); me->CastSpell(me, SPELL_PURSUED, false); @@ -577,7 +568,6 @@ void boss_flame_leviathan::ScheduleEvents() events.RescheduleEvent(EVENT_VENT, 20s); events.RescheduleEvent(EVENT_SPEED, 15s); events.RescheduleEvent(EVENT_SOUND_BEGINNING, 10s); - events.RescheduleEvent(EVENT_POSITION_CHECK, 5s); events.RescheduleEvent(EVENT_PURSUE, 0ms); } diff --git a/src/server/scripts/Northrend/Ulduar/Ulduar/instance_ulduar.cpp b/src/server/scripts/Northrend/Ulduar/Ulduar/instance_ulduar.cpp index 80b0a0a481..5712fe72f8 100644 --- a/src/server/scripts/Northrend/Ulduar/Ulduar/instance_ulduar.cpp +++ b/src/server/scripts/Northrend/Ulduar/Ulduar/instance_ulduar.cpp @@ -164,6 +164,11 @@ ObjectData const gameobjectData[] = { 0, 0 } }; +BossBoundaryData const boundaries = +{ + { BOSS_LEVIATHAN, new RectangleBoundary(130.0f, 450.0f, -170.0f, 110.0f) }, +}; + class instance_ulduar : public InstanceMapScript { public: @@ -183,6 +188,7 @@ public: SetPersistentDataCount(MAX_PERSISTENT_DATA); LoadDoorData(doorData); LoadObjectData(creatureData, gameobjectData); + LoadBossBoundaries(boundaries); Initialize(); };