Core/Spell: modified HitMask for new default procs

(cherry-picked from ad6912f0d578cd94beb2ea6f94b63ec83b605e82)
This commit is contained in:
ariel-
2018-12-09 14:18:42 +01:00
committed by Shauren
parent 01691e5d3b
commit 49cd81a1c9
+20 -4
View File
@@ -1572,14 +1572,30 @@ void SpellMgr::LoadSpellProcs()
procEntry.SpellPhaseMask = PROC_SPELL_PHASE_HIT;
procEntry.HitMask = PROC_HIT_NONE; // uses default proc @see SpellMgr::CanSpellTriggerProcOnEvent
// Reflect auras should only proc off reflects
for (SpellEffectInfo const* effect : spellInfo->GetEffectsForDifficulty(DIFFICULTY_NONE))
{
if (effect && (effect->IsAura(SPELL_AURA_REFLECT_SPELLS) || effect->IsAura(SPELL_AURA_REFLECT_SPELLS_SCHOOL)))
if (!effect || !effect->IsAura())
continue;
switch (effect->ApplyAuraName)
{
procEntry.HitMask = PROC_HIT_REFLECT;
break;
// Reflect auras should only proc off reflects
case SPELL_AURA_REFLECT_SPELLS:
case SPELL_AURA_REFLECT_SPELLS_SCHOOL:
procEntry.HitMask = PROC_HIT_REFLECT;
break;
// Only drop charge on crit
case SPELL_AURA_MOD_WEAPON_CRIT_PERCENT:
procEntry.HitMask = PROC_HIT_CRITICAL;
break;
// Only drop charge on block
case SPELL_AURA_MOD_BLOCK_PERCENT:
procEntry.HitMask = PROC_HIT_BLOCK;
break;
default:
continue;
}
break;
}
procEntry.AttributesMask = 0;