diff options
author | Keader <keader.android@gmail.com> | 2017-10-16 23:36:40 -0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-10-16 23:36:40 -0200 |
commit | 4eababa9f065fce940d5f76e280f631047b5ec47 (patch) | |
tree | 902b904ff3763d50cb67b0b816b184b8ce24274c | |
parent | 5a90251ea28bb9b0be376d7b6110b4e93458cbea (diff) |
Core/Spells: Fixed Dragon's Breath with Living Bomb explosion (#20622)
Close: #19949
-rw-r--r-- | sql/updates/world/3.3.5/2017_10_16_04_world.sql | 3 | ||||
-rw-r--r-- | src/server/scripts/Spells/spell_mage.cpp | 24 |
2 files changed, 26 insertions, 1 deletions
diff --git a/sql/updates/world/3.3.5/2017_10_16_04_world.sql b/sql/updates/world/3.3.5/2017_10_16_04_world.sql new file mode 100644 index 00000000000..d53ea30e4b6 --- /dev/null +++ b/sql/updates/world/3.3.5/2017_10_16_04_world.sql @@ -0,0 +1,3 @@ +DELETE FROM `spell_script_names` WHERE `scriptname`='spell_mage_dragon_breath'; +INSERT INTO `spell_script_names` (`spell_id`,`scriptname`) VALUES +(-31661,'spell_mage_dragon_breath'); diff --git a/src/server/scripts/Spells/spell_mage.cpp b/src/server/scripts/Spells/spell_mage.cpp index 6cf70c3a6de..e45ed806ec2 100644 --- a/src/server/scripts/Spells/spell_mage.cpp +++ b/src/server/scripts/Spells/spell_mage.cpp @@ -74,7 +74,8 @@ enum MageSpellIcons { SPELL_ICON_MAGE_SHATTERED_BARRIER = 2945, SPELL_ICON_MAGE_PRESENCE_OF_MIND = 139, - SPELL_ICON_MAGE_CLEARCASTING = 212 + SPELL_ICON_MAGE_CLEARCASTING = 212, + SPELL_ICON_MAGE_LIVING_BOMB = 3000 }; // Incanter's Absorbtion @@ -408,6 +409,26 @@ class spell_mage_combustion_proc : public SpellScriptLoader } }; +// -31661 - Dragon's Breath +class spell_mage_dragon_breath : public AuraScript +{ + PrepareAuraScript(spell_mage_dragon_breath); + + bool CheckProc(ProcEventInfo& eventInfo) + { + // Dont proc with Living Bomb explosion + SpellInfo const* spellInfo = eventInfo.GetSpellInfo(); + if (spellInfo && spellInfo->SpellIconID == SPELL_ICON_MAGE_LIVING_BOMB && spellInfo->SpellFamilyName == SPELLFAMILY_MAGE) + return false; + return true; + } + + void Register() override + { + DoCheckProc += AuraCheckProcFn(spell_mage_dragon_breath::CheckProc); + } +}; + // -11185 - Improved Blizzard class spell_mage_imp_blizzard : public SpellScriptLoader { @@ -1295,6 +1316,7 @@ void AddSC_mage_spell_scripts() new spell_mage_cold_snap(); new spell_mage_combustion(); new spell_mage_combustion_proc(); + RegisterAuraScript(spell_mage_dragon_breath); new spell_mage_imp_blizzard(); new spell_mage_imp_mana_gems(); new spell_mage_empowered_fire(); |