mirror of
https://github.com/ZhengPeiRu21/mod-individual-progression
synced 2025-11-29 23:44:51 +08:00
Merge pull request #492 from valsan-azerty-boi/ft/many_adjustments
Many minor adjustments
This commit is contained in:
@@ -39,23 +39,34 @@ INSERT INTO `creature` (`guid`, `id1`, `id2`, `id3`, `map`, `zoneId`, `areaId`,
|
|||||||
(@CGUID+29,15534,0,0,1,0,0,1,1,1,1632.55,-4091.73,35.2461,5.86929,300,0,0,14355,0,0,0,0,0,'',0),
|
(@CGUID+29,15534,0,0,1,0,0,1,1,1,1632.55,-4091.73,35.2461,5.86929,300,0,0,14355,0,0,0,0,0,'',0),
|
||||||
(@CGUID+30,15535,0,0,1,0,0,1,1,1,1634.37,-4087.58,36.2655,5.29543,300,0,0,15260,0,0,0,0,0,'',0);
|
(@CGUID+30,15535,0,0,1,0,0,1,1,1,1634.37,-4087.58,36.2655,5.29543,300,0,0,15260,0,0,0,0,0,'',0);
|
||||||
|
|
||||||
|
-- Commendation Npcs
|
||||||
|
DELETE FROM `creature` WHERE `id1` IN (15731, 15733, 15734, 15735, 21969, 15736, 15737, 15738, 15739, 21968);
|
||||||
|
INSERT INTO `creature` (`guid`, `id1`, `id2`, `id3`, `map`, `zoneId`, `areaId`, `spawnMask`, `phaseMask`, `equipment_id`, `position_x`, `position_y`, `position_z`, `orientation`, `spawntimesecs`, `wander_distance`, `currentwaypoint`, `curhealth`, `curmana`, `MovementType`, `npcflag`, `unit_flags`, `dynamicflags`, `ScriptName`, `VerifiedBuild`) VALUES
|
||||||
-- Alliance Commendation Npcs
|
-- Alliance Commendation Npcs
|
||||||
DELETE FROM `creature` WHERE `id1` IN (15731, 15733, 15734, 15735, 21969);
|
(@CGUID+31,15731,0,0,0,0,0,1,1,0,-4938.75,-1206.29,501.658,4.03146,300,0,0,2614,0,0,0,0,0,'npc_ipp_we',0),
|
||||||
INSERT INTO `creature` (`guid`, `id1`, `id2`, `id3`, `map`, `zoneId`, `areaId`, `spawnMask`, `phaseMask`, `equipment_id`, `position_x`, `position_y`, `position_z`, `orientation`, `spawntimesecs`, `wander_distance`, `currentwaypoint`, `curhealth`, `curmana`, `MovementType`, `npcflag`, `unit_flags`, `dynamicflags`, `ScriptName`, `VerifiedBuild`) VALUES
|
(@CGUID+32,15733,0,0,0,0,0,1,1,0,-4936.65,-1209.73,501.658,3.95796,300,0,0,2614,0,0,0,0,0,'npc_ipp_we',0),
|
||||||
(@CGUID+31,15731,0,0,0,0,0,1,1,0,-4938.75,-1206.29,501.658,4.03146,300,0,0,2614,0,0,0,0,0,'',0),
|
(@CGUID+33,15734,0,0,0,0,0,1,1,0,-4943.13,-1204.78,501.658,4.62712,300,0,0,2614,0,0,0,0,0,'npc_ipp_we',0),
|
||||||
(@CGUID+32,15733,0,0,0,0,0,1,1,0,-4936.65,-1209.73,501.658,3.95796,300,0,0,2614,0,0,0,0,0,'',0),
|
(@CGUID+34,15735,0,0,0,0,0,1,1,0,-4936.06,-1214.82,501.639,3.21465,300,0,0,2614,0,0,0,0,0,'npc_ipp_we',0),
|
||||||
(@CGUID+33,15734,0,0,0,0,0,1,1,0,-4943.13,-1204.78,501.658,4.62712,300,0,0,2614,0,0,0,0,0,'',0),
|
(@CGUID+35,21969,0,0,0,0,0,1,1,0,-4946.71,-1206.24,501.658,5.19933,300,0,0,2614,0,0,0,0,0,'npc_ipp_we',0),
|
||||||
(@CGUID+34,15735,0,0,0,0,0,1,1,0,-4936.06,-1214.82,501.639,3.21465,300,0,0,2614,0,0,0,0,0,'',0),
|
|
||||||
(@CGUID+35,21969,0,0,0,0,0,1,1,0,-4946.71,-1206.24,501.658,5.19933,300,0,0,2614,0,0,0,0,0,'',0);
|
|
||||||
|
|
||||||
-- Horde Commendation Npcs
|
-- Horde Commendation Npcs
|
||||||
DELETE FROM `creature` WHERE `id1` IN (15736, 15737, 15738, 15739, 21968);
|
(@CGUID+36,15736,0,0,1,0,0,1,1,0,1592.17,-4097.91,34.9759,6.25645,300,0,0,2614,0,0,0,0,0,'npc_ipp_we',0),
|
||||||
INSERT INTO `creature` (`guid`, `id1`, `id2`, `id3`, `map`, `zoneId`, `areaId`, `spawnMask`, `phaseMask`, `equipment_id`, `position_x`, `position_y`, `position_z`, `orientation`, `spawntimesecs`, `wander_distance`, `currentwaypoint`, `curhealth`, `curmana`, `MovementType`, `npcflag`, `unit_flags`, `dynamicflags`, `ScriptName`, `VerifiedBuild`) VALUES
|
(@CGUID+37,15737,0,0,1,0,0,1,1,0,1595.6,-4091.94,35.8097,5.20323,300,0,0,2614,0,0,0,0,0,'npc_ipp_we',0),
|
||||||
(@CGUID+36,15736,0,0,1,0,0,1,1,0,1592.17,-4097.91,34.9759,6.25645,300,0,0,2614,0,0,0,0,0,'',0),
|
(@CGUID+38,15738,0,0,1,0,0,1,1,0,1598.27,-4090.5,35.8736,5.13568,300,0,0,2614,0,0,0,0,0,'npc_ipp_we',0),
|
||||||
(@CGUID+37,15737,0,0,1,0,0,1,1,0,1595.6,-4091.94,35.8097,5.20323,300,0,0,2614,0,0,0,0,0,'',0),
|
(@CGUID+39,15739,0,0,1,0,0,1,1,0,1592.84,-4094.01,35.6404,5.82527,300,0,0,2614,0,0,0,0,0,'npc_ipp_we',0),
|
||||||
(@CGUID+38,15738,0,0,1,0,0,1,1,0,1598.27,-4090.5,35.8736,5.13568,300,0,0,2614,0,0,0,0,0,'',0),
|
(@CGUID+40,21968,0,0,1,0,0,1,1,0,1601.01,-4091.87,35.5195,4.52778,300,0,0,2614,0,0,0,0,0,'npc_ipp_we',0),
|
||||||
(@CGUID+39,15739,0,0,1,0,0,1,1,0,1592.84,-4094.01,35.6404,5.82527,300,0,0,2614,0,0,0,0,0,'',0),
|
-- After AQ phase, the commendation Npcs move to their respective cities until the end of WotLK expansion, allows players to use up their marks if they have any after AQ
|
||||||
(@CGUID+40,21968,0,0,1,0,0,1,1,0,1601.01,-4091.87,35.5195,4.52778,300,0,0,2614,0,0,0,0,0,'',0);
|
-- Post AQ Alliance Commendation Npcs
|
||||||
|
(@CGUID+41,15731,0,0,1,0,0,1,1,0,9949.44,2497.12,1317.629,4.7139,300,0,0,2614,0,0,0,0,0,'npc_ipp_naxx40',0),
|
||||||
|
(@CGUID+42,15733,0,0,0,0,0,1,1,0,-4824.87,-1287.68,501.868,1.38699,300,0,0,2614,0,0,0,0,0,'npc_ipp_naxx40',0),
|
||||||
|
(@CGUID+43,15734,0,0,0,0,0,1,1,0,-4974.55,-1197.28,501.662,1.925,300,0,0,2614,0,0,0,0,0,'npc_ipp_naxx40',0),
|
||||||
|
(@CGUID+44,15735,0,0,0,0,0,1,1,0,-8863.96,636.05,96.1007,1.94892,300,0,0,2614,0,0,0,0,0,'npc_ipp_naxx40',0),
|
||||||
|
(@CGUID+45,21969,0,0,530,0,0,1,1,0,-3925.42,-11606.5,-138.447,4.948,300,0,0,2614,0,0,0,0,0,'npc_ipp_naxx40',0),
|
||||||
|
-- Post AQ Horde Commendation Npcs
|
||||||
|
(@CGUID+46,15736,0,0,1,0,0,1,1,0,1582.31,-4110.7,34.113,5.29359,300,0,0,2614,0,0,0,0,0,'npc_ipp_naxx40',0),
|
||||||
|
(@CGUID+47,15737,0,0,1,0,0,1,1,0,1617.93,-4100.5,33.307,4.99858,300,0,0,2614,0,0,0,0,0,'npc_ipp_naxx40',0),
|
||||||
|
(@CGUID+48,15738,0,0,0,0,0,1,1,0,1596.11,279.05,-43.102,4.69252,300,0,0,2614,0,0,0,0,0,'npc_ipp_naxx40',0),
|
||||||
|
(@CGUID+49,15739,0,0,1,0,0,1,1,0,-1213.31,51.31,130.71,2.55176,300,0,0,2614,0,0,0,0,0,'npc_ipp_naxx40',0),
|
||||||
|
(@CGUID+50,21968,0,0,530,0,0,1,1,0,9514.08,-7170.69,14.1073,0.12504,300,0,0,2614,0,0,0,0,0,'npc_ipp_naxx40',0);
|
||||||
|
|
||||||
-- War Effort Recruiters
|
-- War Effort Recruiters
|
||||||
DELETE FROM `gossip_menu` WHERE `MenuID` IN (3118101, 3118103, 3118105, 3118107);
|
DELETE FROM `gossip_menu` WHERE `MenuID` IN (3118101, 3118103, 3118105, 3118107);
|
||||||
@@ -69,7 +80,7 @@ UPDATE `creature_template` SET `gossip_menu_id` = 3118107, `npcflag` = 3 WHERE `
|
|||||||
UPDATE `quest_template` SET `AllowableRaces` = 690 WHERE `ID` IN (8792, 8793, 8794, 10500);
|
UPDATE `quest_template` SET `AllowableRaces` = 690 WHERE `ID` IN (8792, 8793, 8794, 10500);
|
||||||
UPDATE `quest_template` SET `AllowableRaces` = 1101 WHERE `ID` IN (8795, 8796, 8797, 10501);
|
UPDATE `quest_template` SET `AllowableRaces` = 1101 WHERE `ID` IN (8795, 8796, 8797, 10501);
|
||||||
|
|
||||||
DELETE FROM `creature_queststarter` WHERE `quest` IN (8792, 8795, 8796, 8797, 10500, 10501);
|
DELETE FROM `creature_queststarter` WHERE `quest` IN (8792, 8793, 8794, 8795, 8796, 8797, 10500, 10501);
|
||||||
INSERT INTO `creature_queststarter` (`id`, `quest`) VALUES (15702, 8792), (15703, 8792), (15704, 8792), (21155, 8792), (15707, 8795), (15708, 8795), (15709, 8795), (21156, 8795);
|
INSERT INTO `creature_queststarter` (`id`, `quest`) VALUES (15702, 8792), (15703, 8792), (15704, 8792), (21155, 8792), (15707, 8795), (15708, 8795), (15709, 8795), (21156, 8795);
|
||||||
|
|
||||||
DELETE FROM `creature_questender` WHERE `quest` IN (8792, 8793, 8794, 8795, 8796, 8797, 10500, 10501);
|
DELETE FROM `creature_questender` WHERE `quest` IN (8792, 8793, 8794, 8795, 8796, 8797, 10500, 10501);
|
||||||
@@ -77,20 +88,20 @@ INSERT INTO `creature_questender` (`id`, `quest`) VALUES (15700, 8792), (15701,
|
|||||||
|
|
||||||
DELETE FROM `creature` WHERE `id1` IN (15702, 15703, 15704, 15707, 15708, 15709, 21155, 21156);
|
DELETE FROM `creature` WHERE `id1` IN (15702, 15703, 15704, 15707, 15708, 15709, 21155, 21156);
|
||||||
INSERT INTO `creature` (`guid`, `id1`, `id2`, `id3`, `map`, `zoneId`, `areaId`, `spawnMask`, `phaseMask`, `equipment_id`, `position_x`, `position_y`, `position_z`, `orientation`, `spawntimesecs`, `wander_distance`, `currentwaypoint`, `curhealth`, `curmana`, `MovementType`, `npcflag`, `unit_flags`, `dynamicflags`, `ScriptName`, `VerifiedBuild`) VALUES
|
INSERT INTO `creature` (`guid`, `id1`, `id2`, `id3`, `map`, `zoneId`, `areaId`, `spawnMask`, `phaseMask`, `equipment_id`, `position_x`, `position_y`, `position_z`, `orientation`, `spawntimesecs`, `wander_distance`, `currentwaypoint`, `curhealth`, `curmana`, `MovementType`, `npcflag`, `unit_flags`, `dynamicflags`, `ScriptName`, `VerifiedBuild`) VALUES
|
||||||
(@CGUID+41,15702,0,0,1,0,0,1,1,0,-1209.58, 100.22, 134.661, 3.15905,300,0,0,15260,0,0,0,0,0,'',0),
|
(@CGUID+51,15702,0,0,1,0,0,1,1,0,-1209.58, 100.22, 134.661, 3.15905,300,0,0,15260,0,0,0,0,0,'',0),
|
||||||
(@CGUID+42,15703,0,0,0,0,0,1,1,0,1572.58, 272.707, -43.0193, 5.02655,300,0,0,15260,0,0,0,0,0,'',0),
|
(@CGUID+52,15703,0,0,0,0,0,1,1,0,1572.58, 272.707, -43.0193, 5.02655,300,0,0,15260,0,0,0,0,0,'',0),
|
||||||
(@CGUID+43,15704,0,0,1,0,0,1,1,0,1653.07, -4403.81, 18.5819, 4.45059,300,0,0,15260,0,0,0,0,0,'',0),
|
(@CGUID+53,15704,0,0,1,0,0,1,1,0,1653.07, -4403.81, 18.5819, 4.45059,300,0,0,15260,0,0,0,0,0,'',0),
|
||||||
(@CGUID+44,15707,0,0,0,0,0,1,1,0,-4956.09, -931.133, 503.347, 5.37561,300,0,0,15260,0,0,0,0,0,'',0),
|
(@CGUID+54,15707,0,0,0,0,0,1,1,0,-4956.09, -931.133, 503.347, 5.37561,300,0,0,15260,0,0,0,0,0,'',0),
|
||||||
(@CGUID+45,15708,0,0,0,0,0,1,1,0,-8813.75, 654.068, 96.1603, 4.83456,300,0,0,15260,0,0,0,0,0,'',0),
|
(@CGUID+55,15708,0,0,0,0,0,1,1,0,-8813.75, 654.068, 96.1603, 4.83456,300,0,0,15260,0,0,0,0,0,'',0),
|
||||||
(@CGUID+46,15709,0,0,1,0,0,1,1,0,9945.15, 2494.24, 1317.52, 4.20624,300,0,0,15260,0,0,0,0,0,'',0),
|
(@CGUID+56,15709,0,0,1,0,0,1,1,0,9945.15, 2494.24, 1317.52, 4.20624,300,0,0,15260,0,0,0,0,0,'',0),
|
||||||
(@CGUID+47,21155,0,0,530,0,0,1,1,0,9526.53, -7190.16, 16.1257, 1.55872,300,0,0,15260,0,0,0,0,0,'',0),
|
(@CGUID+57,21155,0,0,530,0,0,1,1,0,9526.53, -7190.16, 16.1257, 1.55872,300,0,0,15260,0,0,0,0,0,'',0),
|
||||||
(@CGUID+48,21156,0,0,530,0,0,1,1,0,-3907.79, -11606.595, -138.176, 4.69083,300,0,0,15260,0,0,0,0,0,'',0);
|
(@CGUID+58,21156,0,0,530,0,0,1,1,0,-3907.79, -11606.595, -138.176, 4.69083,300,0,0,15260,0,0,0,0,0,'',0);
|
||||||
|
|
||||||
-- War Effort Commanders
|
-- War Effort Commanders
|
||||||
DELETE FROM `creature` WHERE `id1` IN (15700, 15701);
|
DELETE FROM `creature` WHERE `id1` IN (15700, 15701);
|
||||||
INSERT INTO `creature` (`guid`, `id1`, `id2`, `id3`, `map`, `zoneId`, `areaId`, `spawnMask`, `phaseMask`, `equipment_id`, `position_x`, `position_y`, `position_z`, `orientation`, `spawntimesecs`, `wander_distance`, `currentwaypoint`, `curhealth`, `curmana`, `MovementType`, `npcflag`, `unit_flags`, `dynamicflags`, `ScriptName`, `VerifiedBuild`) VALUES
|
INSERT INTO `creature` (`guid`, `id1`, `id2`, `id3`, `map`, `zoneId`, `areaId`, `spawnMask`, `phaseMask`, `equipment_id`, `position_x`, `position_y`, `position_z`, `orientation`, `spawntimesecs`, `wander_distance`, `currentwaypoint`, `curhealth`, `curmana`, `MovementType`, `npcflag`, `unit_flags`, `dynamicflags`, `ScriptName`, `VerifiedBuild`) VALUES
|
||||||
(@CGUID+49,15701,0,0,0,0,0,1,1,1,-4961.68,-1243.19,501.672,2.46488,300,0,1,30520,0,2,0,134254592,0,'',0),
|
(@CGUID+59,15701,0,0,0,0,0,1,1,1,-4961.68,-1243.19,501.672,2.46488,300,0,1,30520,0,2,0,134254592,0,'',0),
|
||||||
(@CGUID+50,15700,0,0,1,0,0,1,1,1,1581.39,-4202.27,41.8233,4.96133,300,0,1,30520,0,2,0,134217728,0,'',0);
|
(@CGUID+60,15700,0,0,1,0,0,1,1,1,1581.39,-4202.27,41.8233,4.96133,300,0,1,30520,0,2,0,134217728,0,'',0);
|
||||||
|
|
||||||
SET @NPC := 15701;
|
SET @NPC := 15701;
|
||||||
SET @PATH := @NPC * 10;
|
SET @PATH := @NPC * 10;
|
||||||
@@ -136,7 +147,7 @@ INSERT INTO `creature_template_addon` (`entry`,`path_id`,`mount`,`bytes1`,`bytes
|
|||||||
-- Phase AQ War Effort Npcs
|
-- Phase AQ War Effort Npcs
|
||||||
UPDATE `creature_template` SET `ScriptName` = 'npc_ipp_we' WHERE `entry` IN
|
UPDATE `creature_template` SET `ScriptName` = 'npc_ipp_we' WHERE `entry` IN
|
||||||
(15383, 15431, 15432, 15434, 15437, 15445, 15446, 15448, 15450, 15451, 15452, 15453, 15455, 15456, 15457, 15459, 15460, 15469, 15477, 15508, 15512, 15515, 15522, 15525,
|
(15383, 15431, 15432, 15434, 15437, 15445, 15446, 15448, 15450, 15451, 15452, 15453, 15455, 15456, 15457, 15459, 15460, 15469, 15477, 15508, 15512, 15515, 15522, 15525,
|
||||||
15528, 15529, 15532, 15533, 15534, 15535, 15700, 15701, 15702, 15703, 15704, 15707, 15708, 15709, 15738, 15737, 15739, 15736, 15731, 15733, 15735, 15734, 21155, 21156, 21968, 21969);
|
15528, 15529, 15532, 15533, 15534, 15535, 15700, 15701, 15702, 15703, 15704, 15707, 15708, 15709, 21155, 21156);
|
||||||
|
|
||||||
-- Phase AQ War Effort Objects
|
-- Phase AQ War Effort Objects
|
||||||
DELETE FROM `gameobject` WHERE `id` IN (180598, 180679, 180680, 180681, 180812, 180818, 180826, 180832, 180838);
|
DELETE FROM `gameobject` WHERE `id` IN (180598, 180679, 180680, 180681, 180812, 180818, 180826, 180832, 180838);
|
||||||
|
|||||||
@@ -288,3 +288,10 @@ INSERT INTO `reference_loot_template`(`Entry`, `Item`, `Reference`, `Chance`, `Q
|
|||||||
(30551, 19382, 0, 0.0, 0, 1, 1, 1,1),
|
(30551, 19382, 0, 0.0, 0, 1, 1, 1,1),
|
||||||
(30330, 30171, 30171, 100.0, 0, 1, 0, 1, 1),
|
(30330, 30171, 30171, 100.0, 0, 1, 0, 1, 1),
|
||||||
(30105, 30044, 30044, 100.0, 0, 1, 0, 1 ,1);
|
(30105, 30044, 30044, 100.0, 0, 1, 0, 1 ,1);
|
||||||
|
|
||||||
|
/* Classic nefarian head quest locale fix for non EN langs */
|
||||||
|
/* Was set as Garrosh, correct warchief is Thrall */
|
||||||
|
UPDATE `quest_template_locale` SET `Objectives` = 'Bringt Thrall in Orgrimmar den Kopf von Nefarian.' WHERE `ID` = 7783 AND `locale` = 'deDE';
|
||||||
|
UPDATE `quest_template_locale` SET `Objectives` = 'Lleva la cabeza de Nefarian a Thrall a Orgrimmar.' WHERE `ID` = 7783 AND `locale` = 'esES';
|
||||||
|
UPDATE `quest_template_locale` SET `Objectives` = 'Lleva la cabeza de Nefarian a Thrall a Orgrimmar.' WHERE `ID` = 7783 AND `locale` = 'esMX';
|
||||||
|
UPDATE `quest_template_locale` SET `Objectives` = 'Apportez la tête de Nefarian à Thrall à Orgrimmar.' WHERE `ID` = 7783 AND `locale` = 'frFR';
|
||||||
|
|||||||
@@ -255,6 +255,8 @@ INSERT INTO `creature_onkill_reputation` (`creature_id`, `RewOnKillRepFaction1`,
|
|||||||
-- Lieutenants, Investigate the Scourge
|
-- Lieutenants, Investigate the Scourge
|
||||||
UPDATE `quest_template` SET `AllowableRaces` = 1101 WHERE `ID` IN (9260, 9261, 9262); -- Stormwind, Ironforge, Darnassus, Exodar(12817)
|
UPDATE `quest_template` SET `AllowableRaces` = 1101 WHERE `ID` IN (9260, 9261, 9262); -- Stormwind, Ironforge, Darnassus, Exodar(12817)
|
||||||
UPDATE `quest_template` SET `AllowableRaces` = 690 WHERE `ID` IN (9263, 9264, 9265); -- Orgrimmar, Thunder Bluff, Undercity, Silvermoon(12816)
|
UPDATE `quest_template` SET `AllowableRaces` = 690 WHERE `ID` IN (9263, 9264, 9265); -- Orgrimmar, Thunder Bluff, Undercity, Silvermoon(12816)
|
||||||
|
UPDATE `quest_template` SET `Flags` = 8, `RequiredNpcOrGo1` = 0 WHERE `ID` IN (9260, 9261, 9262, 9263, 9264, 9265);
|
||||||
|
UPDATE `quest_template_addon` SET `SpecialFlags` = 0 WHERE `ID` IN (9260, 9261, 9262, 9263, 9264, 9265);
|
||||||
|
|
||||||
UPDATE `creature_template` SET `npcflag` = 2 WHERE `entry` IN (16478, 16484, 16490, 16493, 16494, 16495);
|
UPDATE `creature_template` SET `npcflag` = 2 WHERE `entry` IN (16478, 16484, 16490, 16493, 16494, 16495);
|
||||||
UPDATE `creature_template` SET `npcflag` = 0 WHERE `entry` IN (29441, 29442); -- there are no scourge outside Exodar and Silvermoon.
|
UPDATE `creature_template` SET `npcflag` = 0 WHERE `entry` IN (29441, 29442); -- there are no scourge outside Exodar and Silvermoon.
|
||||||
@@ -329,12 +331,12 @@ UPDATE `quest_request_items` SET `CompletionText` = 'Have you investigated the i
|
|||||||
UPDATE `quest_request_items` SET `CompletionText` = 'You\'ve come to join our order, have you not?' WHERE `ID` = 9154;
|
UPDATE `quest_request_items` SET `CompletionText` = 'You\'ve come to join our order, have you not?' WHERE `ID` = 9154;
|
||||||
|
|
||||||
-- Alliance Quartermaster and Horde Outfitter Quests
|
-- Alliance Quartermaster and Horde Outfitter Quests
|
||||||
UPDATE `quest_template` SET `QuestDescription` = 'If you bring me thirty necrotic runes, I will give you your choice of hand protection in return. These should prove valuable in our fight against the undead Scourge.' WHERE `ID` IN (9094, 9333);
|
UPDATE `quest_template` SET `LogDescription` = 'Collect 30 Necrotic Runes.', `QuestDescription` = 'If you bring me thirty necrotic runes, I will give you your choice of hand protection in return. These should prove valuable in our fight against the undead Scourge.' WHERE `ID` IN (9094, 9333);
|
||||||
UPDATE `quest_template` SET `QuestDescription` = 'If you bring me eight necrotic runes from the Scourge invaders, I can give you a consecrated sharpening stone. It should be of great help in your battle against the minions of the Lich King.' WHERE `ID` IN (9317, 9335);
|
UPDATE `quest_template` SET `LogDescription` = 'Collect 8 Necrotic Runes.', `QuestDescription` = 'If you bring me eight necrotic runes from the Scourge invaders, I can give you a consecrated sharpening stone. It should be of great help in your battle against the minions of the Lich King.' WHERE `ID` IN (9317, 9335);
|
||||||
UPDATE `quest_template` SET `QuestDescription` = 'In exchange for the necrotic runes of the Scourge invaders, the Argent Dawn will give you one vial of blessed wizard oil.' WHERE `ID` IN (9318, 9334);
|
UPDATE `quest_template` SET `LogDescription` = 'Collect 8 Necrotic Runes.', `QuestDescription` = 'In exchange for the necrotic runes of the Scourge invaders, the Argent Dawn will give you one vial of blessed wizard oil.' WHERE `ID` IN (9318, 9334);
|
||||||
UPDATE `quest_template` SET `QuestDescription` = 'In addition to our other supplies, we also have a number of major healing potions you may find useful. I will give you one in exchange for fifteen necrotic runes.' WHERE `ID` IN (9321, 9336);
|
UPDATE `quest_template` SET `LogDescription` = 'Collect 15 Necrotic Runes.', `QuestDescription` = 'In addition to our other supplies, we also have a number of major healing potions you may find useful. I will give you one in exchange for fifteen necrotic runes.' WHERE `ID` IN (9321, 9336);
|
||||||
UPDATE `quest_template` SET `QuestDescription` = 'In addition to our other supplies, we also have a number of major mana potions you may find useful. I will give you one in exchange for fifteen necrotic runes.' WHERE `ID` IN (9320, 9337);
|
UPDATE `quest_template` SET `LogDescription` = 'Collect 15 Necrotic Runes.', `QuestDescription` = 'In addition to our other supplies, we also have a number of major mana potions you may find useful. I will give you one in exchange for fifteen necrotic runes.' WHERE `ID` IN (9320, 9337);
|
||||||
UPDATE `quest_template` SET `QuestDescription` = 'You have aided our cause greatly, $N. If you wish, I can make available the tabard of the Argent Dawn. We are proud to have you among our allies.' WHERE `ID` IN (9341, 9343);
|
UPDATE `quest_template` SET `LogDescription` = 'Collect 10 Necrotic Runes.', `QuestDescription` = 'You have aided our cause greatly, $N. If you wish, I can make available the tabard of the Argent Dawn. We are proud to have you among our allies.' WHERE `ID` IN (9341, 9343);
|
||||||
|
|
||||||
DELETE FROM `quest_offer_reward` WHERE `ID` IN
|
DELETE FROM `quest_offer_reward` WHERE `ID` IN
|
||||||
(9094, 9317, 9318, 9321, 9337, 9341, -- Alliance
|
(9094, 9317, 9318, 9321, 9337, 9341, -- Alliance
|
||||||
|
|||||||
@@ -325,3 +325,6 @@ INSERT INTO `waypoint_data` (`id`, `point`, `position_x`, `position_y`, `positio
|
|||||||
(6400190, 1, -11891.9, -3211.69, -14.6478, NULL, 0, 0, 0, 100, 0),
|
(6400190, 1, -11891.9, -3211.69, -14.6478, NULL, 0, 0, 0, 100, 0),
|
||||||
(6400190, 2, -11847.1, -3205.97, -28.9958, NULL, 0, 1, 0, 100, 0),
|
(6400190, 2, -11847.1, -3205.97, -28.9958, NULL, 0, 1, 0, 100, 0),
|
||||||
(6400190, 3, -11842.5, -3223.27, -28.9624, NULL, 30000, 1, 0, 100, 0);
|
(6400190, 3, -11842.5, -3223.27, -28.9624, NULL, 30000, 1, 0, 100, 0);
|
||||||
|
|
||||||
|
/* Outland map outside Dark Portal */
|
||||||
|
UPDATE `gameobject` SET `ScriptName` = 'gobject_ipp_tbc' WHERE `guid` = 42457;
|
||||||
|
|||||||
@@ -287,6 +287,7 @@ UPDATE `creature_template` SET `subname`='Zeppelin Master' WHERE `entry`=12136;
|
|||||||
|
|
||||||
-- Legionnaire Teena
|
-- Legionnaire Teena
|
||||||
UPDATE `creature_template` SET `subname`=NULL, `npcflag`=0, `faction`=85 WHERE `entry`=12788;
|
UPDATE `creature_template` SET `subname`=NULL, `npcflag`=0, `faction`=85 WHERE `entry`=12788;
|
||||||
|
UPDATE `creature_template_locale` SET `Title` = NULL WHERE `entry` = 12788;
|
||||||
|
|
||||||
-- Kor'kron Elite
|
-- Kor'kron Elite
|
||||||
UPDATE `creature_template` SET `minlevel`=60, `maxlevel`=60, `rank`=0 WHERE `entry`=14304;
|
UPDATE `creature_template` SET `minlevel`=60, `maxlevel`=60, `rank`=0 WHERE `entry`=14304;
|
||||||
|
|||||||
@@ -219,6 +219,7 @@ UPDATE `creature_template` SET `subname`='Weapon Crafter' WHERE `entry`=7232;
|
|||||||
|
|
||||||
-- Lieutenant Rachel Vaccar <Outland Armor Quartermaster>
|
-- Lieutenant Rachel Vaccar <Outland Armor Quartermaster>
|
||||||
UPDATE `creature_template` SET `subname`=NULL, `minlevel`=55, `maxlevel`=55, `npcflag`=0 WHERE `entry`=12778;
|
UPDATE `creature_template` SET `subname`=NULL, `minlevel`=55, `maxlevel`=55, `npcflag`=0 WHERE `entry`=12778;
|
||||||
|
UPDATE `creature_template_locale` SET `Title` = NULL WHERE `entry` = 12778;
|
||||||
|
|
||||||
-- Officer Jaxon
|
-- Officer Jaxon
|
||||||
UPDATE `creature_template` SET `minlevel`=60, `maxlevel`=60 WHERE `entry`=14423;
|
UPDATE `creature_template` SET `minlevel`=60, `maxlevel`=60 WHERE `entry`=14423;
|
||||||
|
|||||||
@@ -26,3 +26,26 @@ UPDATE `item_template` SET `spellcooldown_1` = 0, `spellcategorycooldown_1` = 0
|
|||||||
DELETE FROM `creature` WHERE `guid` IN (56628, 56619, 56622, 56610);
|
DELETE FROM `creature` WHERE `guid` IN (56628, 56619, 56622, 56610);
|
||||||
DELETE FROM `creature_formations` WHERE `memberGUID` IN (56628, 56619, 56622, 56610);
|
DELETE FROM `creature_formations` WHERE `memberGUID` IN (56628, 56619, 56622, 56610);
|
||||||
DELETE FROM `linked_respawn` WHERE `guid` IN (56628, 56619, 56622, 56610);
|
DELETE FROM `linked_respawn` WHERE `guid` IN (56628, 56619, 56622, 56610);
|
||||||
|
|
||||||
|
/* -- Restore Firesworn in Garr fight (if needed) -- */
|
||||||
|
/* DELETE FROM `creature` WHERE `guid` IN (56628, 56619, 56622, 56610);
|
||||||
|
INSERT INTO `creature` (`guid`,`id1`,`id2`,`id3`,`map`,`zoneId`,`areaId`,`spawnMask`,`phaseMask`,`equipment_id`,`position_x`,`position_y`,`position_z`,`orientation`,`spawntimesecs`,`wander_distance`,`currentwaypoint`,`curhealth`,`curmana`,`MovementType`,`npcflag`,`unit_flags`,`dynamicflags`,`ScriptName`,`VerifiedBuild`,`CreateObject`,`Comment`) VALUES
|
||||||
|
(56619,12099,0,0,409,0,0,1,1,0,693.192,-494.994,-214.185,0,7200,0,0,61040,0,0,0,0,0,'',0,0,NULL),
|
||||||
|
(56610,12099,0,0,409,0,0,1,1,0,688.943,-508.177,-214.46,4.83456,7200,0,0,61040,0,0,0,0,0,'',0,0,NULL),
|
||||||
|
(56622,12099,0,0,409,0,0,1,1,0,683.891,-496.467,-213.892,6.02003,7200,0,0,61040,0,0,0,0,0,'',0,0,NULL),
|
||||||
|
(56628,12099,0,0,409,0,0,1,1,0,698.831,-507.815,-214.691,6.02004,7200,0,0,61040,0,0,0,0,0,'',0,0,NULL);
|
||||||
|
|
||||||
|
DELETE FROM `creature_formations` WHERE `memberGUID` IN (56628, 56619, 56622, 56610);
|
||||||
|
INSERT INTO `creature_formations` (`leaderGUID`, `memberGUID`, `dist`, `angle`, `groupAI`, `point_1`, `point_2`) VALUES
|
||||||
|
(56609,56610,10,45,514,0,0),
|
||||||
|
(56609,56619,10,135,514,0,0),
|
||||||
|
(56609,56622,10,225,514,0,0),
|
||||||
|
(56609,56628,10,315,514,0,0);
|
||||||
|
|
||||||
|
DELETE FROM `linked_respawn` WHERE `guid` IN (56628, 56619, 56622, 56610);
|
||||||
|
INSERT INTO `linked_respawn` (`guid`, `linkedGuid`, `linkType`) VALUES
|
||||||
|
(56610,56609,0),
|
||||||
|
(56619,56609,0),
|
||||||
|
(56622,56609,0),
|
||||||
|
(56628,56609,0);
|
||||||
|
*/
|
||||||
|
|||||||
@@ -3,6 +3,7 @@
|
|||||||
There are a few exceptions due to some Vanilla models being removed from the game files.
|
There are a few exceptions due to some Vanilla models being removed from the game files.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
UPDATE `creature_template_model` SET `CreatureDisplayID`= 6630 WHERE `CreatureID`= 14387 AND `Idx`= 0;
|
||||||
UPDATE `creature_template_model` SET `CreatureDisplayID`=143 WHERE `CreatureID`=29 AND `Idx`=0;
|
UPDATE `creature_template_model` SET `CreatureDisplayID`=143 WHERE `CreatureID`=29 AND `Idx`=0;
|
||||||
UPDATE `creature_template_model` SET `CreatureDisplayID`=604 WHERE `CreatureID`=69 AND `Idx`=0;
|
UPDATE `creature_template_model` SET `CreatureDisplayID`=604 WHERE `CreatureID`=69 AND `Idx`=0;
|
||||||
UPDATE `creature_template_model` SET `CreatureDisplayID`=732 WHERE `CreatureID`=201 AND `Idx`=0;
|
UPDATE `creature_template_model` SET `CreatureDisplayID`=732 WHERE `CreatureID`=201 AND `Idx`=0;
|
||||||
|
|||||||
@@ -3,6 +3,25 @@
|
|||||||
This includes quest givers and flight paths.
|
This includes quest givers and flight paths.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
/* 1.7 - Zul Gurub */
|
||||||
|
/* Zul Gurub meeting stone phased until appropriate phase */
|
||||||
|
UPDATE `gameobject` SET `ScriptName` = 'gobject_ipp_preaq' WHERE `map` = 0 AND `zoneId` = 33 AND `id` IN (185433);
|
||||||
|
|
||||||
|
/* 1.9 - AQ */
|
||||||
|
/* AQ meeting stone phased until pre-aq phase (at least) */
|
||||||
|
UPDATE `gameobject` SET `ScriptName` = 'gobject_ipp_preaq' WHERE `map` = 1 AND `id` IN (185322);
|
||||||
|
|
||||||
|
/* 1.11 - Naxxramas */
|
||||||
|
/* Naxx Vanilla meeting stone phased until appropriate phase */
|
||||||
|
UPDATE `gameobject` SET `ScriptName` = 'gobject_ipp_naxx40' WHERE `map` = 0 AND `id` IN (193166);
|
||||||
|
|
||||||
|
/* Flight masters at Ratchet and Marshal's Refuge were originally added in patch 1.11 - disabled by default, because most players will expect these npcs to be there */
|
||||||
|
/* UPDATE `creature_template` SET `ScriptName` = 'npc_ipp_naxx40' WHERE `entry` IN (
|
||||||
|
10583, -- Gryfe, Marshal's Refuge, Flight Master
|
||||||
|
16227 -- Bragok, Ratchet, Flight Master
|
||||||
|
); */
|
||||||
|
|
||||||
|
/* 2.0+ - NPCs/Gobjects added in Eastern/Kalimdor during TBC pre-patch or more */
|
||||||
UPDATE `creature_template` SET `ScriptName` = 'npc_ipp_tbc' WHERE `entry` IN (
|
UPDATE `creature_template` SET `ScriptName` = 'npc_ipp_tbc' WHERE `entry` IN (
|
||||||
11701, -- Mor'Vek, Un'Goro
|
11701, -- Mor'Vek, Un'Goro
|
||||||
16288, -- Advisor Sorrelon, The Sepulcher
|
16288, -- Advisor Sorrelon, The Sepulcher
|
||||||
@@ -11,17 +30,40 @@ UPDATE `creature_template` SET `ScriptName` = 'npc_ipp_tbc' WHERE `entry` IN (
|
|||||||
17094, -- Nemeth Hawkeye, Grom'gol Base Camp
|
17094, -- Nemeth Hawkeye, Grom'gol Base Camp
|
||||||
17095, -- Balandar Brightstar, Brackenwall Village
|
17095, -- Balandar Brightstar, Brackenwall Village
|
||||||
17097, -- Advisor Sarophas, Kargath
|
17097, -- Advisor Sarophas, Kargath
|
||||||
|
17098, -- Ambassador Dawnsinger, Orgrimmar
|
||||||
17099, -- Mehlar Dawnblade, The Bulwark
|
17099, -- Mehlar Dawnblade, The Bulwark
|
||||||
17103, -- Emissary Taluun, Stormwind
|
17103, -- Emissary Taluun, Stormwind
|
||||||
|
17104, -- Anchorite Delan, Darkshire
|
||||||
17106, -- Vindicator Palanaar, Astranaar
|
17106, -- Vindicator Palanaar, Astranaar
|
||||||
17109, -- Cersei Dusksinger, Stonard
|
17109, -- Cersei Dusksinger, Stonard
|
||||||
17119, -- Ithania, North Point Tower
|
17119, -- Ithania, North Point Tower
|
||||||
17104, -- Anchorite Delan, Darkshire
|
|
||||||
17218, -- Huraan, Southshore
|
17218, -- Huraan, Southshore
|
||||||
17223, -- Ambassador Rualeth, Aerie Peak
|
17223, -- Ambassador Rualeth, Aerie Peak
|
||||||
17238, -- Anchorite Truuen, Western Plaguelands
|
17238, -- Anchorite Truuen, Western Plaguelands
|
||||||
22931, -- Gorrim, Emerald Sanctuary, Flight Master
|
22931, -- Gorrim, Emerald Sanctuary, Flight Master
|
||||||
|
23131, -- Blood Knight Honor Guard, Orgrimmar
|
||||||
24366, -- Nizzle, Rebel Camp, Flight Master
|
24366, -- Nizzle, Rebel Camp, Flight Master
|
||||||
|
24924, -- Sky-Captain Bomblast, Zep
|
||||||
|
24926, -- Chief Officer Brassbolt, Zep
|
||||||
|
24927, -- Navigator Sparksizzle, Zep
|
||||||
|
24929, -- Crewman Crosswire, Zep
|
||||||
|
24930, -- Crewman Gazzlegear, Zep
|
||||||
|
24931, -- Crewman Fastwrench, Zep
|
||||||
|
24934, -- Snack-O-Matic IV, Zep
|
||||||
|
24935, -- Vend-O-Tron D-Luxe, Zep
|
||||||
|
25070, -- Chief Officer Coppernut, Zep
|
||||||
|
25071, -- Crewman Rusthammer, Zep
|
||||||
|
25072, -- Crewman Quickfix, Zep
|
||||||
|
25074, -- Crewman Sparkfly, Zep
|
||||||
|
25075, -- Zeppelin Controls, Zep
|
||||||
|
25076, -- Navigator Fairweather, Zep
|
||||||
|
25077, -- Sky-Captain Cloudkicker, Zep
|
||||||
|
25100, -- Chief Officer Hammerflange, Zep
|
||||||
|
25101, -- Crewman Cutpipe, Zep
|
||||||
|
25102, -- Crewman Spinshaft, Zep
|
||||||
|
25103, -- Crewman Boltshine, Zep
|
||||||
|
25104, -- Navigator Hatch, Zep
|
||||||
|
25105, -- Sky-Captain Cableclamp, Zep
|
||||||
27705, -- Lorrin Foxfire, Stonard
|
27705, -- Lorrin Foxfire, Stonard
|
||||||
29093, -- Ian Drake, Stormwind
|
29093, -- Ian Drake, Stormwind
|
||||||
29095, -- Edward Cairn, Undercity
|
29095, -- Edward Cairn, Undercity
|
||||||
@@ -34,39 +76,26 @@ UPDATE `creature` SET `ScriptName` = 'npc_ipp_tbc' WHERE `id1` IN (
|
|||||||
19850 -- Councilor Arial D'Anastasis
|
19850 -- Councilor Arial D'Anastasis
|
||||||
) AND `map` = 1; -- Orgrimmar only
|
) AND `map` = 1; -- Orgrimmar only
|
||||||
|
|
||||||
UPDATE `creature` SET `ScriptName` = 'npc_ipp_tbc' WHERE `id1` = 19848 -- Harbinger Ennarth
|
UPDATE `creature` SET `ScriptName` = 'npc_ipp_tbc' WHERE `id1` IN (
|
||||||
AND `map` = 0; -- Stormwind only
|
19848 -- Harbinger Ennarth
|
||||||
|
) AND `map` = 0; -- Stormwind only
|
||||||
|
|
||||||
-- fix bad phasing for Wrathscale Myrmidon, Azuremyst Isle
|
/* Fix bad phasing for Wrathscale Myrmidon, Azuremyst Isle */
|
||||||
UPDATE `creature_template` SET `ScriptName` = '' WHERE `entry` = 17194;
|
UPDATE `creature_template` SET `ScriptName` = '' WHERE `entry` = 17194;
|
||||||
|
|
||||||
-- the flight masters at Ratchet and Marshal's Refuge were originally added in patch 1.11 - disabled by default, because most players will expect these npcs to be there
|
UPDATE `gameobject` SET `ScriptName` = 'gobject_ipp_tbc'
|
||||||
/* UPDATE `creature_template` SET `ScriptName` = 'npc_ipp_naxx40' WHERE `entry` IN (
|
WHERE `map` = 0 AND `id` = 184463; -- Karazhan meeting stone
|
||||||
10583, -- Gryfe, Marshal's Refuge, Flight Master
|
|
||||||
16227 -- Bragok, Ratchet, Flight Master
|
|
||||||
); */
|
|
||||||
|
|
||||||
-- Outland map outside Dark Portal
|
UPDATE `gameobject` SET `ScriptName` = 'gobject_ipp_tbc'
|
||||||
UPDATE `gameobject` SET `ScriptName` = 'gobject_ipp_tbc' WHERE `guid` = 42457;
|
WHERE `map` = 1 AND `id` = 182560; -- Time cavern meeting stone
|
||||||
|
|
||||||
-- remove interactions between Cersei, Lorrin and the orcs in Stonard
|
/* Remove interactions between Cersei, Lorrin and the orcs in Stonard */
|
||||||
UPDATE `creature_template` SET `AIName` = '' WHERE `entry` IN (12807, 17109, 27705);
|
UPDATE `creature_template` SET `AIName` = '' WHERE `entry` IN (12807, 17109, 27705);
|
||||||
|
|
||||||
-- hide Rogg and his anvil + forge at the entrance of Orgrimmar until WotLK
|
/* Hide mailboxes, see: https://www.wowhead.com/classic/object=32349/mailbox */
|
||||||
UPDATE `creature_template` SET `ScriptName` = 'npc_ipp_wotlk' WHERE `entry` = 37072;
|
|
||||||
UPDATE `gameobject` SET `ScriptName` = 'gobject_ipp_wotlk' WHERE `guid` IN (347, 387);
|
|
||||||
|
|
||||||
-- hide mailboxes, see: https://www.wowhead.com/classic/object=32349/mailbox
|
|
||||||
UPDATE `gameobject` SET `ScriptName` = 'gobject_ipp_tbc' WHERE `guid` = 49832; -- Darnassus
|
UPDATE `gameobject` SET `ScriptName` = 'gobject_ipp_tbc' WHERE `guid` = 49832; -- Darnassus
|
||||||
|
|
||||||
UPDATE `gameobject` SET `ScriptName` = 'gobject_ipp_wotlk' WHERE `guid` IN (
|
/* Hide guild vaults until TBC (was introduced during 2.3) - disabled by default, because most players will expect these gobject to be there */
|
||||||
150747, 150748, 150749, 150750, 150751, 150752, 150753, 150755, -- Orgrimmar
|
|
||||||
100500, 100501, 100502, 100503, 268683, -- Undercity
|
|
||||||
932, 933, 100156, 100157, 100158, 100159, 100505, 100506, 150736, 150737, 150738, 150740, 150742, 150743, 150744, 150746, 151239, -- Stormwind
|
|
||||||
121574 -- Darnassus
|
|
||||||
);
|
|
||||||
|
|
||||||
-- hide guild vaults until TBC (was introduced during 2.3) - disabled by default, because most players will expect these gobject to be there
|
|
||||||
/* UPDATE `gameobject` SET `ScriptName` = 'gobject_ipp_tbc' WHERE `guid` IN (
|
/* UPDATE `gameobject` SET `ScriptName` = 'gobject_ipp_tbc' WHERE `guid` IN (
|
||||||
12496, 12497,
|
12496, 12497,
|
||||||
20621,
|
20621,
|
||||||
@@ -81,3 +110,34 @@ UPDATE `gameobject` SET `ScriptName` = 'gobject_ipp_wotlk' WHERE `guid` IN (
|
|||||||
49095,
|
49095,
|
||||||
50356, 50357
|
50356, 50357
|
||||||
); */
|
); */
|
||||||
|
|
||||||
|
/* 3.0+ - NPCs/Gobjects added in Eastern/Kalimdor during WotLK pre-patch or more */
|
||||||
|
UPDATE `creature_template` SET `ScriptName` = 'npc_ipp_wotlk' WHERE `entry` IN (
|
||||||
|
26537, -- Greeb Ramrocket, Zep
|
||||||
|
26539, -- Meefi Farthrottle, Zep
|
||||||
|
29346, -- Apothecary Karlov, Orgrimmar
|
||||||
|
31704, -- Crewman Spinwheel, Zep
|
||||||
|
31705, -- Crewman Coilspan, Zep
|
||||||
|
31706, -- Crewman Stembolt, Zep
|
||||||
|
31716, -- Sky-Captain Cryoflight, Zep
|
||||||
|
31720, -- Crewman Shubbscoop, Zep
|
||||||
|
31723, -- Crewman Barrowswizzle, Zep
|
||||||
|
31724, -- Crewman Paltertop, Zep
|
||||||
|
31725 -- Sky-Captain LaFontaine, Zep
|
||||||
|
);
|
||||||
|
|
||||||
|
/* Hide mailboxes, see: https://www.wowhead.com/classic/object=32349/mailbox */
|
||||||
|
UPDATE `gameobject` SET `ScriptName` = 'gobject_ipp_wotlk' WHERE `guid` IN (
|
||||||
|
150747, 150748, 150749, 150750, 150751, 150752, 150753, 150755, -- Orgrimmar
|
||||||
|
100500, 100501, 100502, 100503, 268683, -- Undercity
|
||||||
|
932, 933, 100156, 100157, 100158, 100159, 100505, 100506, 150736, 150737, 150738, 150740, 150742, 150743, 150744, 150746, 151239, -- Stormwind
|
||||||
|
121574 -- Darnassus
|
||||||
|
);
|
||||||
|
|
||||||
|
/* Hide Rogg and his anvil + forge at the entrance of Orgrimmar until WotLK */
|
||||||
|
UPDATE `creature_template` SET `ScriptName` = 'npc_ipp_wotlk' WHERE `entry` = 37072;
|
||||||
|
UPDATE `gameobject` SET `ScriptName` = 'gobject_ipp_wotlk' WHERE `guid` IN (347, 387);
|
||||||
|
|
||||||
|
/* Hide barber in Kalimdor/Eastern Kingdom/Outland until WotLK - disabled by default, because most players will expect barbers to be there */
|
||||||
|
/* UPDATE `creature` SET `ScriptName` = 'npc_ipp_wotlk' WHERE `map` IN (0, 1, 530) AND `id1` IN (29139, 29141, 29142, 29143, 29145);
|
||||||
|
UPDATE `gameobject` SET `ScriptName` = 'gobject_ipp_wotlk' WHERE `map` IN (0, 1, 530) AND `id` IN (190683, 190684, 190697, 190698, 190699, 190704, 190710, 190711, 190712, 191028, 191029, 191030); */
|
||||||
|
|||||||
@@ -45,11 +45,11 @@ void IndividualProgression::CheckAdjustments(Player* player) const
|
|||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (!hasPassedProgression(player, PROGRESSION_NAXX40) || (!hasPassedProgression(player, PROGRESSION_NAXX40) && (player->GetLevel() < 61)))
|
if (!hasPassedProgression(player, PROGRESSION_NAXX40) || (!hasPassedProgression(player, PROGRESSION_NAXX40) && (player->GetLevel() <= IP_LEVEL_VANILLA)))
|
||||||
{
|
{
|
||||||
AdjustVanillaStats(player);
|
AdjustVanillaStats(player);
|
||||||
}
|
}
|
||||||
else if (!hasPassedProgression(player, PROGRESSION_TBC_TIER_5) || (!hasPassedProgression(player, PROGRESSION_TBC_TIER_5) && (player->GetLevel() < 71)))
|
else if (!hasPassedProgression(player, PROGRESSION_TBC_TIER_5) || (!hasPassedProgression(player, PROGRESSION_TBC_TIER_5) && (player->GetLevel() <= IP_LEVEL_TBC)))
|
||||||
{
|
{
|
||||||
AdjustTBCStats(player);
|
AdjustTBCStats(player);
|
||||||
}
|
}
|
||||||
@@ -70,8 +70,8 @@ void IndividualProgression::ApplyGearStatsTuning(Player* player, float& computed
|
|||||||
{
|
{
|
||||||
if (item->Quality != ITEM_QUALITY_EPIC) // Non-endgame gear is okay
|
if (item->Quality != ITEM_QUALITY_EPIC) // Non-endgame gear is okay
|
||||||
return;
|
return;
|
||||||
if ((hasPassedProgression(player, PROGRESSION_NAXX40) && (item->RequiredLevel <= 60)) ||
|
if ((hasPassedProgression(player, PROGRESSION_NAXX40) && (item->RequiredLevel <= IP_LEVEL_VANILLA)) ||
|
||||||
(hasPassedProgression(player, PROGRESSION_TBC_TIER_5) && (item->RequiredLevel <=70)))
|
(hasPassedProgression(player, PROGRESSION_TBC_TIER_5) && (item->RequiredLevel <= IP_LEVEL_TBC)))
|
||||||
{
|
{
|
||||||
computedAdjustment -= (100.0f * previousGearTuning);
|
computedAdjustment -= (100.0f * previousGearTuning);
|
||||||
}
|
}
|
||||||
@@ -81,8 +81,8 @@ void IndividualProgression::ComputeGearTuning(Player* player, float& computedAdj
|
|||||||
{
|
{
|
||||||
if (item->Quality != ITEM_QUALITY_EPIC) // Non-endgame gear is okay
|
if (item->Quality != ITEM_QUALITY_EPIC) // Non-endgame gear is okay
|
||||||
return;
|
return;
|
||||||
if ((hasPassedProgression(player, PROGRESSION_NAXX40) && (item->RequiredLevel <= 60)) ||
|
if ((hasPassedProgression(player, PROGRESSION_NAXX40) && (item->RequiredLevel <= IP_LEVEL_VANILLA)) ||
|
||||||
(hasPassedProgression(player, PROGRESSION_TBC_TIER_5) && (item->RequiredLevel <=70)))
|
(hasPassedProgression(player, PROGRESSION_TBC_TIER_5) && (item->RequiredLevel <= IP_LEVEL_TBC)))
|
||||||
{
|
{
|
||||||
computedAdjustment += previousGearTuning;
|
computedAdjustment += previousGearTuning;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -21,6 +21,13 @@
|
|||||||
|
|
||||||
typedef std::unordered_map<uint32, uint32> questXpMapType;
|
typedef std::unordered_map<uint32, uint32> questXpMapType;
|
||||||
|
|
||||||
|
enum ProgressionLevelThreshold
|
||||||
|
{
|
||||||
|
IP_LEVEL_VANILLA = 60,
|
||||||
|
IP_LEVEL_TBC = 70,
|
||||||
|
IP_LEVEL_WOTLK = 80
|
||||||
|
};
|
||||||
|
|
||||||
enum ProgressionBossIDs
|
enum ProgressionBossIDs
|
||||||
{
|
{
|
||||||
RAGNAROS = 11502,
|
RAGNAROS = 11502,
|
||||||
|
|||||||
@@ -201,16 +201,16 @@ public:
|
|||||||
|
|
||||||
if (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_PRE_TBC))
|
if (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_PRE_TBC))
|
||||||
{
|
{
|
||||||
if (sWorld->getIntConfig(CONFIG_MAX_PLAYER_LEVEL) > 60)
|
if (sWorld->getIntConfig(CONFIG_MAX_PLAYER_LEVEL) > IP_LEVEL_VANILLA)
|
||||||
{
|
{
|
||||||
maxPlayerLevel = 60;
|
maxPlayerLevel = IP_LEVEL_VANILLA;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_TBC_TIER_5))
|
else if (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_TBC_TIER_5))
|
||||||
{
|
{
|
||||||
if (sWorld->getIntConfig(CONFIG_MAX_PLAYER_LEVEL) > 70)
|
if (sWorld->getIntConfig(CONFIG_MAX_PLAYER_LEVEL) > IP_LEVEL_TBC)
|
||||||
{
|
{
|
||||||
maxPlayerLevel = 70;
|
maxPlayerLevel = IP_LEVEL_TBC;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -242,9 +242,9 @@ public:
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
// Player is still in Vanilla content - give money at 60 level cap
|
// Player is still in Vanilla content - give money at 60 level cap
|
||||||
return ((!sIndividualProgression->hasPassedProgression(player, PROGRESSION_PRE_TBC) && player->GetLevel() == 60) ||
|
return ((!sIndividualProgression->hasPassedProgression(player, PROGRESSION_PRE_TBC) && player->GetLevel() == IP_LEVEL_VANILLA) ||
|
||||||
// Player is in TBC content - give money at 70 level cap
|
// Player is in TBC content - give money at 70 level cap
|
||||||
(!sIndividualProgression->hasPassedProgression(player, PROGRESSION_TBC_TIER_5) && player->GetLevel() == 70));
|
(!sIndividualProgression->hasPassedProgression(player, PROGRESSION_TBC_TIER_5) && player->GetLevel() == IP_LEVEL_TBC));
|
||||||
}
|
}
|
||||||
|
|
||||||
void OnPlayerAfterUpdateMaxHealth(Player* player, float& value) override
|
void OnPlayerAfterUpdateMaxHealth(Player* player, float& value) override
|
||||||
@@ -261,7 +261,7 @@ public:
|
|||||||
sIndividualProgression->ComputeGearTuning(player, gearAdjustment, item->GetTemplate());
|
sIndividualProgression->ComputeGearTuning(player, gearAdjustment, item->GetTemplate());
|
||||||
}
|
}
|
||||||
// Player is still in Vanilla content - give Vanilla health adjustment
|
// Player is still in Vanilla content - give Vanilla health adjustment
|
||||||
if (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_PRE_TBC) || (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_PRE_TBC) && (player->GetLevel() < 61)))
|
if (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_PRE_TBC) || (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_PRE_TBC) && (player->GetLevel() <= IP_LEVEL_VANILLA)))
|
||||||
{
|
{
|
||||||
float adjustmentAmount = 1.0f - sIndividualProgression->vanillaHealthAdjustment;
|
float adjustmentAmount = 1.0f - sIndividualProgression->vanillaHealthAdjustment;
|
||||||
float applyPercent = ((player->GetLevel() - 10.0f) / 50.0f);
|
float applyPercent = ((player->GetLevel() - 10.0f) / 50.0f);
|
||||||
@@ -269,7 +269,7 @@ public:
|
|||||||
value *= computedAdjustment;
|
value *= computedAdjustment;
|
||||||
}
|
}
|
||||||
// Player is in TBC content - give TBC health adjustment
|
// Player is in TBC content - give TBC health adjustment
|
||||||
else if (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_TBC_TIER_5) || (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_TBC_TIER_5) && (player->GetLevel() < 71)))
|
else if (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_TBC_TIER_5) || (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_TBC_TIER_5) && (player->GetLevel() <= IP_LEVEL_TBC)))
|
||||||
{
|
{
|
||||||
value *= (sIndividualProgression->tbcHealthAdjustment - gearAdjustment);
|
value *= (sIndividualProgression->tbcHealthAdjustment - gearAdjustment);
|
||||||
}
|
}
|
||||||
@@ -304,7 +304,7 @@ public:
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
// Player is still in Vanilla content - do not give XP past level 60
|
// Player is still in Vanilla content - do not give XP past level 60
|
||||||
if (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_PRE_TBC) && player->GetLevel() >= 60)
|
if (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_PRE_TBC) && player->GetLevel() >= IP_LEVEL_VANILLA)
|
||||||
{
|
{
|
||||||
// Still award XP to pets - they won't be able to pass the player's level
|
// Still award XP to pets - they won't be able to pass the player's level
|
||||||
Pet* pet = player->GetPet();
|
Pet* pet = player->GetPet();
|
||||||
@@ -313,7 +313,7 @@ public:
|
|||||||
amount = 0;
|
amount = 0;
|
||||||
}
|
}
|
||||||
// Player is in TBC content - do not give XP past level 70
|
// Player is in TBC content - do not give XP past level 70
|
||||||
else if (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_TBC_TIER_5) && player->GetLevel() >= 70)
|
else if (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_TBC_TIER_5) && player->GetLevel() >= IP_LEVEL_TBC)
|
||||||
{
|
{
|
||||||
// Still award XP to pets - they won't be able to pass the player's level
|
// Still award XP to pets - they won't be able to pass the player's level
|
||||||
Pet* pet = player->GetPet();
|
Pet* pet = player->GetPet();
|
||||||
@@ -337,15 +337,15 @@ public:
|
|||||||
static bool isAttuned(Player* player)
|
static bool isAttuned(Player* player)
|
||||||
{
|
{
|
||||||
if ((player->GetQuestStatus(NAXX40_ATTUNEMENT_1) == QUEST_STATUS_REWARDED) ||
|
if ((player->GetQuestStatus(NAXX40_ATTUNEMENT_1) == QUEST_STATUS_REWARDED) ||
|
||||||
(player->GetQuestStatus(NAXX40_ATTUNEMENT_2) == QUEST_STATUS_REWARDED) ||
|
(player->GetQuestStatus(NAXX40_ATTUNEMENT_2) == QUEST_STATUS_REWARDED) ||
|
||||||
(player->GetQuestStatus(NAXX40_ATTUNEMENT_3) == QUEST_STATUS_REWARDED))
|
(player->GetQuestStatus(NAXX40_ATTUNEMENT_3) == QUEST_STATUS_REWARDED))
|
||||||
{
|
{
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
bool OnPlayerBeforeTeleport(Player* player, uint32 mapid, float x, float y, float z, float /*orientation*/, uint32 /*options*/, Unit* /*target*/) override
|
bool OnPlayerBeforeTeleport(Player* player, uint32 mapid, float x, float y, float z, float /*orientation*/, uint32 /*options*/, Unit* /*target*/) override
|
||||||
@@ -420,7 +420,7 @@ public:
|
|||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (instanceTemplate->Parent == MAP_NORTHREND && mapid == MAP_NAXXRAMAS && player->GetLevel() < 71 && !isAttuned(player))
|
if (instanceTemplate->Parent == MAP_NORTHREND && mapid == MAP_NAXXRAMAS && player->GetLevel() <= IP_LEVEL_TBC && !isAttuned(player))
|
||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@@ -530,30 +530,9 @@ public:
|
|||||||
void OnPlayerUpdateArea(Player* player, uint32 /*oldArea*/, uint32 newArea) override
|
void OnPlayerUpdateArea(Player* player, uint32 /*oldArea*/, uint32 newArea) override
|
||||||
{
|
{
|
||||||
switch (newArea) {
|
switch (newArea) {
|
||||||
case AREA_DARKSHORE:
|
case AREA_DARKSHORE:
|
||||||
if ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_PRE_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_AQ_WAR)))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case AREA_GROVE_OF_THE_ANCIENTS:
|
case AREA_GROVE_OF_THE_ANCIENTS:
|
||||||
if ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_PRE_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_AQ_WAR)))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case AREA_WILDBEND_RIVER:
|
case AREA_WILDBEND_RIVER:
|
||||||
if ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_PRE_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_AQ_WAR)))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case AREA_TWILIGHT_VALE:
|
case AREA_TWILIGHT_VALE:
|
||||||
if ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_PRE_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_AQ_WAR)))
|
if ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_PRE_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_AQ_WAR)))
|
||||||
{
|
{
|
||||||
@@ -561,49 +540,10 @@ public:
|
|||||||
player->RemoveAura(IPP_PHASE_II);
|
player->RemoveAura(IPP_PHASE_II);
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
player->CastSpell(player, IPP_PHASE, false);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case AREA_SILITHUS:
|
case AREA_SILITHUS:
|
||||||
if ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_PRE_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_AQ_WAR)))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
|
||||||
}
|
|
||||||
else if (sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ_WAR))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE_II, false);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case AREA_HIVE_ASHI:
|
case AREA_HIVE_ASHI:
|
||||||
if ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_PRE_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_AQ_WAR)))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
|
||||||
}
|
|
||||||
else if (sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ_WAR))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE_II, false);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case AREA_HIVE_ZORA:
|
case AREA_HIVE_ZORA:
|
||||||
if ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_PRE_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_AQ_WAR)))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
|
||||||
}
|
|
||||||
else if (sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ_WAR))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE_II, false);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case AREA_HIVE_REGAL:
|
case AREA_HIVE_REGAL:
|
||||||
if ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_PRE_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_AQ_WAR)))
|
if ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_PRE_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_AQ_WAR)))
|
||||||
{
|
{
|
||||||
@@ -617,39 +557,11 @@ public:
|
|||||||
player->RemoveAura(IPP_PHASE_II);
|
player->RemoveAura(IPP_PHASE_II);
|
||||||
player->CastSpell(player, IPP_PHASE_II, false);
|
player->CastSpell(player, IPP_PHASE_II, false);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case AREA_BOUGH_SHADOW:
|
case AREA_BOUGH_SHADOW:
|
||||||
if (sIndividualProgression->hasPassedProgression(player, PROGRESSION_ONYXIA))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case AREA_SERADANE:
|
case AREA_SERADANE:
|
||||||
if (sIndividualProgression->hasPassedProgression(player, PROGRESSION_ONYXIA))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case AREA_DREAM_BOUGH:
|
case AREA_DREAM_BOUGH:
|
||||||
if (sIndividualProgression->hasPassedProgression(player, PROGRESSION_ONYXIA))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case AREA_JADEMIR_LAKE:
|
case AREA_JADEMIR_LAKE:
|
||||||
if (sIndividualProgression->hasPassedProgression(player, PROGRESSION_ONYXIA))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case AREA_TWILIGHT_GROVE:
|
case AREA_TWILIGHT_GROVE:
|
||||||
if (sIndividualProgression->hasPassedProgression(player, PROGRESSION_ONYXIA))
|
if (sIndividualProgression->hasPassedProgression(player, PROGRESSION_ONYXIA))
|
||||||
{
|
{
|
||||||
@@ -659,126 +571,40 @@ public:
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case AREA_DUROTAR:
|
case AREA_DUROTAR:
|
||||||
if ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_NAXX40)))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case AREA_ROCKTUSK_FARM:
|
case AREA_ROCKTUSK_FARM:
|
||||||
if ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_NAXX40)))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case AREA_TIRISFAL_GLADES:
|
case AREA_TIRISFAL_GLADES:
|
||||||
if ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_NAXX40)))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case AREA_RUINS_OF_LORDAERON:
|
case AREA_RUINS_OF_LORDAERON:
|
||||||
if ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_NAXX40)))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case AREA_MULGORE:
|
case AREA_MULGORE:
|
||||||
if ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_NAXX40)))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case AREA_VALLEY_OF_HEROES:
|
case AREA_VALLEY_OF_HEROES:
|
||||||
if ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_NAXX40)))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case AREA_ELWYNN_FOREST:
|
case AREA_ELWYNN_FOREST:
|
||||||
if ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_NAXX40)))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case AREA_DUN_MOROGH:
|
case AREA_DUN_MOROGH:
|
||||||
if ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_NAXX40)))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case AREA_TELDRASSIL:
|
case AREA_TELDRASSIL:
|
||||||
if ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_NAXX40)))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case AREA_EASTERN_PLAGUELANDS:
|
case AREA_EASTERN_PLAGUELANDS:
|
||||||
if ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_NAXX40)))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case AREA_PESTILENT_SCAR:
|
case AREA_PESTILENT_SCAR:
|
||||||
if ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_NAXX40)))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case AREA_THE_MARRIS_STEAD:
|
case AREA_THE_MARRIS_STEAD:
|
||||||
if ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_NAXX40)))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case AREA_BLASTED_LANDS:
|
case AREA_BLASTED_LANDS:
|
||||||
if ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_NAXX40)))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case AREA_RISE_OF_THE_DEFILER:
|
case AREA_RISE_OF_THE_DEFILER:
|
||||||
if ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_NAXX40)))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case AREA_DREADMAUL_HOLD:
|
case AREA_DREADMAUL_HOLD:
|
||||||
if ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_NAXX40)))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case AREA_DREADMAUL_POST:
|
case AREA_DREADMAUL_POST:
|
||||||
|
case AREA_SERPENTS_COIL:
|
||||||
|
case AREA_TANARIS:
|
||||||
|
case AREA_GADGETZAN:
|
||||||
|
case AREA_ABYSSAL_SANDS:
|
||||||
|
case AREA_BROKEN_PILLAR:
|
||||||
|
case AREA_WINTERSPRING:
|
||||||
|
case AREA_TIMBERMAW_POST:
|
||||||
|
case AREA_FROSTSABER_ROCK:
|
||||||
|
case AREA_ICE_THISTLE_HILLS:
|
||||||
|
case AREA_MAZTHORIL:
|
||||||
|
case AREA_AZSHARA:
|
||||||
|
case AREA_HALDARR_ENCAMPMENT:
|
||||||
|
case AREA_THE_SHATTERED_STRAND:
|
||||||
|
case AREA_SOUTHRIDGE_BEACH:
|
||||||
|
case AREA_BURNING_STEPPES:
|
||||||
|
case AREA_DRACO_DAR:
|
||||||
|
case AREA_BLACKROCK_MOUNTAIN:
|
||||||
|
case AREA_DREADMAUL_ROCK:
|
||||||
|
case AREA_RUINS_OF_THAURISSAN:
|
||||||
if ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_NAXX40)))
|
if ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_NAXX40)))
|
||||||
{
|
{
|
||||||
player->RemoveAura(IPP_PHASE);
|
player->RemoveAura(IPP_PHASE);
|
||||||
@@ -798,158 +624,6 @@ public:
|
|||||||
player->RemoveAura(IPP_PHASE);
|
player->RemoveAura(IPP_PHASE);
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
player->RemoveAura(IPP_PHASE_II);
|
||||||
player->CastSpell(player, IPP_PHASE_II, false);
|
player->CastSpell(player, IPP_PHASE_II, false);
|
||||||
}
|
|
||||||
break;
|
|
||||||
case AREA_SERPENTS_COIL:
|
|
||||||
if ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_NAXX40)))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case AREA_TANARIS:
|
|
||||||
if ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_NAXX40)))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case AREA_GADGETZAN:
|
|
||||||
if ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_NAXX40)))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case AREA_ABYSSAL_SANDS:
|
|
||||||
if ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_NAXX40)))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case AREA_BROKEN_PILLAR:
|
|
||||||
if ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_NAXX40)))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case AREA_WINTERSPRING:
|
|
||||||
if ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_NAXX40)))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case AREA_TIMBERMAW_POST:
|
|
||||||
if ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_NAXX40)))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case AREA_FROSTSABER_ROCK:
|
|
||||||
if ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_NAXX40)))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case AREA_ICE_THISTLE_HILLS:
|
|
||||||
if ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_NAXX40)))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case AREA_MAZTHORIL:
|
|
||||||
if ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_NAXX40)))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case AREA_AZSHARA:
|
|
||||||
if ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_NAXX40)))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case AREA_HALDARR_ENCAMPMENT:
|
|
||||||
if ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_NAXX40)))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case AREA_THE_SHATTERED_STRAND:
|
|
||||||
if ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_NAXX40)))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case AREA_SOUTHRIDGE_BEACH:
|
|
||||||
if ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_NAXX40)))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case AREA_BURNING_STEPPES:
|
|
||||||
if ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_NAXX40)))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case AREA_DRACO_DAR:
|
|
||||||
if ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_NAXX40)))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case AREA_BLACKROCK_MOUNTAIN:
|
|
||||||
if ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_NAXX40)))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case AREA_DREADMAUL_ROCK:
|
|
||||||
if ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_NAXX40)))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case AREA_RUINS_OF_THAURISSAN:
|
|
||||||
if ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_NAXX40)))
|
|
||||||
{
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case AREA_LIGHTS_HOPE:
|
case AREA_LIGHTS_HOPE:
|
||||||
@@ -971,44 +645,44 @@ public:
|
|||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
|
|
||||||
uint32 mapid = player->GetMapId();
|
uint32 mapid = player->GetMapId();
|
||||||
|
|
||||||
if (mapid == MAP_SHADOWFANG_KEEP && ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_NAXX40))))
|
if (mapid == MAP_SHADOWFANG_KEEP && ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_NAXX40))))
|
||||||
{
|
{
|
||||||
player->RemoveAura(IPP_PHASE);
|
player->RemoveAura(IPP_PHASE);
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
player->RemoveAura(IPP_PHASE_II);
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
player->CastSpell(player, IPP_PHASE, false);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if (mapid == MAP_RAZORFEN_DOWNS && ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_NAXX40))))
|
if (mapid == MAP_RAZORFEN_DOWNS && ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_NAXX40))))
|
||||||
{
|
{
|
||||||
player->RemoveAura(IPP_PHASE);
|
player->RemoveAura(IPP_PHASE);
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
player->RemoveAura(IPP_PHASE_II);
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
player->CastSpell(player, IPP_PHASE, false);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if (mapid == MAP_SCARLET_MONASTERY && ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_NAXX40))))
|
if (mapid == MAP_SCARLET_MONASTERY && ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_NAXX40))))
|
||||||
{
|
{
|
||||||
player->RemoveAura(IPP_PHASE);
|
player->RemoveAura(IPP_PHASE);
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
player->RemoveAura(IPP_PHASE_II);
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
player->CastSpell(player, IPP_PHASE, false);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if (mapid == MAP_STRATHOLME && ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_NAXX40))))
|
if (mapid == MAP_STRATHOLME && ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_NAXX40))))
|
||||||
{
|
{
|
||||||
player->RemoveAura(IPP_PHASE);
|
player->RemoveAura(IPP_PHASE);
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
player->RemoveAura(IPP_PHASE_II);
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
player->CastSpell(player, IPP_PHASE, false);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if (mapid == MAP_DIRE_MAUL && ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_NAXX40))))
|
if (mapid == MAP_DIRE_MAUL && ((sIndividualProgression->hasPassedProgression(player, PROGRESSION_AQ)) && (sIndividualProgression->isBeforeProgression(player, PROGRESSION_NAXX40))))
|
||||||
{
|
{
|
||||||
player->RemoveAura(IPP_PHASE);
|
player->RemoveAura(IPP_PHASE);
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
player->RemoveAura(IPP_PHASE_II);
|
||||||
player->CastSpell(player, IPP_PHASE, false);
|
player->CastSpell(player, IPP_PHASE, false);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
player->RemoveAura(IPP_PHASE);
|
player->RemoveAura(IPP_PHASE);
|
||||||
player->RemoveAura(IPP_PHASE_II);
|
player->RemoveAura(IPP_PHASE_II);
|
||||||
}
|
}
|
||||||
@@ -1031,15 +705,15 @@ public:
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_PRE_TBC) || (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_PRE_TBC) && (player->GetLevel() < 61)))
|
if (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_PRE_TBC) || (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_PRE_TBC) && (player->GetLevel() <= IP_LEVEL_VANILLA)))
|
||||||
{
|
{
|
||||||
rDungeonId = RDF_CLASSIC;
|
rDungeonId = RDF_CLASSIC;
|
||||||
}
|
}
|
||||||
else if ((rDungeonId == RDF_WRATH_OF_THE_LICH_KING && !sIndividualProgression->hasPassedProgression(player, PROGRESSION_TBC_TIER_5)) || (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_TBC_TIER_5) && (player->GetLevel() < 71)))
|
else if ((rDungeonId == RDF_WRATH_OF_THE_LICH_KING && !sIndividualProgression->hasPassedProgression(player, PROGRESSION_TBC_TIER_5)) || (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_TBC_TIER_5) && (player->GetLevel() <= IP_LEVEL_TBC)))
|
||||||
{
|
{
|
||||||
rDungeonId = RDF_THE_BURNING_CRUSADE;
|
rDungeonId = RDF_THE_BURNING_CRUSADE;
|
||||||
}
|
}
|
||||||
else if ((rDungeonId == RDF_WRATH_OF_THE_LICH_KING_HEROIC && !sIndividualProgression->hasPassedProgression(player, PROGRESSION_TBC_TIER_5)) || (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_TBC_TIER_5) && (player->GetLevel() < 71)))
|
else if ((rDungeonId == RDF_WRATH_OF_THE_LICH_KING_HEROIC && !sIndividualProgression->hasPassedProgression(player, PROGRESSION_TBC_TIER_5)) || (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_TBC_TIER_5) && (player->GetLevel() <= IP_LEVEL_TBC)))
|
||||||
{
|
{
|
||||||
rDungeonId = RDF_THE_BURNING_CRUSADE_HEROIC;
|
rDungeonId = RDF_THE_BURNING_CRUSADE_HEROIC;
|
||||||
}
|
}
|
||||||
@@ -1256,12 +930,12 @@ private:
|
|||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!sIndividualProgression->hasPassedProgression(pet->GetOwner(), PROGRESSION_PRE_TBC) || ((!sIndividualProgression->hasPassedProgression(pet->GetOwner(), PROGRESSION_PRE_TBC)) && (pet->GetLevel() < 61)))
|
if (!sIndividualProgression->hasPassedProgression(pet->GetOwner(), PROGRESSION_PRE_TBC) || ((!sIndividualProgression->hasPassedProgression(pet->GetOwner(), PROGRESSION_PRE_TBC)) && (pet->GetLevel() <= IP_LEVEL_VANILLA)))
|
||||||
{
|
{
|
||||||
AdjustVanillaStats(pet);
|
AdjustVanillaStats(pet);
|
||||||
}
|
}
|
||||||
else if (!sIndividualProgression->hasPassedProgression(pet->GetOwner(), PROGRESSION_TBC_TIER_5) || ((!sIndividualProgression->hasPassedProgression(pet->GetOwner(), PROGRESSION_TBC_TIER_5)) && (pet->GetLevel() < 71)))
|
else if (!sIndividualProgression->hasPassedProgression(pet->GetOwner(), PROGRESSION_TBC_TIER_5) || ((!sIndividualProgression->hasPassedProgression(pet->GetOwner(), PROGRESSION_TBC_TIER_5)) && (pet->GetLevel() <= IP_LEVEL_TBC)))
|
||||||
{
|
{
|
||||||
AdjustTBCStats(pet);
|
AdjustTBCStats(pet);
|
||||||
}
|
}
|
||||||
@@ -1357,11 +1031,11 @@ public:
|
|||||||
}
|
}
|
||||||
Player* player = isPet ? healer->GetOwner()->ToPlayer() : healer->ToPlayer();
|
Player* player = isPet ? healer->GetOwner()->ToPlayer() : healer->ToPlayer();
|
||||||
float gearAdjustment = computeTotalGearTuning(player);
|
float gearAdjustment = computeTotalGearTuning(player);
|
||||||
if (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_PRE_TBC) || (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_PRE_TBC) && (player->GetLevel() < 61)))
|
if (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_PRE_TBC) || (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_PRE_TBC) && (player->GetLevel() <= IP_LEVEL_VANILLA)))
|
||||||
{
|
{
|
||||||
heal *= (sIndividualProgression->ComputeVanillaAdjustment(player->GetLevel(), sIndividualProgression->vanillaHealingAdjustment) - gearAdjustment);
|
heal *= (sIndividualProgression->ComputeVanillaAdjustment(player->GetLevel(), sIndividualProgression->vanillaHealingAdjustment) - gearAdjustment);
|
||||||
}
|
}
|
||||||
else if (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_TBC_TIER_5) || (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_TBC_TIER_5) && (player->GetLevel() < 71)))
|
else if (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_TBC_TIER_5) || (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_TBC_TIER_5) && (player->GetLevel() <= IP_LEVEL_TBC)))
|
||||||
{
|
{
|
||||||
heal *= (sIndividualProgression->tbcHealingAdjustment - gearAdjustment);
|
heal *= (sIndividualProgression->tbcHealingAdjustment - gearAdjustment);
|
||||||
}
|
}
|
||||||
@@ -1382,11 +1056,11 @@ public:
|
|||||||
}
|
}
|
||||||
Player* player = isPet ? attacker->GetOwner()->ToPlayer() : attacker->ToPlayer();
|
Player* player = isPet ? attacker->GetOwner()->ToPlayer() : attacker->ToPlayer();
|
||||||
float gearAdjustment = computeTotalGearTuning(player);
|
float gearAdjustment = computeTotalGearTuning(player);
|
||||||
if (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_PRE_TBC) || (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_PRE_TBC) && (player->GetLevel() < 61)))
|
if (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_PRE_TBC) || (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_PRE_TBC) && (player->GetLevel() <= IP_LEVEL_VANILLA)))
|
||||||
{
|
{
|
||||||
damage *= (sIndividualProgression->ComputeVanillaAdjustment(player->GetLevel(), sIndividualProgression->vanillaPowerAdjustment) - gearAdjustment);
|
damage *= (sIndividualProgression->ComputeVanillaAdjustment(player->GetLevel(), sIndividualProgression->vanillaPowerAdjustment) - gearAdjustment);
|
||||||
}
|
}
|
||||||
else if (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_TBC_TIER_5) || (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_TBC_TIER_5) && (player->GetLevel() < 71)))
|
else if (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_TBC_TIER_5) || (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_TBC_TIER_5) && (player->GetLevel() <= IP_LEVEL_TBC)))
|
||||||
{
|
{
|
||||||
damage *= (sIndividualProgression->tbcPowerAdjustment - gearAdjustment);
|
damage *= (sIndividualProgression->tbcPowerAdjustment - gearAdjustment);
|
||||||
}
|
}
|
||||||
@@ -1408,11 +1082,11 @@ public:
|
|||||||
}
|
}
|
||||||
Player* player = isPet ? attacker->GetOwner()->ToPlayer() : attacker->ToPlayer();
|
Player* player = isPet ? attacker->GetOwner()->ToPlayer() : attacker->ToPlayer();
|
||||||
float gearAdjustment = computeTotalGearTuning(player);
|
float gearAdjustment = computeTotalGearTuning(player);
|
||||||
if (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_PRE_TBC) || (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_PRE_TBC) && (player->GetLevel() < 61)))
|
if (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_PRE_TBC) || (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_PRE_TBC) && (player->GetLevel() <= IP_LEVEL_VANILLA)))
|
||||||
{
|
{
|
||||||
damage *= (sIndividualProgression->ComputeVanillaAdjustment(player->GetLevel(), sIndividualProgression->vanillaPowerAdjustment) - gearAdjustment);
|
damage *= (sIndividualProgression->ComputeVanillaAdjustment(player->GetLevel(), sIndividualProgression->vanillaPowerAdjustment) - gearAdjustment);
|
||||||
}
|
}
|
||||||
else if (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_TBC_TIER_5) || (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_TBC_TIER_5) && (player->GetLevel() < 71)))
|
else if (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_TBC_TIER_5) || (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_TBC_TIER_5) && (player->GetLevel() <= IP_LEVEL_TBC)))
|
||||||
{
|
{
|
||||||
damage *= (sIndividualProgression->tbcPowerAdjustment - gearAdjustment);
|
damage *= (sIndividualProgression->tbcPowerAdjustment - gearAdjustment);
|
||||||
}
|
}
|
||||||
@@ -1443,11 +1117,11 @@ public:
|
|||||||
}
|
}
|
||||||
Player* player = isPet ? attacker->GetOwner()->ToPlayer() : attacker->ToPlayer();
|
Player* player = isPet ? attacker->GetOwner()->ToPlayer() : attacker->ToPlayer();
|
||||||
float gearAdjustment = computeTotalGearTuning(player);
|
float gearAdjustment = computeTotalGearTuning(player);
|
||||||
if (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_PRE_TBC) || (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_PRE_TBC) && (player->GetLevel() < 61)))
|
if (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_PRE_TBC) || (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_PRE_TBC) && (player->GetLevel() <= IP_LEVEL_VANILLA)))
|
||||||
{
|
{
|
||||||
damage *= (sIndividualProgression->ComputeVanillaAdjustment(player->GetLevel(), sIndividualProgression->vanillaPowerAdjustment) - gearAdjustment);
|
damage *= (sIndividualProgression->ComputeVanillaAdjustment(player->GetLevel(), sIndividualProgression->vanillaPowerAdjustment) - gearAdjustment);
|
||||||
}
|
}
|
||||||
else if (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_TBC_TIER_5) || (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_TBC_TIER_5) && (player->GetLevel() < 71)))
|
else if (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_TBC_TIER_5) || (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_TBC_TIER_5) && (player->GetLevel() <= IP_LEVEL_TBC)))
|
||||||
{
|
{
|
||||||
damage *= (sIndividualProgression->tbcPowerAdjustment - gearAdjustment);
|
damage *= (sIndividualProgression->tbcPowerAdjustment - gearAdjustment);
|
||||||
}
|
}
|
||||||
@@ -1456,7 +1130,7 @@ public:
|
|||||||
damage *= 1.0f - gearAdjustment;
|
damage *= 1.0f - gearAdjustment;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
void AddSC_mod_individual_progression_player()
|
void AddSC_mod_individual_progression_player()
|
||||||
|
|||||||
@@ -51,7 +51,7 @@ public:
|
|||||||
|
|
||||||
bool OnGossipHello(Player* player, GameObject* /*go*/) override
|
bool OnGossipHello(Player* player, GameObject* /*go*/) override
|
||||||
{
|
{
|
||||||
if (((!sIndividualProgression->requireNaxxStrath || player->GetQuestStatus(NAXX40_ENTRANCE_FLAG) == QUEST_STATUS_REWARDED) && isAttuned(player)) || (isExcludedFromProgression(player) && (player->GetLevel() < 71)))
|
if (((!sIndividualProgression->requireNaxxStrath || player->GetQuestStatus(NAXX40_ENTRANCE_FLAG) == QUEST_STATUS_REWARDED) && isAttuned(player)) || (isExcludedFromProgression(player) && (player->GetLevel() <= IP_LEVEL_TBC)))
|
||||||
{
|
{
|
||||||
player->SetRaidDifficulty(RAID_DIFFICULTY_10MAN_HEROIC);
|
player->SetRaidDifficulty(RAID_DIFFICULTY_10MAN_HEROIC);
|
||||||
player->TeleportTo(533, 3005.51f, -3434.64f, 304.195f, 6.2831f);
|
player->TeleportTo(533, 3005.51f, -3434.64f, 304.195f, 6.2831f);
|
||||||
|
|||||||
@@ -15,6 +15,7 @@
|
|||||||
* with this program. If not, see <http://www.gnu.org/licenses/>.
|
* with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#include "IndividualProgression.h"
|
||||||
#include "ScriptMgr.h"
|
#include "ScriptMgr.h"
|
||||||
#include "ScriptedCreature.h"
|
#include "ScriptedCreature.h"
|
||||||
#include "SpellInfo.h"
|
#include "SpellInfo.h"
|
||||||
@@ -135,7 +136,7 @@ public:
|
|||||||
|
|
||||||
bool OnTrigger(Player* player, AreaTrigger const* /*areaTrigger*/) override
|
bool OnTrigger(Player* player, AreaTrigger const* /*areaTrigger*/) override
|
||||||
{
|
{
|
||||||
if (player->GetLevel() < 80)
|
if (player->GetLevel() < IP_LEVEL_WOTLK)
|
||||||
{
|
{
|
||||||
player->SetRaidDifficulty(RAID_DIFFICULTY_10MAN_HEROIC);
|
player->SetRaidDifficulty(RAID_DIFFICULTY_10MAN_HEROIC);
|
||||||
player->TeleportTo(249, 29.1607f, -71.3372f, -8.18032f, 4.58f);
|
player->TeleportTo(249, 29.1607f, -71.3372f, -8.18032f, 4.58f);
|
||||||
|
|||||||
Reference in New Issue
Block a user