From 77fc6ceea8716a85baca80b1816fbe3588b182e7 Mon Sep 17 00:00:00 2001 From: ariel- Date: Fri, 18 Nov 2016 02:15:45 -0300 Subject: Core/Spell: Added the possibility to explicitly disable auraEffect procs using attributes - Renamed IsProcTriggeredOnEvent to GetProcEffectMask, since long ago this function returned bool, new name should better reflect its use (cherrypicked from e7ccd8ea3fccad92af3553f544aad49be5d1a9ed) --- src/server/game/Spells/SpellMgr.cpp | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) (limited to 'src/server/game/Spells/SpellMgr.cpp') diff --git a/src/server/game/Spells/SpellMgr.cpp b/src/server/game/Spells/SpellMgr.cpp index 3dccae606f4..190eee167dc 100644 --- a/src/server/game/Spells/SpellMgr.cpp +++ b/src/server/game/Spells/SpellMgr.cpp @@ -1279,8 +1279,8 @@ void SpellMgr::LoadSpellProcs() // 0 1 2 3 4 5 6 QueryResult result = WorldDatabase.Query("SELECT SpellId, SchoolMask, SpellFamilyName, SpellFamilyMask0, SpellFamilyMask1, SpellFamilyMask2, SpellFamilyMask3, " - // 7 8 9 10 11 12 13 14 15 - "ProcFlags, SpellTypeMask, SpellPhaseMask, HitMask, AttributesMask, ProcsPerMinute, Chance, Cooldown, Charges FROM spell_proc"); + // 7 8 9 10 11 12 13 14 15 16 + "ProcFlags, SpellTypeMask, SpellPhaseMask, HitMask, AttributesMask, DisableEffectsMask, ProcsPerMinute, Chance, Cooldown, Charges FROM spell_proc"); uint32 count = 0; if (result) @@ -1330,10 +1330,11 @@ void SpellMgr::LoadSpellProcs() baseProcEntry.SpellPhaseMask = fields[9].GetUInt32(); baseProcEntry.HitMask = fields[10].GetUInt32(); baseProcEntry.AttributesMask = fields[11].GetUInt32(); - baseProcEntry.ProcsPerMinute = fields[12].GetFloat(); - baseProcEntry.Chance = fields[13].GetFloat(); - baseProcEntry.Cooldown = Milliseconds(fields[14].GetUInt32()); - baseProcEntry.Charges = fields[15].GetUInt8(); + baseProcEntry.DisableEffectsMask = fields[12].GetUInt32(); + baseProcEntry.ProcsPerMinute = fields[13].GetFloat(); + baseProcEntry.Chance = fields[14].GetFloat(); + baseProcEntry.Cooldown = Milliseconds(fields[15].GetUInt32()); + baseProcEntry.Charges = fields[16].GetUInt8(); while (spellInfo) { @@ -1599,6 +1600,7 @@ void SpellMgr::LoadSpellProcs() } procEntry.AttributesMask = 0; + procEntry.DisableEffectsMask = 0; if (spellInfo->ProcFlags & PROC_FLAG_KILL) procEntry.AttributesMask |= PROC_ATTR_REQ_EXP_OR_HONOR; if (addTriggerFlag) -- cgit v1.2.3