From 52134f1852317e1a112f4ddb08eefbc47b952955 Mon Sep 17 00:00:00 2001 From: Den Date: Sun, 5 Jun 2011 23:40:01 +0400 Subject: [PATCH] [11611] Implement glyph 42740 Signed-off-by: VladimirMangos --- src/game/Unit.cpp | 18 +++++++++++++++--- src/shared/revision_nr.h | 2 +- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp index a23d37087..339ad4cbc 100644 --- a/src/game/Unit.cpp +++ b/src/game/Unit.cpp @@ -6744,9 +6744,21 @@ bool Unit::IsSpellCrit(Unit *pVictim, SpellEntry const *spellProto, SpellSchoolM // Custom crit by class switch(spellProto->SpellFamilyName) { + case SPELLFAMILY_MAGE: + { + // Fire Blast + if (spellProto->IsFitToFamilyMask(UI64LIT(0x0000000000000002)) && spellProto->SpellIconID == 12) + { + // Glyph of Fire Blast + if (pVictim->HasFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_STUNNED) || pVictim->isInRoots()) + if (Aura* aura = GetAura(56369, EFFECT_INDEX_0)) + crit_chance += aura->GetModifier()->m_amount; + } + break; + } case SPELLFAMILY_PRIEST: // Flash Heal - if (spellProto->SpellFamilyFlags & UI64LIT(0x0000000000000800)) + if (spellProto->IsFitToFamilyMask(UI64LIT(0x0000000000000800))) { if (pVictim->GetHealth() > pVictim->GetMaxHealth()/2) break; @@ -6765,7 +6777,7 @@ bool Unit::IsSpellCrit(Unit *pVictim, SpellEntry const *spellProto, SpellSchoolM break; case SPELLFAMILY_DRUID: // Improved Insect Swarm (Starfire part) - if (spellProto->SpellFamilyFlags & UI64LIT(0x0000000000000004)) + if (spellProto->IsFitToFamilyMask(UI64LIT(0x0000000000000004))) { // search for Moonfire on target if (pVictim->GetAura(SPELL_AURA_PERIODIC_DAMAGE, SPELLFAMILY_DRUID, UI64LIT(0x000000000000002), 0, GetObjectGuid())) @@ -6799,7 +6811,7 @@ bool Unit::IsSpellCrit(Unit *pVictim, SpellEntry const *spellProto, SpellSchoolM break; case SPELLFAMILY_SHAMAN: // Lava Burst - if (spellProto->SpellFamilyFlags & UI64LIT(0x0000100000000000)) + if (spellProto->IsFitToFamilyMask(UI64LIT(0x0000100000000000))) { // Flame Shock if (pVictim->GetAura(SPELL_AURA_PERIODIC_DAMAGE, SPELLFAMILY_SHAMAN, UI64LIT(0x0000000010000000), 0, GetObjectGuid())) diff --git a/src/shared/revision_nr.h b/src/shared/revision_nr.h index 17eb9f3e5..20883138d 100644 --- a/src/shared/revision_nr.h +++ b/src/shared/revision_nr.h @@ -1,4 +1,4 @@ #ifndef __REVISION_NR_H__ #define __REVISION_NR_H__ - #define REVISION_NR "11610" + #define REVISION_NR "11611" #endif // __REVISION_NR_H__