[11611] Implement glyph 42740

Signed-off-by: VladimirMangos <vladimir@getmangos.com>
This commit is contained in:
Den 2011-06-05 23:40:01 +04:00 committed by VladimirMangos
parent 3a60c4ae3b
commit 52134f1852
2 changed files with 16 additions and 4 deletions

View file

@ -6744,9 +6744,21 @@ bool Unit::IsSpellCrit(Unit *pVictim, SpellEntry const *spellProto, SpellSchoolM
// Custom crit by class // Custom crit by class
switch(spellProto->SpellFamilyName) 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: case SPELLFAMILY_PRIEST:
// Flash Heal // Flash Heal
if (spellProto->SpellFamilyFlags & UI64LIT(0x0000000000000800)) if (spellProto->IsFitToFamilyMask(UI64LIT(0x0000000000000800)))
{ {
if (pVictim->GetHealth() > pVictim->GetMaxHealth()/2) if (pVictim->GetHealth() > pVictim->GetMaxHealth()/2)
break; break;
@ -6765,7 +6777,7 @@ bool Unit::IsSpellCrit(Unit *pVictim, SpellEntry const *spellProto, SpellSchoolM
break; break;
case SPELLFAMILY_DRUID: case SPELLFAMILY_DRUID:
// Improved Insect Swarm (Starfire part) // Improved Insect Swarm (Starfire part)
if (spellProto->SpellFamilyFlags & UI64LIT(0x0000000000000004)) if (spellProto->IsFitToFamilyMask(UI64LIT(0x0000000000000004)))
{ {
// search for Moonfire on target // search for Moonfire on target
if (pVictim->GetAura(SPELL_AURA_PERIODIC_DAMAGE, SPELLFAMILY_DRUID, UI64LIT(0x000000000000002), 0, GetObjectGuid())) 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; break;
case SPELLFAMILY_SHAMAN: case SPELLFAMILY_SHAMAN:
// Lava Burst // Lava Burst
if (spellProto->SpellFamilyFlags & UI64LIT(0x0000100000000000)) if (spellProto->IsFitToFamilyMask(UI64LIT(0x0000100000000000)))
{ {
// Flame Shock // Flame Shock
if (pVictim->GetAura(SPELL_AURA_PERIODIC_DAMAGE, SPELLFAMILY_SHAMAN, UI64LIT(0x0000000010000000), 0, GetObjectGuid())) if (pVictim->GetAura(SPELL_AURA_PERIODIC_DAMAGE, SPELLFAMILY_SHAMAN, UI64LIT(0x0000000010000000), 0, GetObjectGuid()))

View file

@ -1,4 +1,4 @@
#ifndef __REVISION_NR_H__ #ifndef __REVISION_NR_H__
#define __REVISION_NR_H__ #define __REVISION_NR_H__
#define REVISION_NR "11610" #define REVISION_NR "11611"
#endif // __REVISION_NR_H__ #endif // __REVISION_NR_H__