diff options
3 files changed, 734 insertions, 0 deletions
diff --git a/sql/updates/world/master/2025_10_04_00_world.sql b/sql/updates/world/master/2025_10_04_00_world.sql new file mode 100644 index 00000000000..48af133c41b --- /dev/null +++ b/sql/updates/world/master/2025_10_04_00_world.sql @@ -0,0 +1,398 @@ +SET @CGUID := 10006845; +SET @OGUID := 10001698; +SET @WORLD_SAFE_LOC_ID := 100101; +SET @SPAWN_GROUP := 1273; + +SET @AT_WIDTH := 10; +SET @AT_LENGTH := 35; +SET @AT_HEIGHT := 15; +SET @AT_ID := 171; +SET @AT_PROP_ID := 166; +SET @AT_SPAWN_ID = 269; + +DELETE FROM `areatrigger_template` WHERE `Id` = @AT_ID AND `IsCustom` = 1; +INSERT INTO `areatrigger_template` (`Id`, `IsCustom`) VALUES +(@AT_ID, 1); + +DELETE FROM `areatrigger_create_properties` WHERE `Id` = @AT_PROP_ID AND `IsCustom` = 1; +INSERT INTO `areatrigger_create_properties` (`Id`, `IsCustom`, `AreaTriggerId`, `IsAreatriggerCustom`, `Shape`, `ShapeData0`, `ShapeData1`, `ShapeData2`, `ShapeData3`, `ShapeData4`, `ShapeData5`, `ShapeData6`, `ShapeData7`) VALUES +(@AT_PROP_ID, 1, @AT_ID, 1, 1, @AT_LENGTH, @AT_WIDTH, @AT_HEIGHT, @AT_LENGTH, @AT_WIDTH, @AT_HEIGHT, 0, 0); + +DELETE FROM `areatrigger_template_actions` WHERE `AreaTriggerId` = @AT_ID AND `IsCustom` = 1; +INSERT INTO `areatrigger_template_actions` (`AreaTriggerId`, `IsCustom`, `ActionType`, `ActionParam`, `TargetType`) VALUES +(@AT_ID, 1, 0, 228212, 0); -- Arena Starting Area Marker + +DELETE FROM `areatrigger` WHERE `SpawnId` BETWEEN @AT_SPAWN_ID+0 AND @AT_SPAWN_ID+1; +INSERT INTO `areatrigger` (`SpawnId`, `AreaTriggerCreatePropertiesId`, `IsCustom`, `MapId`, `PosX`, `PosY`, `PosZ`, `Orientation`, `Comment`) VALUES +(@AT_SPAWN_ID+0, @AT_PROP_ID, 1, 2759, 443.727, 314.306, -24.5936, 1.6772544, 'Cage of Carnage - Entrance Purple'), +(@AT_SPAWN_ID+1, @AT_PROP_ID, 1, 2759, 443.885, 456.386, -24.5629, 4.7431593, 'Cage of Carnage - Entrance Gold'); + +DELETE FROM `world_safe_locs` WHERE `ID` BETWEEN @WORLD_SAFE_LOC_ID + 0 AND @WORLD_SAFE_LOC_ID + 1; +INSERT INTO `world_safe_locs` (`ID`, `MapID`, `LocX`, `LocY`, `LocZ`, `Facing`, `Comment`) VALUES +(@WORLD_SAFE_LOC_ID+0, 2759, 443.727, 314.306, -24.5936, DEGREES(1.6772544), 'Cage of Carnage - Purple Team'), +(@WORLD_SAFE_LOC_ID+1, 2759, 443.885, 456.386, -24.5629, DEGREES(4.7431593), 'Cage of Carnage - Gold Team'); + +DELETE FROM `battleground_scripts` WHERE `MapId` = 2759 AND `BattlemasterListId` = 0; +INSERT INTO `battleground_scripts` (`MapId`, `BattlemasterListId`, `ScriptName`) VALUES +(2759, 0, 'arena_cage_of_carnage'); + +DELETE FROM `battleground_template` WHERE `ID` = 1117; +INSERT INTO `battleground_template` (`ID`, `AllianceStartLoc`, `HordeStartLoc`, `StartMaxDist`, `Weight`, `Comment`) VALUES +(1117, @WORLD_SAFE_LOC_ID+0, @WORLD_SAFE_LOC_ID+1, 0, 1, 'Cage of Carnage'); + +DELETE FROM `gameobject_template_addon` WHERE `entry` IN (478078 /*Door*/, 506572 /*Cage of Carnage East Side Starting Collision*/, 506573 /*Cage of Carnage West side Starting Collision*/, 473878 /*Sewer Grate*/, 473877 /*Sewer Grate*/, 505683 /*11GO_Goblin_Arena_TrapDoor01*/); +INSERT INTO `gameobject_template_addon` (`entry`, `faction`, `flags`, `WorldEffectID`, `AIAnimKitID`) VALUES +(478078, 0, 0x20, 0, 0), -- Door +(506572, 0, 0x100020, 0, 0), -- Cage of Carnage East Side Starting Collision +(506573, 0, 0x100020, 0, 0), -- Cage of Carnage West side Starting Collision +(473878, 0, 0x20, 0, 0), -- Sewer Grate +(473877, 0, 0x20, 0, 0), -- Sewer Grate +(505683, 0, 0x20, 0, 0); -- 11GO_Goblin_Arena_TrapDoor01 + +DELETE FROM `gameobject` WHERE `guid` BETWEEN @OGUID+0 AND @OGUID+106; +INSERT INTO `gameobject` (`guid`, `id`, `map`, `zoneId`, `areaId`, `spawnDifficulties`, `PhaseId`, `PhaseGroup`, `position_x`, `position_y`, `position_z`, `orientation`, `rotation0`, `rotation1`, `rotation2`, `rotation3`, `spawntimesecs`, `animprogress`, `state`, `VerifiedBuild`) VALUES +(@OGUID+0, 525465, 2759, 15332, 15332, '0', '0', 0, 0.325886726379394531, 551.505615234375, 5.800933837890625, 3.486468315124511718, 0, 0, -0.9851694107055664, 0.171584486961364746, 7200, 255, 1, 63305), -- Bean Bag Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+1, 525464, 2759, 15332, 15332, '0', '0', 0, 18.04027938842773437, 532.50067138671875, 5.800936698913574218, 2.24745488166809082, 0, 0, 0.9017181396484375, 0.432324379682540893, 7200, 255, 1, 63305), -- Bean Bag Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+2, 525197, 2759, 15332, 15332, '0', '0', 0, -16.7575874328613281, 947.5001220703125, 2.785342216491699218, 4.712392330169677734, 0, 0, -0.70710563659667968, 0.707107901573181152, 7200, 255, 1, 63305), -- Bench (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+3, 525467, 2759, 15332, 15332, '0', '0', 0, 16.87337493896484375, 514.9034423828125, 17.86402130126953125, 2.356189966201782226, 0, 0, 0.923878669738769531, 0.38268551230430603, 7200, 255, 1, 63305), -- Bean Bag Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+4, 525196, 2759, 15332, 15332, '0', '0', 0, -19.4325237274169921, 947.5001220703125, 2.785341262817382812, 4.712392330169677734, 0, 0, -0.70710563659667968, 0.707107901573181152, 7200, 255, 1, 63305), -- Bench (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+5, 525466, 2759, 15332, 15332, '0', '0', 0, -1.09853553771972656, 551.562255859375, 5.800928115844726562, 4.563417911529541015, 0, 0, -0.7577667236328125, 0.652525544166564941, 7200, 255, 1, 63305), -- Bean Bag Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+6, 525198, 2759, 15332, 15332, '0', '0', 0, 2.195569753646850585, 988.78961181640625, 11.15308666229248046, 1.832597970962524414, 0, 0, 0.793354034423828125, 0.608760535717010498, 7200, 255, 1, 63305), -- Bench (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+7, 525193, 2759, 15332, 15332, '0', '0', 0, -8.76826953887939453, 999.69866943359375, 11.15328025817871093, 2.879789113998413085, 0, 0, 0.991444587707519531, 0.130528271198272705, 7200, 255, 1, 63305), -- Bench (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+8, 525192, 2759, 15332, 15332, '0', '0', 0, -2.11676788330078125, 988.8541259765625, 11.15306568145751953, 1.308997869491577148, 0, 0, 0.608761787414550781, 0.793353080749511718, 7200, 255, 1, 63305), -- Bench (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+9, 525195, 2759, 15332, 15332, '0', '0', 0, 19.29920387268066406, 947.50018310546875, 2.785341262817382812, 4.712392330169677734, 0, 0, -0.70710563659667968, 0.707107901573181152, 7200, 255, 1, 63305), -- Bench (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+10, 525194, 2759, 15332, 15332, '0', '0', 0, 16.624267578125, 947.50018310546875, 2.785340309143066406, 4.712392330169677734, 0, 0, -0.70710563659667968, 0.707107901573181152, 7200, 255, 1, 63305), -- Bench (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+11, 479165, 2759, 15332, 15332, '0', '0', 0, 122.915985107421875, 424.7452392578125, 14.0477762222290039, 3.900179862976074218, 0, 0, -0.92892646789550781, 0.370264261960983276, 7200, 255, 1, 63305), -- Stool (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+12, 479164, 2759, 15332, 15332, '0', '0', 0, 129.81365966796875, 405.911712646484375, 8.184061050415039062, 1.963491797447204589, 0, 0, 0.831468582153320312, 0.555571734905242919, 7200, 255, 1, 63305), -- Fancy Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+13, 455361, 2759, 15332, 15332, '0', '0', 0, -20.8462390899658203, 546.555419921875, 17.86402130126953125, 0.01374827791005373, 0, 0, 0.00687408447265625, 0.999976336956024169, 7200, 255, 1, 63305), -- Fancy Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+14, 479167, 2759, 15332, 15332, '0', '0', 0, 117.160888671875, 417.282012939453125, 23.55408096313476562, 4.773479461669921875, 0, 0, -0.6851816177368164, 0.728372275829315185, 7200, 255, 1, 63305), -- Fancy Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+15, 455360, 2759, 15332, 15332, '0', '0', 0, -13.3388633728027343, 553.869384765625, 17.86402130126953125, 4.7123870849609375, 0, 0, -0.7071075439453125, 0.707105994224548339, 7200, 255, 1, 63305), -- Fancy Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+16, 479166, 2759, 15332, 15332, '0', '0', 0, 120.985443115234375, 404.391082763671875, 8.114322662353515625, 6.03011322021484375, 0, 0, -0.12619876861572265, 0.992004990577697753, 7200, 255, 1, 63305), -- Fancy Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+17, 479163, 2759, 15332, 15332, '0', '0', 0, 125.4969482421875, 401.861419677734375, 14.57009696960449218, 1.509708642959594726, 0, 0, 0.685182571411132812, 0.728371381759643554, 7200, 255, 1, 63305), -- Fancy Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+18, 479162, 2759, 15332, 15332, '0', '0', 0, 116.0111846923828125, 406.791107177734375, 23.56104660034179687, 5.419250965118408203, 0, 0, -0.41865825653076171, 0.908143877983093261, 7200, 255, 1, 63305), -- Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+19, 505683, 2759, 15332, 15332, '0', '0', 0, 443.59033203125, 321.262237548828125, -24.8806037902832031, 1.570798397064208984, 0, 0, 0.7071075439453125, 0.707105994224548339, 7200, 255, 1, 63305), -- 11GO_Goblin_Arena_TrapDoor01 (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+20, 505683, 2759, 15332, 15332, '0', '0', 0, 443.37841796875, 449.341278076171875, -24.8492507934570312, 4.712392330169677734, 0, 0, -0.70710563659667968, 0.707107901573181152, 7200, 255, 1, 63305), -- 11GO_Goblin_Arena_TrapDoor01 (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+21, 473877, 2759, 15332, 15332, '0', '0', 0, 356.2386474609375, 568.727294921875, 15.15458869934082031, 5.122544288635253906, 0, 0, -0.54829216003417968, 0.836286902427673339, 7200, 255, 1, 63305), -- Sewer Grate (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+22, 473878, 2759, 15332, 15332, '0', '0', 0, 268.52630615234375, 564.385009765625, -3.20471692085266113, 2.050761699676513671, 0, 0, 0.85491180419921875, 0.518773376941680908, 7200, 255, 1, 63305), -- Sewer Grate (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+23, 495141, 2759, 15332, 15332, '0', '0', 0, 394.425933837890625, 600.0740966796875, 24.84228897094726562, 0.158200204372406005, 0, 0, 0.07901763916015625, 0.996873199939727783, 7200, 255, 1, 63305), -- Stool (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+24, 495140, 2759, 15332, 15332, '0', '0', 0, 378.77734375, 599.0595703125, 24.82088470458984375, 3.63901376724243164, 0, 0, -0.96923065185546875, 0.246154293417930603, 7200, 255, 1, 63305), -- Stool (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+25, 495142, 2759, 15332, 15332, '0', '0', 0, 381.012908935546875, 598.70916748046875, 18.73786544799804687, 5.874795913696289062, 0, 0, -0.20277881622314453, 0.979224562644958496, 7200, 255, 1, 63305), -- Fancy Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+26, 495137, 2759, 15332, 15332, '0', '0', 0, 368.642578125, 590.95703125, 18.69490814208984375, 1.972219824790954589, 0, 0, 0.83388519287109375, 0.55193793773651123, 7200, 255, 1, 63305), -- Stool (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+27, 455349, 2759, 15332, 15332, '0', '0', 0, -6.41716861724853515, 549.5706787109375, 5.881754875183105468, 5.497788906097412109, 0, 0, -0.38268280029296875, 0.923879802227020263, 7200, 255, 1, 63305), -- Bench (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+28, 495136, 2759, 15332, 15332, '0', '0', 0, 392.986328125, 611.3447265625, 24.81931304931640625, 0.32288438081741333, 0, 0, 0.160741806030273437, 0.98699653148651123, 7200, 255, 1, 63305), -- Stool (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+29, 495139, 2759, 15332, 15332, '0', '0', 0, 379.341796875, 600.70703125, 24.81390571594238281, 6.08247232437133789, 0, 0, -0.10018825531005859, 0.994968533515930175, 7200, 255, 1, 63305), -- Stool (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+30, 455351, 2759, 15332, 15332, '0', '0', 0, 16.07133674621582031, 527.0821533203125, 5.881753921508789062, 2.356189966201782226, 0, 0, 0.923878669738769531, 0.38268551230430603, 7200, 255, 1, 63305), -- Bench (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+31, 495138, 2759, 15332, 15332, '0', '0', 0, 395.967529296875, 601.81793212890625, 24.84229278564453125, 4.606337547302246093, 0, 0, -0.74359035491943359, 0.668635487556457519, 7200, 255, 1, 63305), -- Stool (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+32, 455350, 2759, 15332, 15332, '0', '0', 0, -4.74736690521240234, 551.2564697265625, 5.881754875183105468, 5.497788906097412109, 0, 0, -0.38268280029296875, 0.923879802227020263, 7200, 255, 1, 63305), -- Bench (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+33, 455357, 2759, 15332, 15332, '0', '0', 0, 2.841243267059326171, 515.48846435546875, 5.881755828857421875, 2.356189966201782226, 0, 0, 0.923878669738769531, 0.38268551230430603, 7200, 255, 1, 63305), -- Stool (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+34, 455356, 2759, 15332, 15332, '0', '0', 0, -9.65997505187988281, 523.70123291015625, 6.43730926513671875, 0.785396754741668701, 0, 0, 0.38268280029296875, 0.923879802227020263, 7200, 255, 1, 63305), -- Stool (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+35, 455359, 2759, 15332, 15332, '0', '0', 0, 13.36458778381347656, 512.0887451171875, 17.86402130126953125, 2.094393253326416015, 0, 0, 0.866024971008300781, 0.50000077486038208, 7200, 255, 1, 63305), -- Fancy Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+36, 455358, 2759, 15332, 15332, '0', '0', 0, 20.72269058227539062, 519.81463623046875, 17.86402130126953125, 3.403396368026733398, 0, 0, -0.99144458770751953, 0.130528271198272705, 7200, 255, 1, 63305), -- Fancy Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+37, 455353, 2759, 15332, 15332, '0', '0', 0, 5.640529632568359375, 517.348876953125, 5.881753921508789062, 2.356189966201782226, 0, 0, 0.923878669738769531, 0.38268551230430603, 7200, 255, 1, 63305), -- Stool (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+38, 455352, 2759, 15332, 15332, '0', '0', 0, 17.70462989807128906, 528.7154541015625, 5.881753921508789062, 2.356189966201782226, 0, 0, 0.923878669738769531, 0.38268551230430603, 7200, 255, 1, 63305), -- Bench (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+39, 499159, 2759, 15332, 15332, '0', '0', 0, -23.218963623046875, 542.37420654296875, 5.948953628540039062, 2.356189966201782226, 0, 0, 0.923878669738769531, 0.38268551230430603, 7200, 255, 1, 63305), -- Bench (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+40, 455355, 2759, 15332, 15332, '0', '0', 0, -15.7143983840942382, 538.87396240234375, 5.881753921508789062, 4.97418975830078125, 0, 0, -0.60876083374023437, 0.793353796005249023, 7200, 255, 1, 63305), -- Fancy Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+41, 455354, 2759, 15332, 15332, '0', '0', 0, -18.0155696868896484, 536.34552001953125, 5.881752967834472656, 0, 0, 0, 0, 1, 7200, 255, 1, 63305), -- Fancy Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+42, 499165, 2759, 15332, 15332, '0', '0', 0, -41.225860595703125, 534.64422607421875, 6.707051277160644531, 0.785396754741668701, 0, 0, 0.38268280029296875, 0.923879802227020263, 7200, 255, 1, 63305), -- Bench (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+43, 499164, 2759, 15332, 15332, '0', '0', 0, -36.7888603210449218, 527.624755859375, 6.707051753997802734, 2.139628887176513671, 0, 0, 0.877111434936523437, 0.48028692603111267, 7200, 255, 1, 63305), -- Bench (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+44, 499166, 2759, 15332, 15332, '0', '0', 0, -36.739044189453125, 538.6851806640625, 6.707051277160644531, 4.188792228698730468, 0, 0, -0.86602497100830078, 0.50000077486038208, 7200, 255, 1, 63305), -- Bench (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+45, 479173, 2759, 15332, 15332, '0', '0', 0, 240.801422119140625, 455.694305419921875, 15.81334686279296875, 2.740161895751953125, 0, 0, 0.979924201965332031, 0.199370384216308593, 7200, 255, 1, 63305), -- Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+46, 479172, 2759, 15332, 15332, '0', '0', 0, 235.213134765625, 445.31170654296875, 0.489330291748046875, 3.490667104721069335, 0, 0, -0.98480701446533203, 0.173652306199073791, 7200, 255, 1, 63305), -- Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+47, 499160, 2759, 15332, 15332, '0', '0', 0, -25.6193504333496093, 540.27197265625, 5.948953628540039062, 2.356189966201782226, 0, 0, 0.923878669738769531, 0.38268551230430603, 7200, 255, 1, 63305), -- Bench (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+48, 479175, 2759, 15332, 15332, '0', '0', 0, 247.4295654296875, 444.84844970703125, 15.83253288269042968, 5.846856117248535156, 0, 0, -0.21643829345703125, 0.976296305656433105, 7200, 255, 1, 63305), -- Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+49, 469497, 2759, 15332, 15332, '0', '0', 0, 18.37844467163085937, 991.58551025390625, 5.562197208404541015, 4.712392330169677734, 0, 0, -0.70710563659667968, 0.707107901573181152, 7200, 255, 1, 63305), -- 11GO_Goblin_Decor_TrashPile06 (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+50, 499163, 2759, 15332, 15332, '0', '0', 0, -41.2045249938964843, 531.8770751953125, 6.707051753997802734, 5.497788906097412109, 0, 0, -0.38268280029296875, 0.923879802227020263, 7200, 255, 1, 63305), -- Bench (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+51, 479168, 2759, 15332, 15332, '0', '0', 0, 113.5483856201171875, 415.38714599609375, 14.50669193267822265, 0.706856250762939453, 0, 0, 0.346116065979003906, 0.938191711902618408, 7200, 255, 1, 63305), -- Fancy Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+52, 479171, 2759, 15332, 15332, '0', '0', 0, 118.3330917358398437, 410.6474609375, 14.61388969421386718, 5.611230850219726562, 0, 0, -0.32969188690185546, 0.944088578224182128, 7200, 255, 1, 63305), -- Fancy Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+53, 479181, 2759, 15332, 15332, '0', '0', 0, 124.3650588989257812, 402.869720458984375, 8.249117851257324218, 2.277649402618408203, 0, 0, 0.90814208984375, 0.418662101030349731, 7200, 255, 1, 63305), -- Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+54, 479180, 2759, 15332, 15332, '0', '0', 0, 127.5780563354492187, 408.690948486328125, 8.239223480224609375, 5.593780994415283203, 0, 0, -0.33791637420654296, 0.941176116466522216, 7200, 255, 1, 63305), -- Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+55, 479182, 2759, 15332, 15332, '0', '0', 0, 131.529205322265625, 407.81524658203125, 14.52459049224853515, 1.108283400535583496, 0, 0, 0.526213645935058593, 0.850352406501770019, 7200, 255, 1, 63305), -- Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+56, 495117, 2759, 15332, 15332, '0', '0', 0, 456.00201416015625, 95.220733642578125, -7.50032424926757812, 2.050761699676513671, 0, 0, 0.85491180419921875, 0.518773376941680908, 7200, 255, 1, 63305), -- Stool (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+57, 499251, 2759, 15332, 15332, '0', '0', 0, -14.9672374725341796, 553.03369140625, 17.86402130126953125, 5.759587764739990234, 0, 0, -0.25881862640380859, 0.965925931930541992, 7200, 255, 1, 63305), -- Fancy Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+58, 495116, 2759, 15332, 15332, '0', '0', 0, 465.45892333984375, 105.5692825317382812, -1.44336986541748046, 3.377224683761596679, 0, 0, -0.99306774139404296, 0.117543503642082214, 7200, 255, 1, 63305), -- BBQ (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+59, 495119, 2759, 15332, 15332, '0', '0', 0, 458.711181640625, 104.0494003295898437, -1.40163898468017578, 0.890116631984710693, 0, 0, 0.430510520935058593, 0.902585566043853759, 7200, 255, 1, 63305), -- Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+60, 495118, 2759, 15332, 15332, '0', '0', 0, 453.606842041015625, 110.278533935546875, -1.43806171417236328, 3.150327444076538085, 0, 0, -0.99999046325683593, 0.004367320332676172, 7200, 255, 1, 63305), -- Bean Bag Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+61, 479189, 2759, 15332, 15332, '0', '0', 0, 114.9322509765625, 417.023406982421875, 8.190715789794921875, 4.374268054962158203, 0, 0, -0.81600093841552734, 0.578050553798675537, 7200, 255, 1, 63305), -- Stool (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+62, 495113, 2759, 15332, 15332, '0', '0', 0, 455.18170166015625, 102.9365234375, -1.42340946197509765, 2.146752834320068359, 0, 0, 0.878816604614257812, 0.477159708738327026, 7200, 255, 1, 63305), -- Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+63, 479188, 2759, 15332, 15332, '0', '0', 0, 116.0741653442382812, 417.666290283203125, 8.190715789794921875, 3.080887079238891601, 0, 0, 0.999539375305175781, 0.030348163098096847, 7200, 255, 1, 63305), -- Stool (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+64, 495115, 2759, 15332, 15332, '0', '0', 0, 457.76922607421875, 111.3832550048828125, -1.39204788208007812, 4.625123500823974609, 0, 0, -0.73727703094482421, 0.67559051513671875, 7200, 255, 1, 63305), -- Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+65, 479190, 2759, 15332, 15332, '0', '0', 0, 119.9293212890625, 417.4990234375, 8.239215850830078125, 3.753324508666992187, 0, 0, -0.95358657836914062, 0.301118940114974975, 7200, 255, 1, 63305), -- Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+66, 495114, 2759, 15332, 15332, '0', '0', 0, 457.831390380859375, 109.6317825317382812, -1.39204788208007812, 2.076942920684814453, 0, 0, 0.861629486083984375, 0.507537841796875, 7200, 255, 1, 63305), -- Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+67, 479185, 2759, 15332, 15332, '0', '0', 0, 128.975494384765625, 409.37115478515625, 8.239222526550292968, 4.756022453308105468, 0, 0, -0.6915130615234375, 0.722363948822021484, 7200, 255, 1, 63305), -- Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+68, 495125, 2759, 15332, 15332, '0', '0', 0, 456.39111328125, 111.2852935791015625, -1.39204883575439453, 4.991641044616699218, 0, 0, -0.60181522369384765, 0.798635363578796386, 7200, 255, 1, 63305), -- Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+69, 495124, 2759, 15332, 15332, '0', '0', 0, 456.47979736328125, 108.9578475952148437, -1.39204788208007812, 0.907570242881774902, 0, 0, 0.438370704650878906, 0.898794233798980712, 7200, 255, 1, 63305), -- Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+70, 479187, 2759, 15332, 15332, '0', '0', 0, 115.9761505126953125, 414.505859375, 8.190725326538085937, 3.041915655136108398, 0, 0, 0.998758316040039062, 0.049817848950624465, 7200, 255, 1, 63305), -- Stool (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+71, 495127, 2759, 15332, 15332, '0', '0', 0, 460.7196044921875, 106.1158370971679687, -1.40164089202880859, 4.625123500823974609, 0, 0, -0.73727703094482421, 0.67559051513671875, 7200, 255, 1, 63305), -- Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+72, 479186, 2759, 15332, 15332, '0', '0', 0, 117.78582763671875, 414.748931884765625, 8.190715789794921875, 1.876227378845214843, 0, 0, 0.806444168090820312, 0.59131026268005371, 7200, 255, 1, 63305), -- Stool (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+73, 495126, 2759, 15332, 15332, '0', '0', 0, 465.499053955078125, 103.323455810546875, -1.44336986541748046, 2.809975385665893554, 0, 0, 0.986285209655761718, 0.165049895644187927, 7200, 255, 1, 63305), -- BBQ (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+74, 506573, 2759, 15332, 15332, '0', '0', 0, 440.38714599609375, 389.951385498046875, -241.243789672851562, 0, 0, 0, 0, 1, 7200, 255, 1, 63305), -- Cage of Carnage West side Starting Collision (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+75, 495121, 2759, 15332, 15332, '0', '0', 0, 453.50384521484375, 104.7364044189453125, -1.42341041564941406, 5.654868602752685546, 0, 0, -0.30901622772216796, 0.95105677843093872, 7200, 255, 1, 63305), -- Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+76, 506572, 2759, 15332, 15332, '0', '0', 0, 446.607635498046875, 381.079864501953125, -241.243789672851562, 3.141592741012573242, 0, 0, -1, 0, 7200, 255, 1, 63305), -- Cage of Carnage East Side Starting Collision (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+77, 495120, 2759, 15332, 15332, '0', '0', 0, 451.3865966796875, 110.999420166015625, -1.43806171417236328, 4.991643905639648437, 0, 0, -0.60181427001953125, 0.798636078834533691, 7200, 255, 1, 63305), -- Bean Bag Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+78, 495123, 2759, 15332, 15332, '0', '0', 0, 463.435455322265625, 101.3131790161132812, -7.52160358428955078, 5.785769462585449218, 0, 0, -0.24615192413330078, 0.969231247901916503, 7200, 255, 1, 63305), -- Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+79, 478078, 2759, 15332, 15332, '0', '0', 0, 536.6385498046875, 381.858154296875, -20.6060752868652343, 3.141592741012573242, 0, 0, -1, 0, 7200, 255, 1, 63305), -- Door (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+80, 495122, 2759, 15332, 15332, '0', '0', 0, 450.914459228515625, 109.2589035034179687, -1.43806171417236328, 0.008726147934794425, 0, 0, 0.004363059997558593, 0.999990463256835937, 7200, 255, 1, 63305), -- Bean Bag Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+81, 495133, 2759, 15332, 15332, '0', '0', 0, 380.04296875, 590.5400390625, 18.7163848876953125, 4.24988412857055664, 0, 0, -0.85035037994384765, 0.52621692419052124, 7200, 255, 1, 63305), -- Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+82, 495132, 2759, 15332, 15332, '0', '0', 0, 378.11944580078125, 591.8095703125, 24.81722068786621093, 0.882507562637329101, 0, 0, 0.427073478698730468, 0.904216945171356201, 7200, 255, 1, 63305), -- Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+83, 499202, 2759, 15332, 15332, '0', '0', 0, 19.73452568054199218, 517.9140625, 17.86402130126953125, 2.094393253326416015, 0, 0, 0.866024971008300781, 0.50000077486038208, 7200, 255, 1, 63305), -- Fancy Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+84, 524333, 2759, 15332, 15332, '0', '0', 0, -32.3823928833007812, 103.6567306518554687, -3.9420318603515625, 0, 0, 0, 0, 1, 7200, 255, 1, 63305), -- Stool (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+85, 495135, 2759, 15332, 15332, '0', '0', 0, 388.95703125, 593.94140625, 24.67194747924804687, 3.324855566024780273, 0, 0, -0.9958047866821289, 0.091503240168094635, 7200, 255, 1, 63305), -- Fancy Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+86, 524332, 2759, 15332, 15332, '0', '0', 0, -29.3839874267578125, 103.0057525634765625, -3.9420318603515625, 3.141592741012573242, 0, 0, -1, 0, 7200, 255, 1, 63305), -- Stool (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+87, 524335, 2759, 15332, 15332, '0', '0', 0, -26.8305740356445312, 108.8494644165039062, -3.9420318603515625, 0, 0, 0, 0, 1, 7200, 255, 1, 63305), -- Stool (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+88, 524334, 2759, 15332, 15332, '0', '0', 0, -23.8921966552734375, 107.8621292114257812, -3.9420318603515625, 2.879789113998413085, 0, 0, 0.991444587707519531, 0.130528271198272705, 7200, 255, 1, 63305), -- Stool (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+89, 495128, 2759, 15332, 15332, '0', '0', 0, 456.59088134765625, 101.6902923583984375, -7.5155801773071289, 1.400974750518798828, 0, 0, 0.644590377807617187, 0.764528095722198486, 7200, 255, 1, 63305), -- Fancy Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+90, 456569, 2759, 15332, 15332, '0', '0', 0, -26.5109634399414062, 1029.7576904296875, 10.91524028778076171, 4.712392330169677734, 0, 0, -0.70710563659667968, 0.707107901573181152, 7200, 255, 1, 63305), -- Rocket Drill (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+91, 495130, 2759, 15332, 15332, '0', '0', 0, 378.586334228515625, 594.24334716796875, 24.81722068786621093, 5.244716167449951171, 0, 0, -0.4962158203125, 0.86819922924041748, 7200, 255, 1, 63305), -- Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+92, 456568, 2759, 15332, 15332, '0', '0', 0, -1.81405127048492431, 1072.8233642578125, 10.44353389739990234, 6.177367687225341796, 0, 0, -0.05288410186767578, 0.998600661754608154, 7200, 255, 1, 63305), -- Rocket Drill (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+93, 524331, 2759, 15332, 15332, '0', '0', 0, -33.4838027954101562, 108.1009750366210937, -3.89253044128417968, 2.879789113998413085, 0, 0, 0.991444587707519531, 0.130528271198272705, 7200, 255, 1, 63305), -- Stool (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+94, 524330, 2759, 15332, 15332, '0', '0', 0, -36.7371673583984375, 108.2857894897460937, -3.89245986938476562, 0, 0, 0, 0, 1, 7200, 255, 1, 63305), -- Stool (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+95, 525461, 2759, 15332, 15332, '0', '0', 0, 0.500454902648925781, 514.7607421875, 5.881754875183105468, 1.621405363082885742, 0, 0, 0.724771499633789062, 0.688989341259002685, 7200, 255, 1, 63305), -- Bean Bag Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+96, 525463, 2759, 15332, 15332, '0', '0', 0, -18.9522514343261718, 533.288818359375, 5.881754875183105468, 6.039627552032470703, 0, 0, -0.12147808074951171, 0.992594122886657714, 7200, 255, 1, 63305), -- Bean Bag Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+97, 525462, 2759, 15332, 15332, '0', '0', 0, -0.86119651794433593, 514.5313720703125, 5.881754875183105468, 0.748943269252777099, 0, 0, 0.365780830383300781, 0.930701017379760742, 7200, 255, 1, 63305), -- Bean Bag Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+98, 524337, 2759, 15332, 15332, '0', '0', 0, -15.5856094360351562, 108.3418197631835937, -3.9420318603515625, 6.021387100219726562, 0, 0, -0.13052558898925781, 0.991444945335388183, 7200, 255, 1, 63305), -- Stool (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+99, 524336, 2759, 15332, 15332, '0', '0', 0, -12.6158599853515625, 107.8908767700195312, -3.9420318603515625, 3.141592741012573242, 0, 0, -1, 0, 7200, 255, 1, 63305), -- Stool (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+100, 524339, 2759, 15332, 15332, '0', '0', 0, -21.4862289428710937, 102.9893035888671875, -3.9420318603515625, 0.523597896099090576, 0, 0, 0.258818626403808593, 0.965925931930541992, 7200, 255, 1, 63305), -- Stool (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+101, 524338, 2759, 15332, 15332, '0', '0', 0, -18.5143966674804687, 103.436920166015625, -3.9420318603515625, 3.403396368026733398, 0, 0, -0.99144458770751953, 0.130528271198272705, 7200, 255, 1, 63305), -- Stool (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+102, 525191, 2759, 15332, 15332, '0', '0', 0, 8.161557197570800781, 994.0087890625, 11.1531219482421875, 2.75469517707824707, 0, 0, 0.981347084045410156, 0.192244425415992736, 7200, 255, 1, 63305), -- Bench (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+103, 525469, 2759, 15332, 15332, '0', '0', 0, -21.0345821380615234, 543.11871337890625, 17.86401939392089843, 0.206334680318832397, 0, 0, 0.102984428405761718, 0.994682967662811279, 7200, 255, 1, 63305), -- Bean Bag Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+104, 525468, 2759, 15332, 15332, '0', '0', 0, -21.011972427368164, 544.3123779296875, 17.86402130126953125, 5.229222297668457031, 0, 0, -0.50292682647705078, 0.864328980445861816, 7200, 255, 1, 63305), -- Bean Bag Chair (Area: Cage of Carnage - Difficulty: 0) CreateObject1 +(@OGUID+105, 184663, 2759, 15332, 15332, '0', '0', 0, 399.666656494140625, 350.197906494140625, -42.23541259765625, 0.759438693523406982, 0, 0, 0.370659828186035156, 0.928768694400787353, 7200, 255, 1, 63305), -- Shadow Sight (Area: Cage of Carnage - Difficulty: 0) CreateObject2 +(@OGUID+106, 184663, 2759, 15332, 15332, '0', '0', 0, 487.026031494140625, 420.6875, -42.0717048645019531, 3.807122707366943359, 0, 0, -0.94514274597167968, 0.326657593250274658, 7200, 255, 1, 63305); -- Shadow Sight (Area: Cage of Carnage - Difficulty: 0) CreateObject2 + +DELETE FROM `gameobject_addon` WHERE `guid` BETWEEN @OGUID+0 AND @OGUID+106; +INSERT INTO `gameobject_addon` (`guid`, `parent_rotation0`, `parent_rotation1`, `parent_rotation2`, `parent_rotation3`, `WorldEffectID`, `AIAnimKitID`) VALUES +(@OGUID+0, 0, 0, 0.923879504203796386, 0.38268357515335083, 0, 0), -- Bean Bag Chair +(@OGUID+1, 0, 0, 0.923879504203796386, 0.38268357515335083, 0, 0), -- Bean Bag Chair +(@OGUID+2, 0, 0, -0.70710605382919311, 0.707107484340667724, 0, 0), -- Bench +(@OGUID+3, 0, 0, 0.923879504203796386, 0.38268357515335083, 0, 0), -- Bean Bag Chair +(@OGUID+4, 0, 0, -0.70710605382919311, 0.707107484340667724, 0, 0), -- Bench +(@OGUID+5, 0, 0, 0.923879504203796386, 0.38268357515335083, 0, 0), -- Bean Bag Chair +(@OGUID+6, 0, 0, -0.70710605382919311, 0.707107484340667724, 0, 0), -- Bench +(@OGUID+7, 0, 0, -0.70710605382919311, 0.707107484340667724, 0, 0), -- Bench +(@OGUID+8, 0, 0, -0.70710605382919311, 0.707107484340667724, 0, 0), -- Bench +(@OGUID+9, 0, 0, -0.70710605382919311, 0.707107484340667724, 0, 0), -- Bench +(@OGUID+10, 0, 0, -0.70710605382919311, 0.707107484340667724, 0, 0), -- Bench +(@OGUID+11, 0, 0, 0.999990463256835937, -0.00436332821846008, 0, 0), -- Stool +(@OGUID+12, 0, 0, 0.999990463256835937, -0.00436332821846008, 0, 0), -- Fancy Chair +(@OGUID+13, 0, 0, 0.923879504203796386, 0.38268357515335083, 0, 0), -- Fancy Chair +(@OGUID+14, 0, 0, 0.999990463256835937, -0.00436332821846008, 0, 0), -- Fancy Chair +(@OGUID+15, 0, 0, 0.923879504203796386, 0.38268357515335083, 0, 0), -- Fancy Chair +(@OGUID+16, 0, 0, 0.999990463256835937, -0.00436332821846008, 0, 0), -- Fancy Chair +(@OGUID+17, 0, 0, 0.999990463256835937, -0.00436332821846008, 0, 0), -- Fancy Chair +(@OGUID+18, 0, 0, 0.999990463256835937, -0.00436332821846008, 0, 0), -- Chair +(@OGUID+19, 0, 0, 0.7071075439453125, 0.707105994224548339, 0, 0), -- 11GO_Goblin_Arena_TrapDoor01 +(@OGUID+20, 0, 0, -0.70710641145706176, 0.707107126712799072, 0, 0), -- 11GO_Goblin_Arena_TrapDoor01 +(@OGUID+21, 0, 0, -0.54829299449920654, 0.836286306381225585, 0, 0), -- Sewer Grate +(@OGUID+22, 0, 0, 0.854912161827087402, 0.518772840499877929, 0, 0), -- Sewer Grate +(@OGUID+23, 0, 0, 0.70710688829421997, 0.707106649875640869, 0, 0), -- Stool +(@OGUID+24, 0, 0, 0.70710688829421997, 0.707106649875640869, 0, 0), -- Stool +(@OGUID+25, 0, 0, 0.70710688829421997, 0.707106649875640869, 0, 0), -- Fancy Chair +(@OGUID+26, 0, 0, 0.70710688829421997, 0.707106649875640869, 0, 0), -- Stool +(@OGUID+27, 0, 0, 0.923879504203796386, 0.38268357515335083, 0, 0), -- Bench +(@OGUID+28, 0, 0, 0.70710688829421997, 0.707106649875640869, 0, 0), -- Stool +(@OGUID+29, 0, 0, 0.70710688829421997, 0.707106649875640869, 0, 0), -- Stool +(@OGUID+30, 0, 0, 0.923879504203796386, 0.38268357515335083, 0, 0), -- Bench +(@OGUID+31, 0, 0, 0.70710688829421997, 0.707106649875640869, 0, 0), -- Stool +(@OGUID+32, 0, 0, 0.923879504203796386, 0.38268357515335083, 0, 0), -- Bench +(@OGUID+33, 0, 0, 0.923879504203796386, 0.38268357515335083, 0, 0), -- Stool +(@OGUID+34, 0, 0, 0.923879504203796386, 0.38268357515335083, 0, 0), -- Stool +(@OGUID+35, 0, 0, 0.923879504203796386, 0.38268357515335083, 0, 0), -- Fancy Chair +(@OGUID+36, 0, 0, 0.923879504203796386, 0.38268357515335083, 0, 0), -- Fancy Chair +(@OGUID+37, 0, 0, 0.923879504203796386, 0.38268357515335083, 0, 0), -- Stool +(@OGUID+38, 0, 0, 0.923879504203796386, 0.38268357515335083, 0, 0), -- Bench +(@OGUID+39, 0, 0, 0.923879504203796386, 0.38268357515335083, 0, 0), -- Bench +(@OGUID+40, 0, 0, 0.923879504203796386, 0.38268357515335083, 0, 0), -- Fancy Chair +(@OGUID+41, 0, 0, 0.923879504203796386, 0.38268357515335083, 0, 0), -- Fancy Chair +(@OGUID+42, 0, 0, 0.923879504203796386, 0.38268357515335083, 0, 0), -- Bench +(@OGUID+43, 0, 0, 0.923879504203796386, 0.38268357515335083, 0, 0), -- Bench +(@OGUID+44, 0, 0, 0.923879504203796386, 0.38268357515335083, 0, 0), -- Bench +(@OGUID+45, 0, 0, 0.700909793376922607, 0.71324998140335083, 0, 0), -- Chair +(@OGUID+46, 0, 0, 0.700909793376922607, 0.71324998140335083, 0, 0), -- Chair +(@OGUID+47, 0, 0, 0.923879504203796386, 0.38268357515335083, 0, 0), -- Bench +(@OGUID+48, 0, 0, 0.700909793376922607, 0.71324998140335083, 0, 0), -- Chair +(@OGUID+49, 0, 0, -0.70710605382919311, 0.707107484340667724, 0, 0), -- 11GO_Goblin_Decor_TrashPile06 +(@OGUID+50, 0, 0, 0.923879504203796386, 0.38268357515335083, 0, 0), -- Bench +(@OGUID+51, 0, 0, 0.999990463256835937, -0.00436332821846008, 0, 0), -- Fancy Chair +(@OGUID+52, 0, 0, 0.999990463256835937, -0.00436332821846008, 0, 0), -- Fancy Chair +(@OGUID+53, 0, 0, 0.999990463256835937, -0.00436332821846008, 0, 0), -- Chair +(@OGUID+54, 0, 0, 0.999990463256835937, -0.00436332821846008, 0, 0), -- Chair +(@OGUID+55, 0, 0, 0.999990463256835937, -0.00436332821846008, 0, 0), -- Chair +(@OGUID+56, 0, 0, 0.004363371990621089, 0.999990463256835937, 0, 0), -- Stool +(@OGUID+57, 0, 0, 0.923879504203796386, 0.38268357515335083, 0, 0), -- Fancy Chair +(@OGUID+58, 0, 0, 0.004363371990621089, 0.999990463256835937, 0, 0), -- BBQ +(@OGUID+59, 0, 0, 0.004363371990621089, 0.999990463256835937, 0, 0), -- Chair +(@OGUID+60, 0, 0, 0.004363371990621089, 0.999990463256835937, 0, 0), -- Bean Bag Chair +(@OGUID+61, 0, 0, 0.999990463256835937, -0.00436332821846008, 0, 0), -- Stool +(@OGUID+62, 0, 0, 0.004363371990621089, 0.999990463256835937, 0, 0), -- Chair +(@OGUID+63, 0, 0, 0.999990463256835937, -0.00436332821846008, 0, 0), -- Stool +(@OGUID+64, 0, 0, 0.004363371990621089, 0.999990463256835937, 0, 0), -- Chair +(@OGUID+65, 0, 0, 0.999990463256835937, -0.00436332821846008, 0, 0), -- Chair +(@OGUID+66, 0, 0, 0.004363371990621089, 0.999990463256835937, 0, 0), -- Chair +(@OGUID+67, 0, 0, 0.999990463256835937, -0.00436332821846008, 0, 0), -- Chair +(@OGUID+68, 0, 0, 0.004363371990621089, 0.999990463256835937, 0, 0), -- Chair +(@OGUID+69, 0, 0, 0.004363371990621089, 0.999990463256835937, 0, 0), -- Chair +(@OGUID+70, 0, 0, 0.999990463256835937, -0.00436332821846008, 0, 0), -- Stool +(@OGUID+71, 0, 0, 0.004363371990621089, 0.999990463256835937, 0, 0), -- Chair +(@OGUID+72, 0, 0, 0.999990463256835937, -0.00436332821846008, 0, 0), -- Stool +(@OGUID+73, 0, 0, 0.004363371990621089, 0.999990463256835937, 0, 0), -- BBQ +(@OGUID+75, 0, 0, 0.004363371990621089, 0.999990463256835937, 0, 0), -- Chair +(@OGUID+77, 0, 0, 0.004363371990621089, 0.999990463256835937, 0, 0), -- Bean Bag Chair +(@OGUID+78, 0, 0, 0.004363371990621089, 0.999990463256835937, 0, 0), -- Chair +(@OGUID+79, 0, 0, 1, -0.00000004371138828, 0, 0), -- Door +(@OGUID+80, 0, 0, 0.004363371990621089, 0.999990463256835937, 0, 0), -- Bean Bag Chair +(@OGUID+81, 0, 0, 0.70710688829421997, 0.707106649875640869, 0, 0), -- Chair +(@OGUID+82, 0, 0, 0.70710688829421997, 0.707106649875640869, 0, 0), -- Chair +(@OGUID+83, 0, 0, 0.923879504203796386, 0.38268357515335083, 0, 0), -- Fancy Chair +(@OGUID+84, 0, 0, 0.70710688829421997, 0.707106649875640869, 0, 0), -- Stool +(@OGUID+85, 0, 0, 0.70710688829421997, 0.707106649875640869, 0, 0), -- Fancy Chair +(@OGUID+86, 0, 0, 0.70710688829421997, 0.707106649875640869, 0, 0), -- Stool +(@OGUID+87, 0, 0, 0.70710688829421997, 0.707106649875640869, 0, 0), -- Stool +(@OGUID+88, 0, 0, 0.70710688829421997, 0.707106649875640869, 0, 0), -- Stool +(@OGUID+89, 0, 0, 0.004363371990621089, 0.999990463256835937, 0, 0), -- Fancy Chair +(@OGUID+90, 0, 0, -0.70710605382919311, 0.707107484340667724, 0, 0), -- Rocket Drill +(@OGUID+91, 0, 0, 0.70710688829421997, 0.707106649875640869, 0, 0), -- Chair +(@OGUID+92, 0, 0, -0.70710605382919311, 0.707107484340667724, 0, 0), -- Rocket Drill +(@OGUID+93, 0, 0, 0.70710688829421997, 0.707106649875640869, 0, 0), -- Stool +(@OGUID+94, 0, 0, 0.70710688829421997, 0.707106649875640869, 0, 0), -- Stool +(@OGUID+95, 0, 0, 0.923879504203796386, 0.38268357515335083, 0, 0), -- Bean Bag Chair +(@OGUID+96, 0, 0, 0.923879504203796386, 0.38268357515335083, 0, 0), -- Bean Bag Chair +(@OGUID+97, 0, 0, 0.923879504203796386, 0.38268357515335083, 0, 0), -- Bean Bag Chair +(@OGUID+98, 0, 0, 0.70710688829421997, 0.707106649875640869, 0, 0), -- Stool +(@OGUID+99, 0, 0, 0.70710688829421997, 0.707106649875640869, 0, 0), -- Stool +(@OGUID+100, 0, 0, 0.70710688829421997, 0.707106649875640869, 0, 0), -- Stool +(@OGUID+101, 0, 0, 0.70710688829421997, 0.707106649875640869, 0, 0), -- Stool +(@OGUID+102, 0, 0, -0.70710605382919311, 0.707107484340667724, 0, 0), -- Bench +(@OGUID+103, 0, 0, 0.923879504203796386, 0.38268357515335083, 0, 0), -- Bean Bag Chair +(@OGUID+104, 0, 0, 0.923879504203796386, 0.38268357515335083, 0, 0); -- Bean Bag Chair + +DELETE FROM `creature` WHERE `guid`=@CGUID; +INSERT INTO `creature` (`guid`, `id`, `map`, `zoneId`, `areaId`, `spawnDifficulties`, `PhaseId`, `PhaseGroup`, `modelid`, `equipment_id`, `position_x`, `position_y`, `position_z`, `orientation`, `spawntimesecs`, `wander_distance`, `currentwaypoint`, `MovementType`, `npcflag`, `unit_flags`, `unit_flags2`, `unit_flags3`, `VerifiedBuild`) VALUES +(@CGUID, 232750, 2759, 15332, 15332, '0', '0', 0, 0, 0, 492.08160400390625, 384.34027099609375, -14.6007318496704101, 3.058808803558349609, 7200, 0, 0, 0, NULL, NULL, NULL, NULL, 63305); -- Naminze Boltfingers (Area: Cage of Carnage - Difficulty: 0) CreateObject1 (Auras: ) + +DELETE FROM `creature_addon` WHERE `guid`=@CGUID; + +UPDATE `creature_template_difficulty` SET `ContentTuningID`=969, `VerifiedBuild`=63305 WHERE (`Entry`=232750 AND `DifficultyID`=0); -- 232750 (Naminze Boltfingers) +UPDATE `creature_template` SET `faction`=35, `BaseAttackTime`=2000, `unit_flags`=0x2000000, `unit_flags2`=0x800 WHERE `entry`=232750; -- Naminze Boltfingers + +DELETE FROM `spawn_group_template` WHERE `groupId` = @SPAWN_GROUP; +INSERT INTO `spawn_group_template` (`groupId`, `groupName`, `groupFlags`) VALUES +(@SPAWN_GROUP, 'Cage of Carnage - Shadow sight', 0x20); + +DELETE FROM `spawn_group` WHERE `groupId` = @SPAWN_GROUP; +INSERT INTO `spawn_group` (`groupId`, `spawnType`, `spawnId`) VALUES +(@SPAWN_GROUP, 1, @OGUID+105), +(@SPAWN_GROUP, 1, @OGUID+106); + +DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId` = 33 AND `SourceEntry` = @SPAWN_GROUP; +INSERT INTO `conditions` (`SourceTypeOrReferenceId`, `SourceEntry`, `SourceGroup`, `ConditionTypeOrReference`, `ConditionValue1`, `ScriptName`) VALUES +(33, @SPAWN_GROUP, 0, 0, 0, 'condition_is_shadow_sight_enabled'); + +DELETE FROM `creature_text` WHERE `CreatureID` IN (232750); +INSERT INTO `creature_text` (`CreatureID`, `GroupID`, `ID`, `Text`, `Type`, `Language`, `Probability`, `Emote`, `Duration`, `Sound`, `BroadcastTextId`, `TextRange`, `comment`) VALUES +(232750, 0, 0, 'He he he he. Look how tough all of you look. This is gonna be good!', 12, 0, 100, 0, 0, 276108, 275530, 3, 'Naminze Boltfingers'), +(232750, 1, 0, 'Get ready. It\'s about to go down!', 12, 0, 100, 0, 0, 269101, 275534, 3, 'Naminze Boltfingers'), +(232750, 2, 0, 'Ah, c\'mon. Right when it was gettin\' good!', 12, 0, 100, 0, 0, 269090, 275539, 3, 'Naminze Boltfingers to Player'), +(232750, 2, 1, 'This is a gen-u-ine nailbiter!', 12, 0, 100, 0, 0, 269091, 275538, 3, 'Naminze Boltfingers to Player'), +(232750, 3, 0, 'That\'s gotta hurt. But not for long. Heh.', 12, 0, 100, 0, 0, 276094, 275546, 3, 'Naminze Boltfingers to Player'), +(232750, 2, 2, 'Aw, you keep spoilin\' all my fun!', 12, 0, 100, 0, 0, 269088, 275541, 3, 'Naminze Boltfingers to Player'), +(232750, 2, 3, 'Keepin\' this fight interestin\' this time!', 12, 0, 100, 0, 0, 269089, 275540, 3, 'Naminze Boltfingers to Player'), +(232750, 3, 1, 'Wowza. I\'m gonna remember that one for a long time.', 12, 0, 100, 0, 0, 276094, 275544, 3, 'Naminze Boltfingers to Player'), +(232750, 3, 2, 'Oof, right in the... well, the everywhere!', 12, 0, 100, 0, 0, 276094, 275545, 3, 'Naminze Boltfingers to Player'); + +DELETE FROM `spell_proc` WHERE `SpellId` IN (472885); +INSERT INTO `spell_proc` (`SpellId`,`SchoolMask`,`SpellFamilyName`,`SpellFamilyMask0`,`SpellFamilyMask1`,`SpellFamilyMask2`,`SpellFamilyMask3`,`ProcFlags`,`ProcFlags2`,`SpellTypeMask`,`SpellPhaseMask`,`HitMask`,`AttributesMask`,`DisableEffectsMask`,`ProcsPerMinute`,`Chance`,`Cooldown`,`Charges`) VALUES +(472885,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0,0,0,0); -- Undermine Arena Reaction Trigger + +DELETE FROM `spell_script_names` WHERE `ScriptName` IN ('spell_undermine_arena_reaction_trigger_low_health', 'spell_undermine_arena_reaction_trigger', 'spell_undermine_arena_warning_countdown', 'spell_undermine_arena_warning_teleport'); +INSERT INTO `spell_script_names` (`spell_id`, `ScriptName`) VALUES +(472883, 'spell_undermine_arena_reaction_trigger_low_health'), +(472885, 'spell_undermine_arena_reaction_trigger'), +(1214676, 'spell_undermine_arena_warning_countdown'), +(371319, 'spell_undermine_arena_warning_teleport'); + +DELETE FROM `creature_model_info` WHERE `DisplayID`=123368; +INSERT INTO `creature_model_info` (`DisplayID`, `BoundingRadius`, `CombatReach`, `DisplayID_Other_Gender`, `VerifiedBuild`) VALUES +(123368, 0.305999994277954101, 1.5, 0, 63305); + +UPDATE `gameobject_template` SET `Data8`=103829, `Data10`=30092, `VerifiedBuild`=63305 WHERE `entry`=365672; -- Forge +UPDATE `gameobject_template` SET `Data8`=103828, `Data10`=30091, `VerifiedBuild`=63305 WHERE `entry`=365673; -- Anvil +UPDATE `gameobject_template` SET `Data8`=103828, `Data10`=30091, `VerifiedBuild`=63305 WHERE `entry`=357962; -- Anvil +UPDATE `gameobject_template` SET `Data8`=103829, `Data10`=30092, `VerifiedBuild`=63305 WHERE `entry`=357961; -- Forge + +DELETE FROM `gameobject_template` WHERE `entry` IN (495116 /*BBQ*/, 479165 /*Stool*/, 479163 /*Fancy Chair*/, 456569 /*Rocket Drill*/, 524336 /*Stool*/, 524332 /*Stool*/, 495130 /*Chair*/, 524331 /*Stool*/, 495126 /*BBQ*/, 495119 /*Chair*/, 495113 /*Chair*/, 495124 /*Chair*/, 505683 /*11GO_Goblin_Arena_TrapDoor01*/, 495121 /*Chair*/, 479166 /*Fancy Chair*/, 479164 /*Fancy Chair*/, 473877 /*Sewer Grate*/, 456568 /*Rocket Drill*/, 525195 /*Bench*/, 506572 /*Cage of Carnage East Side Starting Collision*/, 479162 /*Chair*/, 479181 /*Chair*/, 455350 /*Bench*/, 524330 /*Stool*/, 495139 /*Stool*/, 479175 /*Chair*/, 479167 /*Fancy Chair*/, 479187 /*Stool*/, 495120 /*Bean Bag Chair*/, 479172 /*Chair*/, 495137 /*Stool*/, 479189 /*Stool*/, 495136 /*Stool*/, 495132 /*Chair*/, 525191 /*Bench*/, 524334 /*Stool*/, 479171 /*Fancy Chair*/, 479185 /*Chair*/, 525198 /*Bench*/, 495135 /*Fancy Chair*/, 495115 /*Chair*/, 495118 /*Bean Bag Chair*/, 479188 /*Stool*/, 469497 /*11GO_Goblin_Decor_TrashPile06*/, 479186 /*Stool*/, 479173 /*Chair*/, 478078 /*Door*/, 524335 /*Stool*/, 525197 /*Bench*/, 495142 /*Fancy Chair*/, 524338 /*Stool*/, 495123 /*Chair*/, 479168 /*Fancy Chair*/, 524339 /*Stool*/, 524333 /*Stool*/, 495125 /*Chair*/, 495114 /*Chair*/, 495117 /*Stool*/, 525196 /*Bench*/, 525193 /*Bench*/, 495138 /*Stool*/, 495128 /*Fancy Chair*/, 525192 /*Bench*/, 495140 /*Stool*/, 495133 /*Chair*/, 525194 /*Bench*/, 473878 /*Sewer Grate*/, 495122 /*Bean Bag Chair*/, 524337 /*Stool*/, 479182 /*Chair*/, 479190 /*Chair*/, 495141 /*Stool*/, 479180 /*Chair*/, 506573 /*Cage of Carnage West side Starting Collision*/, 495127 /*Chair*/); +INSERT INTO `gameobject_template` (`entry`, `type`, `displayId`, `name`, `IconName`, `castBarCaption`, `unk1`, `size`, `Data0`, `Data1`, `Data2`, `Data3`, `Data4`, `Data5`, `Data6`, `Data7`, `Data8`, `Data9`, `Data10`, `Data11`, `Data12`, `Data13`, `Data14`, `Data15`, `Data16`, `Data17`, `Data18`, `Data19`, `Data20`, `Data21`, `Data22`, `Data23`, `Data24`, `Data25`, `Data26`, `Data27`, `Data28`, `Data29`, `Data30`, `Data31`, `Data32`, `Data33`, `Data34`, `ContentTuningId`, `VerifiedBuild`) VALUES +(495116, 8, 95234, 'BBQ', '', '', '', 0.999999761581420898, 4, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- BBQ +(479165, 7, 92627, 'Stool', '', '', '', 0.999999463558197021, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Stool +(479163, 7, 89571, 'Fancy Chair', '', '', '', 0.99999934434890747, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Fancy Chair +(456569, 5, 92678, 'Rocket Drill', '', '', '', 0.749999880790710449, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Rocket Drill +(524336, 7, 92627, 'Stool', '', '', '', 0.999999821186065673, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Stool +(524332, 7, 92627, 'Stool', '', '', '', 0.999999821186065673, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Stool +(495130, 7, 92626, 'Chair', '', '', '', 0.999999701976776123, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Chair +(524331, 7, 92627, 'Stool', '', '', '', 0.999999821186065673, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Stool +(495126, 8, 95234, 'BBQ', '', '', '', 0.999999701976776123, 4, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- BBQ +(495119, 7, 92626, 'Chair', '', '', '', 0.999999523162841796, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Chair +(495113, 7, 92626, 'Chair', '', '', '', 0.999999642372131347, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Chair +(495124, 7, 92626, 'Chair', '', '', '', 0.999999582767486572, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Chair +(505683, 35, 99831, '11GO_Goblin_Arena_TrapDoor01', '', '', '', 0.999999761581420898, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- 11GO_Goblin_Arena_TrapDoor01 +(495121, 7, 92626, 'Chair', '', '', '', 0.999999523162841796, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Chair +(479166, 7, 89571, 'Fancy Chair', '', '', '', 0.999999463558197021, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Fancy Chair +(479164, 7, 89571, 'Fancy Chair', '', '', '', 0.999999225139617919, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Fancy Chair +(473877, 0, 96881, 'Sewer Grate', '', '', '', 1.084214687347412109, 0, 0, 3000, 0, 0, 0, 0, 136039, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Sewer Grate +(456568, 5, 92678, 'Rocket Drill', '', '', '', 0.749999880790710449, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Rocket Drill +(525195, 7, 93731, 'Bench', '', '', '', 0.999999761581420898, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Bench +(506572, 43, 100393, 'Cage of Carnage East Side Starting Collision', '', '', '', 1, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Cage of Carnage East Side Starting Collision +(479162, 7, 92626, 'Chair', '', '', '', 0.99999934434890747, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Chair +(479181, 7, 92626, 'Chair', '', '', '', 0.999999284744262695, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Chair +(455350, 7, 93731, 'Bench', '', '', '', 0.999999523162841796, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Bench +(524330, 7, 92627, 'Stool', '', '', '', 0.999999821186065673, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Stool +(495139, 7, 92627, 'Stool', '', '', '', 0.999999761581420898, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Stool +(479175, 7, 92626, 'Chair', '', '', '', 0.99999934434890747, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Chair +(479167, 7, 89571, 'Fancy Chair', '', '', '', 0.999999403953552246, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Fancy Chair +(479187, 7, 92627, 'Stool', '', '', '', 0.999999105930328369, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Stool +(495120, 7, 97337, 'Bean Bag Chair', '', '', '', 0.999999523162841796, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Bean Bag Chair +(479172, 7, 92626, 'Chair', '', '', '', 0.999999523162841796, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Chair +(495137, 7, 92627, 'Stool', '', '', '', 0.999999642372131347, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Stool +(479189, 7, 92627, 'Stool', '', '', '', 0.999999105930328369, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Stool +(495136, 7, 92627, 'Stool', '', '', '', 0.999999582767486572, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Stool +(495132, 7, 92626, 'Chair', '', '', '', 0.999999523162841796, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Chair +(525191, 7, 93731, 'Bench', '', '', '', 0.999999761581420898, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Bench +(524334, 7, 92627, 'Stool', '', '', '', 0.999999821186065673, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Stool +(479171, 7, 89571, 'Fancy Chair', '', '', '', 0.99999934434890747, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Fancy Chair +(479185, 7, 92626, 'Chair', '', '', '', 0.999999523162841796, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Chair +(525198, 7, 93731, 'Bench', '', '', '', 0.999999821186065673, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Bench +(495135, 7, 89571, 'Fancy Chair', '', '', '', 0.999999642372131347, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Fancy Chair +(495115, 7, 92626, 'Chair', '', '', '', 0.999999582767486572, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Chair +(495118, 7, 97767, 'Bean Bag Chair', '', '', '', 0.999999761581420898, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Bean Bag Chair +(479188, 7, 92627, 'Stool', '', '', '', 0.999999165534973144, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Stool +(469497, 5, 96383, '11GO_Goblin_Decor_TrashPile06', '', '', '', 1.199999570846557617, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- 11GO_Goblin_Decor_TrashPile06 +(479186, 7, 92627, 'Stool', '', '', '', 0.999999165534973144, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Stool +(479173, 7, 92626, 'Chair', '', '', '', 0.999999225139617919, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Chair +(478078, 0, 96874, 'Door', '', '', '', 0.999999761581420898, 0, 0, 3000, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Door +(524335, 7, 92627, 'Stool', '', '', '', 0.999999821186065673, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Stool +(525197, 7, 93731, 'Bench', '', '', '', 0.999999761581420898, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Bench +(495142, 7, 89571, 'Fancy Chair', '', '', '', 0.999999463558197021, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Fancy Chair +(524338, 7, 92627, 'Stool', '', '', '', 0.999999821186065673, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Stool +(495123, 7, 92626, 'Chair', '', '', '', 0.999999403953552246, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Chair +(479168, 7, 89571, 'Fancy Chair', '', '', '', 0.999999463558197021, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Fancy Chair +(524339, 7, 92627, 'Stool', '', '', '', 0.999999880790710449, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Stool +(524333, 7, 92627, 'Stool', '', '', '', 0.999999821186065673, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Stool +(495125, 7, 92626, 'Chair', '', '', '', 0.999999761581420898, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Chair +(495114, 7, 92626, 'Chair', '', '', '', 0.999999642372131347, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Chair +(495117, 7, 92627, 'Stool', '', '', '', 0.999999642372131347, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Stool +(525196, 7, 93731, 'Bench', '', '', '', 0.999999761581420898, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Bench +(525193, 7, 93731, 'Bench', '', '', '', 0.999999761581420898, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Bench +(495138, 7, 92627, 'Stool', '', '', '', 0.999999761581420898, 1, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Stool +(495128, 7, 89571, 'Fancy Chair', '', '', '', 0.999999582767486572, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Fancy Chair +(525192, 7, 93731, 'Bench', '', '', '', 0.999999821186065673, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Bench +(495140, 7, 92627, 'Stool', '', '', '', 0.999999642372131347, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Stool +(495133, 7, 92626, 'Chair', '', '', '', 0.999999701976776123, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Chair +(525194, 7, 93731, 'Bench', '', '', '', 0.999999761581420898, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Bench +(473878, 0, 96881, 'Sewer Grate', '', '', '', 1.02015388011932373, 0, 0, 3000, 0, 0, 0, 0, 136039, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Sewer Grate +(495122, 7, 97767, 'Bean Bag Chair', '', '', '', 0.999999701976776123, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Bean Bag Chair +(524337, 7, 92627, 'Stool', '', '', '', 0.999999821186065673, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Stool +(479182, 7, 92626, 'Chair', '', '', '', 0.999999463558197021, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Chair +(479190, 7, 92626, 'Chair', '', '', '', 0.999999463558197021, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Chair +(495141, 7, 92627, 'Stool', '', '', '', 0.999999701976776123, 1, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Stool +(479180, 7, 92626, 'Chair', '', '', '', 0.99999934434890747, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Chair +(506573, 43, 100393, 'Cage of Carnage West side Starting Collision', '', '', '', 1, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305), -- Cage of Carnage West side Starting Collision +(495127, 7, 92626, 'Chair', '', '', '', 0.999999582767486572, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63305); -- Chair diff --git a/src/server/scripts/Battlegrounds/CageOfCarnage/arena_cage_of_carnage.cpp b/src/server/scripts/Battlegrounds/CageOfCarnage/arena_cage_of_carnage.cpp new file mode 100644 index 00000000000..8ef5d8903a0 --- /dev/null +++ b/src/server/scripts/Battlegrounds/CageOfCarnage/arena_cage_of_carnage.cpp @@ -0,0 +1,332 @@ +/* + * This file is part of the TrinityCore Project. See AUTHORS file for Copyright information + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the + * Free Software Foundation; either version 2 of the License, or (at your + * option) any later version. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along + * with this program. If not, see <http://www.gnu.org/licenses/>. + */ + +#include "Battleground.h" +#include "BattlegroundScript.h" +#include "Creature.h" +#include "CreatureAI.h" +#include "GameObject.h" +#include "Map.h" +#include "Player.h" +#include "ScriptMgr.h" +#include "SpellScript.h" +#include "TaskScheduler.h" + +namespace CageOfCarnage +{ + namespace Actions + { + static constexpr uint32 ReactionTrigger = 1; + static constexpr uint32 ReactionDead = 2; + } + + namespace Creatures + { + static constexpr uint32 NaminzeBoltfingers = 232750; + } + + namespace GameObjects + { + static constexpr uint32 GoblinArenaTrapDoor01 = 505683; + } + + namespace MapIds + { + static constexpr uint32 CageOfCarnage = 2759; + } + + namespace Positions + { + static constexpr Position PurpleWarningTeleport = { 442.311f, 343.167f, -34.1166f, 1.7453293f }; + static constexpr Position GoldWarningTeleport = { 443.167f, 439.243f, -42.6562f, 4.5902157f }; + } + + namespace Spells + { + static constexpr uint32 UndermineArenaVOCooldownAura = 472905; + static constexpr uint32 UndermineArenaVOCooldownAuraPlayerDeath = 472913; + static constexpr uint32 UndermineArenaReactionTrigger = 472885; + static constexpr uint32 ArenaLowHealthCooldownAura = 234031; + static constexpr uint32 Warning = 1214676; + static constexpr uint32 WarningTeleport = 371319; + static constexpr uint32 ArenaStartingAreaMarker = 228212; + } + + namespace Texts + { + namespace Naminze + { + static constexpr uint8 Prepare = 0; + static constexpr uint8 Start = 1; + static constexpr uint8 ReactionAlmostDead = 2; + static constexpr uint8 ReactionKill = 3; + } + } +} + +struct arena_cage_of_carnage : ArenaScript +{ + explicit arena_cage_of_carnage(BattlegroundMap* map) : ArenaScript(map) { } + + void OnUpdate(uint32 diff) override + { + _scheduler.Update(diff); + } + + void OnStart() override + { + for (ObjectGuid const& guid : _doorGUIDs) + { + if (GameObject* door = battlegroundMap->GetGameObject(guid)) + { + door->UseDoorOrButton(); + door->DespawnOrUnsummon(5s); + } + } + + if (Creature const* creature = battlegroundMap->GetCreature(_naminzeGUID)) + creature->AI()->Talk(CageOfCarnage::Texts::Naminze::Start); + + _scheduler.Schedule(5s, [&](TaskContext context) + { + battlegroundMap->DoOnPlayers([&](Player* player) + { + if (!player->HasAura(CageOfCarnage::Spells::ArenaStartingAreaMarker)) + return; + + if (player->HasAura(CageOfCarnage::Spells::Warning)) + return; + + player->CastSpell(nullptr, CageOfCarnage::Spells::Warning, CastSpellExtraArgsInit{ + .TriggerFlags = TRIGGERED_IGNORE_CAST_IN_PROGRESS | TRIGGERED_DONT_REPORT_CAST_ERROR + }); + }); + + context.Repeat(); + }); + } + + void DoAction(uint32 actionId, WorldObject* source, WorldObject* target) override + { + switch (actionId) + { + case CageOfCarnage::Actions::ReactionTrigger: + HandleReactionLowHealth(Object::ToPlayer(source)); + break; + case CageOfCarnage::Actions::ReactionDead: + HandleKill(Object::ToPlayer(target)); + break; + default: + break; + } + } + + void OnPrepareStage2() override + { + if (Creature const* creature = battlegroundMap->GetCreature(_naminzeGUID)) + creature->AI()->Talk(CageOfCarnage::Texts::Naminze::Prepare); + } + + void OnCreatureCreate(Creature* creature) override + { + switch (creature->GetEntry()) + { + case CageOfCarnage::Creatures::NaminzeBoltfingers: + _naminzeGUID = creature->GetGUID(); + break; + default: + break; + } + } + + void OnGameObjectCreate(GameObject* gameobject) override + { + switch (gameobject->GetEntry()) + { + case CageOfCarnage::GameObjects::GoblinArenaTrapDoor01: + _doorGUIDs.emplace_back(gameobject->GetGUID()); + break; + default: + break; + } + } + + void OnPlayerJoined(Player* player, bool /*inBattleground*/) override + { + player->CastSpell(nullptr, CageOfCarnage::Spells::UndermineArenaReactionTrigger, CastSpellExtraArgsInit{ + .TriggerFlags = TRIGGERED_IGNORE_CAST_IN_PROGRESS | TRIGGERED_DONT_REPORT_CAST_ERROR + }); + } + + void HandleKill(Player const* victim) const + { + if (!victim) + return; + + if (Creature* creature = battlegroundMap->GetCreature(_naminzeGUID)) + { + if (creature->HasAura(CageOfCarnage::Spells::UndermineArenaVOCooldownAuraPlayerDeath)) + return; + + creature->AI()->Talk(CageOfCarnage::Texts::Naminze::ReactionKill, victim); + + creature->CastSpell(nullptr, CageOfCarnage::Spells::UndermineArenaVOCooldownAuraPlayerDeath, CastSpellExtraArgsInit{ + .TriggerFlags = TRIGGERED_IGNORE_CAST_IN_PROGRESS | TRIGGERED_DONT_REPORT_CAST_ERROR + }); + } + } + + void HandleReactionLowHealth(Player const* victim) const + { + if (!victim) + return; + + if (Creature* creature = battlegroundMap->GetCreature(_naminzeGUID)) + { + if (creature->HasAura(CageOfCarnage::Spells::UndermineArenaVOCooldownAura)) + return; + + creature->AI()->Talk(CageOfCarnage::Texts::Naminze::ReactionAlmostDead, victim); + + creature->CastSpell(nullptr, CageOfCarnage::Spells::UndermineArenaVOCooldownAura, CastSpellExtraArgsInit{ + .TriggerFlags = TRIGGERED_IGNORE_CAST_IN_PROGRESS | TRIGGERED_DONT_REPORT_CAST_ERROR + }); + } + } + +private: + GuidVector _doorGUIDs; + ObjectGuid _naminzeGUID; + + TaskScheduler _scheduler; +}; + +// 472883 - Undermine Arena Reaction Trigger - Low Health +class spell_undermine_arena_reaction_trigger_low_health : public SpellScript +{ + bool Load() override + { + return GetCaster()->GetMapId() == CageOfCarnage::MapIds::CageOfCarnage; + } + + void HandleHit(SpellEffIndex /*effIndex*/) const + { + Unit* target = GetHitUnit(); + if (target->HasAura(CageOfCarnage::Spells::ArenaLowHealthCooldownAura)) + return; + + target->CastSpell(nullptr, CageOfCarnage::Spells::ArenaLowHealthCooldownAura, CastSpellExtraArgsInit{ + .TriggerFlags = TRIGGERED_IGNORE_CAST_IN_PROGRESS | TRIGGERED_DONT_REPORT_CAST_ERROR + }); + + if (ZoneScript* zoneScript = target->FindZoneScript()) + zoneScript->DoAction(CageOfCarnage::Actions::ReactionTrigger, GetCaster(), target); + } + + void Register() override + { + OnEffectHitTarget += SpellEffectFn(spell_undermine_arena_reaction_trigger_low_health::HandleHit, EFFECT_0, SPELL_EFFECT_SCRIPT_EFFECT); + } +}; + +// 472885 - Undermine Arena Reaction Trigger +class spell_undermine_arena_reaction_trigger : public AuraScript +{ + bool Load() override + { + return GetOwner()->GetMapId() == CageOfCarnage::MapIds::CageOfCarnage; + } + + void HandleProc(ProcEventInfo const& eventInfo) const + { + if (ZoneScript* zonescript = GetTarget()->FindZoneScript()) + zonescript->DoAction(CageOfCarnage::Actions::ReactionDead, eventInfo.GetActor(), eventInfo.GetProcTarget()); + } + + void Register() override + { + OnProc += AuraProcFn(spell_undermine_arena_reaction_trigger::HandleProc); + } +}; + +// 1214676 - Warning (countdown) +class spell_undermine_arena_warning_countdown : public AuraScript +{ + bool Load() override + { + return GetOwner()->GetMapId() == CageOfCarnage::MapIds::CageOfCarnage; + } + + bool Validate(SpellInfo const* /*spellInfo*/) override + { + return ValidateSpellInfo({ CageOfCarnage::Spells::WarningTeleport }); + } + + void HandleRemove(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/) const + { + Player* target= GetTarget()->ToPlayer(); + if (!target) + return; + + if (!target->HasAura(CageOfCarnage::Spells::ArenaStartingAreaMarker)) + return; + + target->CastSpell(nullptr, CageOfCarnage::Spells::WarningTeleport, CastSpellExtraArgsInit{ + .TriggerFlags = TRIGGERED_IGNORE_CAST_IN_PROGRESS | TRIGGERED_DONT_REPORT_CAST_ERROR + }); + } + + void Register() override + { + OnEffectRemove += AuraEffectRemoveFn(spell_undermine_arena_warning_countdown::HandleRemove, EFFECT_0, SPELL_AURA_DUMMY, AURA_EFFECT_HANDLE_REAL); + } +}; + +// 371319 - Warning Teleport +class spell_undermine_arena_warning_teleport : public SpellScript +{ + bool Load() override + { + return GetCaster()->GetMapId() == CageOfCarnage::MapIds::CageOfCarnage; + } + + void HandleTeleport(SpellEffIndex /*effIndex*/) const + { + Player* target = GetHitPlayer(); + if (!target) + return; + + if (target->GetBGTeam() == ALLIANCE) + target->NearTeleportTo(CageOfCarnage::Positions::PurpleWarningTeleport); + else + target->NearTeleportTo(CageOfCarnage::Positions::GoldWarningTeleport); + } + + void Register() override + { + OnEffectHitTarget += SpellEffectFn(spell_undermine_arena_warning_teleport::HandleTeleport, EFFECT_0, SPELL_EFFECT_DUMMY); + } +}; + +void AddSC_arena_cage_of_carnage() +{ + RegisterBattlegroundMapScript(arena_cage_of_carnage, CageOfCarnage::MapIds::CageOfCarnage); + RegisterSpellScript(spell_undermine_arena_reaction_trigger_low_health); + RegisterSpellScript(spell_undermine_arena_reaction_trigger); + RegisterSpellScript(spell_undermine_arena_warning_countdown); + RegisterSpellScript(spell_undermine_arena_warning_teleport); +} diff --git a/src/server/scripts/Battlegrounds/battlegrounds_script_loader.cpp b/src/server/scripts/Battlegrounds/battlegrounds_script_loader.cpp index 5bf00c0a80a..c2c3d8b3439 100644 --- a/src/server/scripts/Battlegrounds/battlegrounds_script_loader.cpp +++ b/src/server/scripts/Battlegrounds/battlegrounds_script_loader.cpp @@ -70,6 +70,8 @@ void AddSC_arena_the_robodrome(); void AddSC_arena_maldraxxus_coliseum(); +void AddSC_arena_cage_of_carnage(); + // The name of this function should match: // void Add${NameOfDirectory}Scripts() void AddBattlegroundsScripts() @@ -124,4 +126,6 @@ void AddBattlegroundsScripts() AddSC_arena_the_robodrome(); AddSC_arena_maldraxxus_coliseum(); + + AddSC_arena_cage_of_carnage(); } |