Scripts/Icecrown Citadel: Added Sindragosa script
This commit is contained in:
1 parent
00b93c508f
commit
dc1b02d35d
14 files changed
+1719
-10
No files matched your search
@@ -18200,6 +18200,8 @@ INSERT INTO `spell_linked_spell` (`spell_trigger`,`spell_effect`,`type`,`comment
|
||||
( 71479, 71482, 1, 'Blood-Queen: Bloodbolt Splash'),
|
||||
( 71480, 71483, 1, 'Blood-Queen: Bloodbolt Splash'),
|
||||
( 71952, 70995, 1, 'Blood-Queen: Presence of the Darkfallen'),
|
||||
( 70117, 70122, 1, 'Sindragosa - Icy Grip'),
|
||||
( 70157, 69700, 2, 'Sindragosa - Ice Tomb resistance'),
|
||||
-- Isle of Conquest
|
||||
( 66548, 66550, 0, 'Isle of Conquest (IN>OUT)'),
|
||||
( 66549, 66551, 0, 'Isle of Conquest (OUT>IN)'),
|
||||
|
||||
@@ -9,7 +9,7 @@ UPDATE `gameobject_template` SET `ScriptName`='';
|
||||
UPDATE `outdoorpvp_template` SET `ScriptName`='';
|
||||
|
||||
/* AREA TRIGGERS */
|
||||
DELETE FROM `areatrigger_scripts` WHERE `entry` IN (822,5284,5285,5286,5287,4871,4872,4873,5108,5332,5338,5334,5340,5369,5423,5633);
|
||||
DELETE FROM `areatrigger_scripts` WHERE `entry` IN (822,5284,5285,5286,5287,4871,4872,4873,5108,5332,5338,5334,5340,5369,5423,5633,5604);
|
||||
DELETE FROM `areatrigger_scripts` WHERE `entry` BETWEEN 1726 AND 1740;
|
||||
INSERT INTO `areatrigger_scripts` (`entry`,`ScriptName`) VALUES
|
||||
(822, 'at_map_chamber'),
|
||||
@@ -42,7 +42,8 @@ INSERT INTO `areatrigger_scripts` (`entry`,`ScriptName`) VALUES
|
||||
(1740, 'at_scent_larkorwi'),
|
||||
(5369, 'at_RX_214_repair_o_matic_station'),
|
||||
(5423, 'at_RX_214_repair_o_matic_station'),
|
||||
(5633, 'at_tyrannus_event_starter');
|
||||
(5633, 'at_tyrannus_event_starter'),
|
||||
(5604, 'at_sindragosa_lair');
|
||||
|
||||
/* WORLD BOSS */
|
||||
UPDATE `creature_template` SET `ScriptName`='boss_ysondre' WHERE `entry`=14887;
|
||||
@@ -863,6 +864,11 @@ UPDATE `creature_template` SET `ScriptName`='npc_kinetic_bomb' WHERE `entry`=384
|
||||
UPDATE `creature_template` SET `ScriptName`='npc_dark_nucleus' WHERE `entry`=38369;
|
||||
UPDATE `creature_template` SET `ScriptName`='npc_ball_of_flame' WHERE `entry` IN (38332,38451);
|
||||
UPDATE `creature_template` SET `ScriptName`='boss_blood_queen_lana_thel' WHERE `entry`=37955;
|
||||
UPDATE `creature_template` SET `ScriptName`='boss_sindragosa' WHERE `entry`=36853;
|
||||
UPDATE `creature_template` SET `ScriptName`='npc_ice_tomb' WHERE `entry`=36980;
|
||||
UPDATE `creature_template` SET `ScriptName`='npc_spinestalker' WHERE `entry`=37534;
|
||||
UPDATE `creature_template` SET `ScriptName`='npc_rimefang_icc' WHERE `entry`=37533;
|
||||
UPDATE `creature_template` SET `ScriptName`='npc_sindragosa_trash' WHERE `entry` IN (37531,37532);
|
||||
|
||||
/* IRONFORGE */
|
||||
UPDATE `creature_template` SET `ScriptName`='npc_royal_historian_archesonus' WHERE `entry`=8879;
|
||||
@@ -1755,7 +1761,7 @@ UPDATE `outdoorpvp_template` SET `ScriptName`='outdoorpvp_si' WHERE `TypeId`=5;
|
||||
UPDATE `outdoorpvp_template` SET `ScriptName`='outdoorpvp_ep' WHERE `TypeId`=6;
|
||||
|
||||
/* ACHIEVEMENTS */
|
||||
DELETE FROM `achievement_criteria_data` WHERE `criteria_id` IN (3693,6641,6642,6643,6644,3804,3805,3806,3807,3808,3809,3810,3811,3812,3813,1234,1239,5605,5606,12778,13036,13035,13037,12977,12967,12986,12982,12993,12780,13012,13011,13013,12062,12063,12064,12065,12183,12068,12060,12061) AND `type` IN (0,11);
|
||||
DELETE FROM `achievement_criteria_data` WHERE `criteria_id` IN (3693,6641,6642,6643,6644,3804,3805,3806,3807,3808,3809,3810,3811,3812,3813,1234,1239,5605,5606,12778,13036,13035,13037,12977,12967,12986,12982,12993,12780,13012,13011,13013,12062,12063,12064,12065,12183,12068,12060,12061,12822,12996,12972,12989) AND `type` IN (0,11);
|
||||
INSERT INTO `achievement_criteria_data` (`criteria_id`,`type`,`value1`,`value2`,`ScriptName`) VALUES
|
||||
(3693,11,0,0, 'achievement_storm_glory'),
|
||||
(6641,11,0,0, 'achievement_school_of_hard_knocks'),
|
||||
@@ -1796,8 +1802,11 @@ INSERT INTO `achievement_criteria_data` (`criteria_id`,`type`,`value1`,`value2`,
|
||||
(12183,11,0,0, 'achievement_bg_ic_glaive_grave'),
|
||||
(12068,11,0,0, 'achievement_bg_ic_mowed_down'),
|
||||
(12060,11,0,0, 'achievement_bg_ic_resource_glut'),
|
||||
(12061,11,0,0, 'achievement_bg_ic_resource_glut');
|
||||
|
||||
(12061,11,0,0, 'achievement_bg_ic_resource_glut'),
|
||||
(12822,11,0,0, 'achievement_all_you_can_eat'),
|
||||
(12996,11,0,0, 'achievement_all_you_can_eat'),
|
||||
(12972,11,0,0, 'achievement_all_you_can_eat'),
|
||||
(12989,11,0,0, 'achievement_all_you_can_eat');
|
||||
|
||||
/* SPELLS */
|
||||
INSERT INTO `spell_script_names` (`spell_id`,`ScriptName`) VALUES
|
||||
@@ -1989,6 +1998,24 @@ INSERT INTO `spell_script_names` (`spell_id`,`ScriptName`) VALUES
|
||||
( 71390, 'spell_blood_queen_pact_of_the_darkfallen'),
|
||||
( 71340, 'spell_blood_queen_pact_of_the_darkfallen_dmg'),
|
||||
( 71341, 'spell_blood_queen_pact_of_the_darkfallen_dmg_target'),
|
||||
( 71357, 'spell_frostwarden_handler_order_whelp'),
|
||||
( 71350, 'spell_frostwarden_handler_focus_fire'),
|
||||
( 71376, 'spell_rimefang_icy_blast'),
|
||||
( 70598, 'spell_sindragosa_s_fury'),
|
||||
( 69762, 'spell_sindragosa_unchained_magic'),
|
||||
( 69766, 'spell_sindragosa_instability'),
|
||||
( 70126, 'spell_sindragosa_frost_beacon'),
|
||||
( 69712, 'spell_sindragosa_ice_tomb'),
|
||||
( 69675, 'spell_sindragosa_ice_tomb_dummy'),
|
||||
( 70157, 'spell_sindragosa_ice_tomb_trap'),
|
||||
( 69845, 'spell_sindragosa_collision_filter'),
|
||||
( 71053, 'spell_sindragosa_collision_filter'),
|
||||
( 71054, 'spell_sindragosa_collision_filter'),
|
||||
( 71055, 'spell_sindragosa_collision_filter'),
|
||||
( 70127, 'spell_sindragosa_collision_filter'),
|
||||
( 72528, 'spell_sindragosa_collision_filter'),
|
||||
( 72529, 'spell_sindragosa_collision_filter'),
|
||||
( 72530, 'spell_sindragosa_collision_filter'),
|
||||
-- Isle of Conquest
|
||||
( 66630, 'spell_gen_gunship_portal'),
|
||||
( 66637, 'spell_gen_gunship_portal'),
|
||||
|
||||
@@ -0,0 +1,18 @@
|
||||
DELETE FROM `achievement_criteria_data` WHERE `criteria_id` IN (12822,12996,12972,12989,12758,12955,13049,13060,13102,13133,13134,13135);
|
||||
INSERT INTO `achievement_criteria_data` (`criteria_id`,`type`,`value1`,`value2`,`ScriptName`) VALUES
|
||||
(12822,11,0,0, 'achievement_all_you_can_eat'), -- All You Can Eat (10 player)
|
||||
(12822,12,0,0, ''), -- All You Can Eat (10 player)
|
||||
(12996,11,0,0, 'achievement_all_you_can_eat'), -- All You Can Eat (10 player) Heroic
|
||||
(12996,12,2,0, ''), -- All You Can Eat (10 player) Heroic
|
||||
(12972,11,0,0, 'achievement_all_you_can_eat'), -- All You Can Eat (25 player)
|
||||
(12972,12,1,0, ''), -- All You Can Eat (25 player)
|
||||
(12989,11,0,0, 'achievement_all_you_can_eat'), -- All You Can Eat (25 player) Heroic
|
||||
(12989,12,3,0, ''), -- All You Can Eat (25 player) Heroic
|
||||
(12758,12,0,0, ''), -- The Frostwing Halls (10 player) Sindragosa
|
||||
(12955,12,1,0, ''), -- The Frostwing Halls (25 player) Sindragosa
|
||||
(13049,12,2,0, ''), -- Heroic: The Frostwing Halls (10 player) Sindragosa
|
||||
(13060,12,3,0, ''), -- Heroic: The Frostwing Halls (25 player) Sindragosa
|
||||
(13102,12,0,0, ''), -- Sindragosa kills (Icecrown 10 player)
|
||||
(13133,12,1,0, ''), -- Sindragosa kills (Icecrown 25 player)
|
||||
(13134,12,2,0, ''), -- Sindragosa kills (Heroic Icecrown 10 player)
|
||||
(13135,12,3,0, ''); -- Sindragosa kills (Heroic Icecrown 25 player)
|
||||
@@ -0,0 +1,3 @@
|
||||
DELETE FROM `areatrigger_scripts` WHERE `entry`=5604;
|
||||
INSERT INTO `areatrigger_scripts` (`entry`,`ScriptName`) VALUES
|
||||
(5604,'at_sindragosa_lair');
|
||||
@@ -0,0 +1,14 @@
|
||||
DELETE FROM `creature_text` WHERE `entry`=36853;
|
||||
INSERT INTO `creature_text` (`entry`,`groupid`,`id`,`text`,`type`,`language`,`probability`,`emote`,`duration`,`sound`,`comment`) VALUES
|
||||
(36853,0,0, 'You are fools to have come to this place! The icy winds of Northrend will consume your souls!',1,0,0,0,0,17007, 'Sindragosa - SAY_AGGRO'),
|
||||
(36853,1,0, 'Suffer, mortals, as your pathetic magic betrays you!',1,0,0,0,0,17014, 'Sindragosa - SAY_UNCHAINED_MAGIC'),
|
||||
(36853,2,0, '%s prepares to unleash a wave of blistering cold!',3,0,0,0,0,0, 'Sindragosa - EMOTE_WARN_BLISTERING_COLD'),
|
||||
(36853,3,0, 'Can you feel the cold hand of death upon your heart?',1,0,0,0,0,17013, 'Sindragosa - SAY_BLISTERING_COLD'),
|
||||
(36853,4,0, 'Aaah! It burns! What sorcery is this?!',1,0,0,0,0,17015, 'Sindragosa - SAY_RESPITE_FOR_A_TORMENTED_SOUL'),
|
||||
(36853,5,0, 'Your incursion ends here! None shall survive!',1,0,0,0,0,17012, 'Sindragosa - SAY_AIR_PHASE'),
|
||||
(36853,6,0, 'Now feel my master''s limitless power and despair!',1,0,0,0,0,17016, 'Sindragosa - SAY_PHASE_2'),
|
||||
(36853,7,0, '%s fires a frozen orb towards $N!',3,0,0,0,0,0, 'Sindragosa - EMOTE_WARN_FROZEN_ORB'),
|
||||
(36853,8,0, 'Perish!',1,0,0,0,0,17008, 'Sindragosa - SAY_KILL 1'),
|
||||
(36853,8,1, 'A flaw of mortality...',1,0,0,0,0,17009, 'Sindragosa - SAY_KILL 2'),
|
||||
(36853,9,0, 'Enough! I tire of these games!',1,0,0,0,0,17011, 'Sindragosa - SAY_BERSERK'),
|
||||
(36853,10,0, 'Free...at last...',1,0,0,0,0,17010, 'Sindragosa - SAY_DEATH');
|
||||
@@ -0,0 +1,5 @@
|
||||
UPDATE `creature_template` SET `ScriptName`='boss_sindragosa' WHERE `entry`=36853;
|
||||
UPDATE `creature_template` SET `ScriptName`='npc_ice_tomb' WHERE `entry`=36980;
|
||||
UPDATE `creature_template` SET `ScriptName`='npc_spinestalker' WHERE `entry`=37534;
|
||||
UPDATE `creature_template` SET `ScriptName`='npc_rimefang_icc' WHERE `entry`=37533;
|
||||
UPDATE `creature_template` SET `ScriptName`='npc_sindragosa_trash' WHERE `entry` IN (37531,37532);
|
||||
@@ -0,0 +1,4 @@
|
||||
DELETE FROM `spell_linked_spell` WHERE `spell_trigger` IN (70117,70157);
|
||||
INSERT INTO `spell_linked_spell` (`spell_trigger`,`spell_effect`,`type`,`comment`) VALUES
|
||||
(70117,70122,1, 'Sindragosa - Icy Grip'),
|
||||
(70157,69700,2, 'Sindragosa - Ice Tomb resistance');
|
||||
@@ -0,0 +1,30 @@
|
||||
DELETE FROM `spell_script_names` WHERE `ScriptName`='spell_frostwarden_handler_order_whelp';
|
||||
DELETE FROM `spell_script_names` WHERE `ScriptName`='spell_frostwarden_handler_focus_fire';
|
||||
DELETE FROM `spell_script_names` WHERE `ScriptName`='spell_rimefang_icy_blast';
|
||||
DELETE FROM `spell_script_names` WHERE `ScriptName`='spell_sindragosa_s_fury';
|
||||
DELETE FROM `spell_script_names` WHERE `ScriptName`='spell_sindragosa_unchained_magic';
|
||||
DELETE FROM `spell_script_names` WHERE `ScriptName`='spell_sindragosa_instability';
|
||||
DELETE FROM `spell_script_names` WHERE `ScriptName`='spell_sindragosa_frost_beacon';
|
||||
DELETE FROM `spell_script_names` WHERE `ScriptName`='spell_sindragosa_ice_tomb';
|
||||
DELETE FROM `spell_script_names` WHERE `ScriptName`='spell_sindragosa_ice_tomb_dummy';
|
||||
DELETE FROM `spell_script_names` WHERE `ScriptName`='spell_sindragosa_ice_tomb_trap';
|
||||
DELETE FROM `spell_script_names` WHERE `ScriptName`='spell_sindragosa_collision_filter';
|
||||
INSERT INTO `spell_script_names` (`spell_id`,`ScriptName`) VALUES
|
||||
(71357,'spell_frostwarden_handler_order_whelp'),
|
||||
(71350,'spell_frostwarden_handler_focus_fire'),
|
||||
(71376,'spell_rimefang_icy_blast'),
|
||||
(70598,'spell_sindragosa_s_fury'),
|
||||
(69762,'spell_sindragosa_unchained_magic'),
|
||||
(69766,'spell_sindragosa_instability'),
|
||||
(70126,'spell_sindragosa_frost_beacon'),
|
||||
(69712,'spell_sindragosa_ice_tomb'),
|
||||
(69675,'spell_sindragosa_ice_tomb_dummy'),
|
||||
(70157,'spell_sindragosa_ice_tomb_trap'),
|
||||
(69845,'spell_sindragosa_collision_filter'),
|
||||
(71053,'spell_sindragosa_collision_filter'),
|
||||
(71054,'spell_sindragosa_collision_filter'),
|
||||
(71055,'spell_sindragosa_collision_filter'),
|
||||
(70127,'spell_sindragosa_collision_filter'),
|
||||
(72528,'spell_sindragosa_collision_filter'),
|
||||
(72529,'spell_sindragosa_collision_filter'),
|
||||
(72530,'spell_sindragosa_collision_filter');
|
||||
@@ -473,6 +473,7 @@ void AddSC_boss_rotface();
|
||||
void AddSC_boss_professor_putricide();
|
||||
void AddSC_boss_blood_prince_council();
|
||||
void AddSC_boss_blood_queen_lana_thel();
|
||||
void AddSC_boss_sindragosa();
|
||||
void AddSC_icecrown_citadel_teleport();
|
||||
void AddSC_instance_icecrown_citadel();
|
||||
|
||||
@@ -1162,6 +1163,7 @@ void AddNorthrendScripts()
|
||||
AddSC_boss_professor_putricide();
|
||||
AddSC_boss_blood_prince_council();
|
||||
AddSC_boss_blood_queen_lana_thel();
|
||||
AddSC_boss_sindragosa();
|
||||
AddSC_icecrown_citadel_teleport();
|
||||
AddSC_instance_icecrown_citadel();
|
||||
|
||||
|
||||
@@ -4040,11 +4040,26 @@ void SpellMgr::LoadSpellCustomAttr()
|
||||
spellInfo->AreaGroupId = 0;
|
||||
count++;
|
||||
break;
|
||||
case 71357: // Order Whelp
|
||||
spellInfo->EffectRadiusIndex[0] = 22;
|
||||
count++;
|
||||
break;
|
||||
case 70598: // Sindragosa's Fury
|
||||
spellInfo->EffectImplicitTargetA[0] = TARGET_DST_CASTER;
|
||||
count++;
|
||||
break;
|
||||
case 69846: // Frost Bomb
|
||||
spellInfo->speed = 10;
|
||||
spellInfo->EffectImplicitTargetA[0] = TARGET_DEST_TARGET_ANY;
|
||||
spellInfo->EffectImplicitTargetB[0] = TARGET_UNIT_TARGET_ANY;
|
||||
spellInfo->Effect[1] = 0;
|
||||
count++;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
switch(spellInfo->SpellFamilyName)
|
||||
switch (spellInfo->SpellFamilyName)
|
||||
{
|
||||
case SPELLFAMILY_WARRIOR:
|
||||
// Shout
|
||||
|
||||
@@ -154,6 +154,7 @@ set(scripts_STAT_SRCS
|
||||
Northrend/IcecrownCitadel/boss_professor_putricide.cpp
|
||||
Northrend/IcecrownCitadel/boss_blood_prince_council.cpp
|
||||
Northrend/IcecrownCitadel/boss_blood_queen_lana_thel.cpp
|
||||
Northrend/IcecrownCitadel/boss_sindragosa.cpp
|
||||
Northrend/zuldrak.cpp
|
||||
Northrend/icecrown.cpp
|
||||
Northrend/Gundrak/boss_slad_ran.cpp
|
||||
|
||||
File diff suppressed because it is too large.
Load diff
@@ -65,6 +65,9 @@ enum DataTypes
|
||||
DATA_PRINCE_TALDARAM_GUID = 19,
|
||||
DATA_PRINCE_VALANAR_GUID = 20,
|
||||
DATA_BLOOD_PRINCES_CONTROL = 21,
|
||||
DATA_SINDRAGOSA_FROSTWYRMS = 22,
|
||||
DATA_SPINESTALKER = 23,
|
||||
DATA_RIMEFANG = 24,
|
||||
};
|
||||
|
||||
#define MAX_ENCOUNTER 12
|
||||
@@ -150,6 +153,16 @@ enum CreaturesIds
|
||||
|
||||
// Blood-Queen Lana'thel
|
||||
NPC_BLOOD_QUEEN_LANA_THEL = 37955,
|
||||
|
||||
// Sindragosa
|
||||
NPC_SINDRAGOSA = 36853,
|
||||
NPC_SPINESTALKER = 37534,
|
||||
NPC_RIMEFANG = 37533,
|
||||
NPC_FROSTWARDEN_HANDLER = 37531,
|
||||
NPC_FROSTWING_WHELP = 37532,
|
||||
NPC_ICY_BLAST = 38223,
|
||||
NPC_FROST_BOMB = 37186,
|
||||
NPC_ICE_TOMB = 36980,
|
||||
};
|
||||
|
||||
enum GameObjectsIds
|
||||
@@ -199,6 +212,8 @@ enum GameObjectsIds
|
||||
GO_SINDRAGOSA_ENTRANCE_DOOR = 201373,
|
||||
GO_SINDRAGOSA_SHORTCUT_ENTRANCE_DOOR = 201369,
|
||||
GO_SINDRAGOSA_SHORTCUT_EXIT_DOOR = 201379,
|
||||
GO_ICE_WALL = 202396,
|
||||
GO_ICE_BLOCK = 201722,
|
||||
};
|
||||
|
||||
enum AchievementCriteriaIds
|
||||
@@ -247,7 +262,14 @@ enum SharedActions
|
||||
ACTION_ROTFACE_COMBAT = -366270,
|
||||
ACTION_ROTFACE_OOZE = -366271,
|
||||
ACTION_ROTFACE_DEATH = -366272,
|
||||
ACTION_CHANGE_PHASE = -366780
|
||||
ACTION_CHANGE_PHASE = -366780,
|
||||
|
||||
// Sindragosa
|
||||
ACTION_START_FROSTWYRM = -368530,
|
||||
ACTION_TRIGGER_ASPHYXIATION = -368531,
|
||||
};
|
||||
|
||||
// Declaration
|
||||
extern Position const SindragosaSpawnPos;
|
||||
|
||||
#endif // DEF_ICECROWN_CITADEL_H
|
||||
@@ -39,8 +39,10 @@ static const DoorData doorData[] =
|
||||
{GO_GREEN_DRAGON_BOSS_ENTRANCE, DATA_VALITHRIA_DREAMWALKER, DOOR_TYPE_ROOM, BOUNDARY_N },
|
||||
{GO_GREEN_DRAGON_BOSS_EXIT, DATA_VALITHRIA_DREAMWALKER, DOOR_TYPE_PASSAGE, BOUNDARY_S },
|
||||
{GO_SINDRAGOSA_ENTRANCE_DOOR, DATA_SINDRAGOSA, DOOR_TYPE_ROOM, BOUNDARY_S },
|
||||
{GO_SINDRAGOSA_SHORTCUT_ENTRANCE_DOOR, DATA_SINDRAGOSA, DOOR_TYPE_ROOM, BOUNDARY_E },
|
||||
{GO_SINDRAGOSA_SHORTCUT_ENTRANCE_DOOR, DATA_SINDRAGOSA, DOOR_TYPE_PASSAGE, BOUNDARY_E },
|
||||
{GO_SINDRAGOSA_SHORTCUT_EXIT_DOOR, DATA_SINDRAGOSA, DOOR_TYPE_PASSAGE, BOUNDARY_NONE},
|
||||
{GO_ICE_WALL, DATA_SINDRAGOSA, DOOR_TYPE_ROOM, BOUNDARY_SE },
|
||||
{GO_ICE_WALL, DATA_SINDRAGOSA, DOOR_TYPE_ROOM, BOUNDARY_SW },
|
||||
{0, 0, DOOR_TYPE_ROOM, BOUNDARY_NONE} // END
|
||||
};
|
||||
|
||||
@@ -72,6 +74,12 @@ class instance_icecrown_citadel : public InstanceMapScript
|
||||
memset(bloodCouncil, 0, 3*sizeof(uint64));
|
||||
bloodCouncilController = 0;
|
||||
bloodQueenLanaThel = 0;
|
||||
sindragosa = 0;
|
||||
spinestalker = 0;
|
||||
rimefang = 0;
|
||||
frostwyrms = 0;
|
||||
spinestalkerTrash = 0;
|
||||
rimefangTrash = 0;
|
||||
isBonedEligible = true;
|
||||
isOozeDanceEligible = true;
|
||||
isNauseaEligible = true;
|
||||
@@ -170,6 +178,19 @@ class instance_icecrown_citadel : public InstanceMapScript
|
||||
case NPC_BLOOD_QUEEN_LANA_THEL:
|
||||
bloodQueenLanaThel = creature->GetGUID();
|
||||
break;
|
||||
case NPC_SINDRAGOSA:
|
||||
sindragosa = creature->GetGUID();
|
||||
break;
|
||||
case NPC_SPINESTALKER:
|
||||
spinestalker = creature->GetGUID();
|
||||
if (!creature->isDead())
|
||||
++frostwyrms;
|
||||
break;
|
||||
case NPC_RIMEFANG:
|
||||
rimefang = creature->GetGUID();
|
||||
if (!creature->isDead())
|
||||
++frostwyrms;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
@@ -196,6 +217,7 @@ class instance_icecrown_citadel : public InstanceMapScript
|
||||
case GO_SINDRAGOSA_ENTRANCE_DOOR:
|
||||
case GO_SINDRAGOSA_SHORTCUT_ENTRANCE_DOOR:
|
||||
case GO_SINDRAGOSA_SHORTCUT_EXIT_DOOR:
|
||||
case GO_ICE_WALL:
|
||||
AddDoor(go, true);
|
||||
break;
|
||||
case GO_LADY_DEATHWHISPER_ELEVATOR:
|
||||
@@ -276,6 +298,7 @@ class instance_icecrown_citadel : public InstanceMapScript
|
||||
case GO_SINDRAGOSA_ENTRANCE_DOOR:
|
||||
case GO_SINDRAGOSA_SHORTCUT_ENTRANCE_DOOR:
|
||||
case GO_SINDRAGOSA_SHORTCUT_EXIT_DOOR:
|
||||
case GO_ICE_WALL:
|
||||
AddDoor(go, false);
|
||||
break;
|
||||
default:
|
||||
@@ -283,6 +306,23 @@ class instance_icecrown_citadel : public InstanceMapScript
|
||||
}
|
||||
}
|
||||
|
||||
uint32 GetData(uint32 type)
|
||||
{
|
||||
switch (type)
|
||||
{
|
||||
case DATA_SINDRAGOSA_FROSTWYRMS:
|
||||
return frostwyrms;
|
||||
case DATA_SPINESTALKER:
|
||||
return spinestalkerTrash;
|
||||
case DATA_RIMEFANG:
|
||||
return rimefangTrash;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
uint64 GetData64(uint32 type)
|
||||
{
|
||||
switch (type)
|
||||
@@ -313,6 +353,12 @@ class instance_icecrown_citadel : public InstanceMapScript
|
||||
return bloodCouncilController;
|
||||
case DATA_BLOOD_QUEEN_LANA_THEL:
|
||||
return bloodQueenLanaThel;
|
||||
case DATA_SINDRAGOSA:
|
||||
return sindragosa;
|
||||
case DATA_SPINESTALKER:
|
||||
return spinestalker;
|
||||
case DATA_RIMEFANG:
|
||||
return rimefang;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
@@ -411,6 +457,39 @@ class instance_icecrown_citadel : public InstanceMapScript
|
||||
case DATA_ORB_WHISPERER_ACHIEVEMENT:
|
||||
isOrbWhispererEligible = data ? true : false;
|
||||
break;
|
||||
case DATA_SINDRAGOSA_FROSTWYRMS:
|
||||
if (data > 1)
|
||||
frostwyrms = data;
|
||||
else if (data == 1)
|
||||
++frostwyrms;
|
||||
else if (!data && !--frostwyrms && GetBossState(DATA_SINDRAGOSA) != DONE)
|
||||
{
|
||||
instance->LoadGrid(SindragosaSpawnPos.GetPositionX(), SindragosaSpawnPos.GetPositionY());
|
||||
if (Creature* boss = instance->SummonCreature(NPC_SINDRAGOSA, SindragosaSpawnPos))
|
||||
{
|
||||
boss->setActive(true);
|
||||
boss->AI()->DoAction(ACTION_START_FROSTWYRM);
|
||||
}
|
||||
}
|
||||
break;
|
||||
case DATA_SPINESTALKER:
|
||||
if (data > 1)
|
||||
spinestalkerTrash = data;
|
||||
else if (data == 1)
|
||||
++spinestalkerTrash;
|
||||
else if (!data && !--spinestalkerTrash)
|
||||
if (Creature* spinestalk = instance->GetCreature(spinestalker))
|
||||
spinestalk->AI()->DoAction(ACTION_START_FROSTWYRM);
|
||||
break;
|
||||
case DATA_RIMEFANG:
|
||||
if (data > 1)
|
||||
rimefangTrash = data;
|
||||
else if (data == 1)
|
||||
++rimefangTrash;
|
||||
else if (!data && !--rimefangTrash)
|
||||
if (Creature* rime = instance->GetCreature(rimefang))
|
||||
rime->AI()->DoAction(ACTION_START_FROSTWYRM);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
@@ -544,8 +623,8 @@ class instance_icecrown_citadel : public InstanceMapScript
|
||||
return false;
|
||||
// no break
|
||||
case DATA_SINDRAGOSA:
|
||||
if (GetBossState(DATA_VALITHRIA_DREAMWALKER) != DONE)
|
||||
return false;
|
||||
//if (GetBossState(DATA_VALITHRIA_DREAMWALKER) != DONE)
|
||||
// return false;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
@@ -647,7 +726,13 @@ class instance_icecrown_citadel : public InstanceMapScript
|
||||
uint64 bloodCouncil[3];
|
||||
uint64 bloodCouncilController;
|
||||
uint64 bloodQueenLanaThel;
|
||||
uint64 sindragosa;
|
||||
uint64 spinestalker;
|
||||
uint64 rimefang;
|
||||
uint32 teamInInstance;
|
||||
uint8 frostwyrms;
|
||||
uint8 spinestalkerTrash;
|
||||
uint8 rimefangTrash;
|
||||
bool isBonedEligible;
|
||||
bool isOozeDanceEligible;
|
||||
bool isNauseaEligible;
|
||||
|
||||
Reference in new issue
Block a user