diff options
-rw-r--r-- | sql/mangos.sql | 5 | ||||
-rw-r--r-- | sql/updates/4045_world_spell_proc_event.sql | 5 | ||||
-rw-r--r-- | sql/world_spell_full.sql | 3 | ||||
-rw-r--r-- | src/game/Unit.cpp | 14 |
4 files changed, 26 insertions, 1 deletions
diff --git a/sql/mangos.sql b/sql/mangos.sql index 636af9faca1..7316cd17dfa 100644 --- a/sql/mangos.sql +++ b/sql/mangos.sql @@ -23,7 +23,7 @@ DROP TABLE IF EXISTS `db_version`; CREATE TABLE `db_version` ( `version` varchar(120) default NULL, `creature_ai_version` varchar(120) default NULL, - `required_8016_01_mangos_npc_spellclick_spells` bit(1) default NULL + `required_8021_01_mangos_spell_proc_event` bit(1) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=utf8 ROW_FORMAT=FIXED COMMENT='Used DB version notes'; -- @@ -17409,6 +17409,9 @@ INSERT INTO `spell_proc_event` VALUES (51474, 0x00000000, 0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00010000, 0.000000, 0.000000, 0), (51478, 0x00000000, 0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00010000, 0.000000, 0.000000, 0), (51479, 0x00000000, 0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00010000, 0.000000, 0.000000, 0), +(51483, 0x00000001, 11, 0x20000000, 0x00000000, 0x00000000, 0x00004000, 0x00000000, 0.000000, 0.000000, 0), +(51485, 0x00000001, 11, 0x20000000, 0x00000000, 0x00000000, 0x00004000, 0x00000000, 0.000000, 0.000000, 0), +(51486, 0x00000001, 11, 0x20000000, 0x00000000, 0x00000000, 0x00004000, 0x00000000, 0.000000, 0.000000, 0), (51556, 0x00000000, 11, 0x000000C0, 0x00000000, 0x00000010, 0x00000000, 0x00000002, 0.000000, 0.000000, 0), (51557, 0x00000000, 11, 0x000000C0, 0x00000000, 0x00000010, 0x00000000, 0x00000002, 0.000000, 0.000000, 0), (51558, 0x00000000, 11, 0x000000C0, 0x00000000, 0x00000010, 0x00000000, 0x00000002, 0.000000, 0.000000, 0), diff --git a/sql/updates/4045_world_spell_proc_event.sql b/sql/updates/4045_world_spell_proc_event.sql new file mode 100644 index 00000000000..6104f0d0782 --- /dev/null +++ b/sql/updates/4045_world_spell_proc_event.sql @@ -0,0 +1,5 @@ +DELETE FROM `spell_proc_event` WHERE `entry` IN (51483,51485,51486); +INSERT INTO `spell_proc_event` VALUES +(51483, 0x00000001, 11, 0x20000000, 0x00000000, 0x00000000, 0x00000400, 0x00000000, 0.000000, 0.000000, 0), +(51485, 0x00000001, 11, 0x20000000, 0x00000000, 0x00000000, 0x00000400, 0x00000000, 0.000000, 0.000000, 0), +(51486, 0x00000001, 11, 0x20000000, 0x00000000, 0x00000000, 0x00000400, 0x00000000, 0.000000, 0.000000, 0);
\ No newline at end of file diff --git a/sql/world_spell_full.sql b/sql/world_spell_full.sql index 42c2257ec28..c39370ec588 100644 --- a/sql/world_spell_full.sql +++ b/sql/world_spell_full.sql @@ -1200,6 +1200,9 @@ INSERT INTO `spell_proc_event` (`entry`, `SchoolMask`, `SpellFamilyName`, `Spell ( 51474, 0x00, 0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00010000, 0, 0, 0), -- Astral Shift (Rank 1) ( 51478, 0x00, 0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00010000, 0, 0, 0), -- Astral Shift (Rank 2) ( 51479, 0x00, 0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00010000, 0, 0, 0), -- Astral Shift (Rank 3) +(51483, 0x00000001, 11, 0x20000000, 0x00000000, 0x00000000, 0x00000400, 0x00000000, 0.000000, 0.000000, 0), +(51485, 0x00000001, 11, 0x20000000, 0x00000000, 0x00000000, 0x00000400, 0x00000000, 0.000000, 0.000000, 0), +(51486, 0x00000001, 11, 0x20000000, 0x00000000, 0x00000000, 0x00000400, 0x00000000, 0.000000, 0.000000, 0), ( 51521, 0x00, 11, 0x00000000, 0x01000000, 0x00000000, 0x00000000, 0x00000000, 0, 0, 0), -- Improved Stormstrike ( 51522, 0x00, 11, 0x00000000, 0x01000000, 0x00000000, 0x00000000, 0x00000000, 0, 0, 0), -- Improved Stormstrike ( 51528, 0x00, 0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 2.5, 0, 0), -- Maelstrom Weapon (Rank 1) diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp index dd1307e7ef4..190aea1b923 100644 --- a/src/game/Unit.cpp +++ b/src/game/Unit.cpp @@ -6575,6 +6575,20 @@ bool Unit::HandleDummyAuraProc(Unit *pVictim, uint32 damage, AuraEffect* trigger break; } } + // Storm, Earth and Fire + if (dummySpell->SpellIconID == 3063) + { + // Earthbind Totem summon only + if(procSpell->Id != 2484) + return false; + + float chance = triggerAmount; + if (!roll_chance_f(chance)) + return false; + + triggered_spell_id = 64695; + break; + } // Ancestral Awakening if (dummySpell->SpellIconID == 3065) { |