aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2011-02-15 22:45:30 +0100
committerShauren <shauren.trinity@gmail.com>2011-02-15 22:45:30 +0100
commit6d1e4839a1122994dffaf93d11b2702f1ab16135 (patch)
tree370fc380f52edcf43d1af4d5de7dcda4919f2759
parentc695943a37436e70598c5dbfe43d9f11816e1a70 (diff)
Scripts/Icecrown Citadel: Fixed Sindragosa's Icy Grip
Closes #629
-rw-r--r--sql/base/world_database.sql1
-rw-r--r--sql/scripts/world_scripts_full.sql1
-rw-r--r--sql/updates/world/2011_02_15_4_world_spell_linked_spell.sql1
-rw-r--r--sql/updates/world/2011_02_15_4_world_spell_script_names.sql3
-rw-r--r--src/server/scripts/Northrend/IcecrownCitadel/boss_sindragosa.cpp36
5 files changed, 41 insertions, 1 deletions
diff --git a/sql/base/world_database.sql b/sql/base/world_database.sql
index 454a0adff74..21f4032ecab 100644
--- a/sql/base/world_database.sql
+++ b/sql/base/world_database.sql
@@ -18176,7 +18176,6 @@ 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)'),
diff --git a/sql/scripts/world_scripts_full.sql b/sql/scripts/world_scripts_full.sql
index 8bb02cc045b..068994db9db 100644
--- a/sql/scripts/world_scripts_full.sql
+++ b/sql/scripts/world_scripts_full.sql
@@ -2018,6 +2018,7 @@ INSERT INTO `spell_script_names` (`spell_id`,`ScriptName`) VALUES
( 72528, 'spell_sindragosa_collision_filter'),
( 72529, 'spell_sindragosa_collision_filter'),
( 72530, 'spell_sindragosa_collision_filter'),
+( 70117, 'spell_sindragosa_icy_grip'),
-- Isle of Conquest
( 66630, 'spell_gen_gunship_portal'),
( 66637, 'spell_gen_gunship_portal'),
diff --git a/sql/updates/world/2011_02_15_4_world_spell_linked_spell.sql b/sql/updates/world/2011_02_15_4_world_spell_linked_spell.sql
new file mode 100644
index 00000000000..41cfff3fab9
--- /dev/null
+++ b/sql/updates/world/2011_02_15_4_world_spell_linked_spell.sql
@@ -0,0 +1 @@
+DELETE FROM `spell_linked_spell` WHERE `spell_trigger`=70117;
diff --git a/sql/updates/world/2011_02_15_4_world_spell_script_names.sql b/sql/updates/world/2011_02_15_4_world_spell_script_names.sql
new file mode 100644
index 00000000000..c066aad3b8b
--- /dev/null
+++ b/sql/updates/world/2011_02_15_4_world_spell_script_names.sql
@@ -0,0 +1,3 @@
+DELETE FROM `spell_script_names` WHERE `ScriptName`='spell_sindragosa_icy_grip';
+INSERT INTO `spell_script_names` (`spell_id`,`ScriptName`) VALUES
+(70117,'spell_sindragosa_icy_grip');
diff --git a/src/server/scripts/Northrend/IcecrownCitadel/boss_sindragosa.cpp b/src/server/scripts/Northrend/IcecrownCitadel/boss_sindragosa.cpp
index 841b0d25bcd..8cbfbd895c5 100644
--- a/src/server/scripts/Northrend/IcecrownCitadel/boss_sindragosa.cpp
+++ b/src/server/scripts/Northrend/IcecrownCitadel/boss_sindragosa.cpp
@@ -52,6 +52,7 @@ enum Spells
SPELL_UNCHAINED_MAGIC = 69762,
SPELL_BACKLASH = 69770,
SPELL_ICY_GRIP = 70117,
+ SPELL_ICY_GRIP_JUMP = 70122,
SPELL_BLISTERING_COLD = 70123,
SPELL_FROST_BEACON = 70126,
SPELL_ICE_TOMB_TARGET = 69712,
@@ -1214,6 +1215,40 @@ class spell_sindragosa_collision_filter : public SpellScriptLoader
}
};
+class spell_sindragosa_icy_grip : public SpellScriptLoader
+{
+ public:
+ spell_sindragosa_icy_grip() : SpellScriptLoader("spell_sindragosa_icy_grip") { }
+
+ class spell_sindragosa_icy_grip_SpellScript : public SpellScript
+ {
+ PrepareSpellScript(spell_sindragosa_icy_grip_SpellScript);
+
+ bool Validate(SpellEntry const* /*spell*/)
+ {
+ if (!sSpellStore.LookupEntry(SPELL_ICY_GRIP_JUMP))
+ return false;
+ return true;
+ }
+
+ void HandleScript(SpellEffIndex effIndex)
+ {
+ PreventHitDefaultEffect(effIndex);
+ GetHitUnit()->CastSpell(GetCaster(), SPELL_ICY_GRIP_JUMP, true);
+ }
+
+ void Register()
+ {
+ OnEffect += SpellEffectFn(spell_sindragosa_icy_grip_SpellScript::HandleScript, EFFECT_0, SPELL_EFFECT_SCRIPT_EFFECT);
+ }
+ };
+
+ SpellScript* GetSpellScript() const
+ {
+ return new spell_sindragosa_icy_grip_SpellScript();
+ }
+};
+
class spell_rimefang_icy_blast : public SpellScriptLoader
{
public:
@@ -1471,6 +1506,7 @@ void AddSC_boss_sindragosa()
new spell_sindragosa_frost_beacon();
new spell_sindragosa_ice_tomb();
new spell_sindragosa_collision_filter();
+ new spell_sindragosa_icy_grip();
new spell_rimefang_icy_blast();
new spell_frostwarden_handler_order_whelp();
new spell_frostwarden_handler_focus_fire();