diff options
author | Keader <keader.android@gmail.com> | 2017-02-22 13:13:22 -0300 |
---|---|---|
committer | Shauren <shauren.trinity@gmail.com> | 2019-08-17 20:04:14 +0200 |
commit | b428bfbd141a1b69412aec77f7e3882d73d0efbc (patch) | |
tree | bdcdef09a5c039290c317a54d2b70419ebc425a2 | |
parent | 420f2e8ec2c5f19db313492c52a730c87fa2dab6 (diff) |
Core/Scripts: Fixed Illidan epic sounds again (#19184)
(cherrypicked from bb3c964e7c0860d4448a065a2d1d37b52704da76)
4 files changed, 23 insertions, 12 deletions
diff --git a/sql/updates/world/master/2019_07_28_03_world_2017_02_22_01_world.sql b/sql/updates/world/master/2019_07_28_03_world_2017_02_22_01_world.sql new file mode 100644 index 00000000000..87bb090d086 --- /dev/null +++ b/sql/updates/world/master/2019_07_28_03_world_2017_02_22_01_world.sql @@ -0,0 +1,3 @@ +DELETE FROM `gameobject` WHERE guid=45; -- guid 44 used different in master +INSERT INTO `gameobject` (`guid`, `id`, `map`, `zoneId`, `areaId`, `spawnDifficulties`, `PhaseId`, `position_x`, `position_y`, `position_z`, `orientation`, `rotation0`, `rotation1`, `rotation2`, `rotation3`, `spawntimesecs`, `animprogress`, `state`) VALUES +(45, 185966, 564, 3959, 3959, '14,33', 0, 706.406006, 302.182373, 353.743744, 0.157961, 0, 0, 0, 0, 7200, 0, 1); diff --git a/src/server/scripts/Outland/BlackTemple/black_temple.h b/src/server/scripts/Outland/BlackTemple/black_temple.h index 2218eab2500..d27b17303d4 100644 --- a/src/server/scripts/Outland/BlackTemple/black_temple.h +++ b/src/server/scripts/Outland/BlackTemple/black_temple.h @@ -56,7 +56,9 @@ enum BTDataTypes DATA_ESSENCE_OF_SUFFERING = 20, DATA_ESSENCE_OF_DESIRE = 21, - DATA_ESSENCE_OF_ANGER = 22 + DATA_ESSENCE_OF_ANGER = 22, + + DATA_ILLIDAN_MUSIC_CONTROLLER = 23, }; enum TriggerEmotes @@ -125,7 +127,8 @@ enum BTGameObjectIds GO_ILLIDAN_GATE = 185905, GO_ILLIDAN_DOOR_R = 186261, GO_ILLIDAN_DOOR_L = 186262, - GO_ILLIDAN_CAGE_TRAP = 185916 + GO_ILLIDAN_CAGE_TRAP = 185916, + GO_ILLIDAN_MUSIC_CONTROLLER = 185966 }; enum BlackTempleMisc diff --git a/src/server/scripts/Outland/BlackTemple/boss_illidan.cpp b/src/server/scripts/Outland/BlackTemple/boss_illidan.cpp index e837777090b..57606828455 100644 --- a/src/server/scripts/Outland/BlackTemple/boss_illidan.cpp +++ b/src/server/scripts/Outland/BlackTemple/boss_illidan.cpp @@ -197,8 +197,7 @@ enum IllidanMisc SUMMON_GROUP = 1, DATA_AKAMA_TELEPORT_POSITION = 0, MAX_MINIONS_NUMBER = 10, - SPELL_GLAIVE_VISUAL_KIT = 7668, - BLACK_TEMPLE_ZONE_ID = 3959 + SPELL_GLAIVE_VISUAL_KIT = 7668 }; enum IllidanActions @@ -480,7 +479,8 @@ public: { _EnterCombat(); me->SetCanDualWield(true); - me->GetMap()->SetZoneMusic(BLACK_TEMPLE_ZONE_ID, EVENT_BT_SUMMIT_WALK_3_SOUND_ID); + if (GameObject* musicController = instance->GetGameObject(DATA_ILLIDAN_MUSIC_CONTROLLER)) + musicController->PlayDirectMusic(EVENT_BT_SUMMIT_WALK_3_SOUND_ID); specialEvents.ScheduleEvent(EVENT_EVADE_CHECK, Seconds(10)); specialEvents.ScheduleEvent(EVENT_BERSERK, Minutes(25)); ScheduleEvents(GROUP_PHASE_1, GROUP_PHASE_1); @@ -850,7 +850,8 @@ public: pos.Relocate(triggers.front()); pos.SetOrientation(0.0f); me->GetMotionMaster()->MovePoint(POINT_THROW_GLAIVE, pos); - me->GetMap()->SetZoneMusic(BLACK_TEMPLE_ZONE_ID, EVENT_BT_STORM_WALK_HERO_2_SOUND_ID); + if (GameObject* musicController = instance->GetGameObject(DATA_ILLIDAN_MUSIC_CONTROLLER)) + musicController->PlayDirectMusic(EVENT_BT_STORM_WALK_HERO_2_SOUND_ID); break; } case EVENT_THROW_WARGLAIVE: @@ -919,7 +920,8 @@ public: me->RemoveUnitFlag(UNIT_FLAG_NOT_SELECTABLE); me->SetReactState(REACT_AGGRESSIVE); ScheduleEvents(GROUP_PHASE_3, GROUP_PHASE_3); - me->GetMap()->SetZoneMusic(BLACK_TEMPLE_ZONE_ID, EVENT_BT_STORM_WALK_UNI_3_SOUND_ID); + if (GameObject* musicController = instance->GetGameObject(DATA_ILLIDAN_MUSIC_CONTROLLER)) + musicController->PlayDirectMusic(EVENT_BT_STORM_WALK_UNI_3_SOUND_ID); break; case EVENT_AGONIZING_FLAMES: DoCastSelf(SPELL_AGONIZING_FLAMES_SELECTOR); @@ -994,7 +996,8 @@ public: break; case EVENT_DEFEATED_TEXT: Talk(SAY_ILLIDAN_DEFEATED); - me->GetMap()->SetZoneMusic(BLACK_TEMPLE_ZONE_ID, EVENT_BT_ARRIVAL_WALK_HERO_1_SOUND_ID); + if (GameObject* musicController = instance->GetGameObject(DATA_ILLIDAN_MUSIC_CONTROLLER)) + musicController->PlayDirectMusic(EVENT_BT_ARRIVAL_WALK_HERO_1_SOUND_ID); events.ScheduleEvent(EVENT_QUIET_SUICIDE, Seconds(18)); break; case EVENT_QUIET_SUICIDE: @@ -1255,7 +1258,8 @@ public: _events.ScheduleEvent(EVENT_AKAMA_START_SOUND, Seconds(5)); break; case EVENT_AKAMA_START_SOUND: - me->GetMap()->SetZoneMusic(BLACK_TEMPLE_ZONE_ID, EVENT_BT_SUMMIT_WALK_SOUND_ID); + if (GameObject* musicController = _instance->GetGameObject(DATA_ILLIDAN_MUSIC_CONTROLLER)) + musicController->PlayDirectMusic(EVENT_BT_SUMMIT_WALK_SOUND_ID); break; case EVENT_AKAMA_THANKS: Talk(SAY_AKAMA_SALUTE); diff --git a/src/server/scripts/Outland/BlackTemple/instance_black_temple.cpp b/src/server/scripts/Outland/BlackTemple/instance_black_temple.cpp index b3cf99ddc93..b0aeb80e17c 100644 --- a/src/server/scripts/Outland/BlackTemple/instance_black_temple.cpp +++ b/src/server/scripts/Outland/BlackTemple/instance_black_temple.cpp @@ -81,9 +81,10 @@ ObjectData const creatureData[] = ObjectData const gameObjectData[] = { - { GO_ILLIDAN_GATE, DATA_GO_ILLIDAN_GATE }, - { GO_DEN_OF_MORTAL_DOOR, DATA_GO_DEN_OF_MORTAL_DOOR }, - { 0, 0 } //END + { GO_ILLIDAN_GATE, DATA_GO_ILLIDAN_GATE }, + { GO_DEN_OF_MORTAL_DOOR, DATA_GO_DEN_OF_MORTAL_DOOR }, + { GO_ILLIDAN_MUSIC_CONTROLLER, DATA_ILLIDAN_MUSIC_CONTROLLER }, + { 0, 0 } //END }; class instance_black_temple : public InstanceMapScript |