mirror of
https://github.com/mangosfour/server.git
synced 2025-12-14 07:37:01 +00:00
[7210] Implement shaman 51505 and ranks crit, and work 55447 glyph
Signed-off-by: DiSlord <dislord@nomail.com>
This commit is contained in:
parent
2b1be18a02
commit
2e6e2946cc
2 changed files with 28 additions and 8 deletions
|
|
@ -7764,14 +7764,34 @@ bool Unit::isSpellCrit(Unit *pVictim, SpellEntry const *spellProto, SpellSchoolM
|
|||
break;
|
||||
}
|
||||
}
|
||||
|
||||
// Sacred Shield
|
||||
if (spellProto->SpellFamilyName == SPELLFAMILY_PALADIN &&
|
||||
spellProto->SpellFamilyFlags & 0x0000000040000000LL)
|
||||
// Custom crit by class
|
||||
switch(spellProto->SpellFamilyName)
|
||||
{
|
||||
Aura *aura = pVictim->GetDummyAura(58597);
|
||||
if (aura && aura->GetCasterGUID() == GetGUID())
|
||||
crit_chance+=aura->GetModifier()->m_amount;
|
||||
case SPELLFAMILY_PALADIN:
|
||||
// Sacred Shield
|
||||
if (spellProto->SpellFamilyFlags & 0x0000000040000000LL)
|
||||
{
|
||||
Aura *aura = pVictim->GetDummyAura(58597);
|
||||
if (aura && aura->GetCasterGUID() == GetGUID())
|
||||
crit_chance+=aura->GetModifier()->m_amount;
|
||||
break;
|
||||
}
|
||||
break;
|
||||
case SPELLFAMILY_SHAMAN:
|
||||
// Lava Burst
|
||||
if (spellProto->SpellFamilyFlags & 0x0000100000000000LL)
|
||||
{
|
||||
if (Aura *flameShock = pVictim->GetAura(SPELL_AURA_PERIODIC_DAMAGE, SPELLFAMILY_SHAMAN, 0x0000000010000000LL, 0, GetGUID()))
|
||||
{
|
||||
// Consume shock aura if not have Glyph of Flame Shock
|
||||
if (!GetAura(55447, 0))
|
||||
pVictim->RemoveAurasByCasterSpell(flameShock->GetId(), GetGUID());
|
||||
return true;
|
||||
}
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue