aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Spells/SpellMgr.cpp
diff options
context:
space:
mode:
authorariel- <ariel-@users.noreply.github.com>2016-11-18 02:15:45 -0300
committerShauren <shauren.trinity@gmail.com>2019-08-17 20:04:14 +0200
commit77fc6ceea8716a85baca80b1816fbe3588b182e7 (patch)
tree8d9c4ad4cabd6100ab8317ad074255733742fd7f /src/server/game/Spells/SpellMgr.cpp
parentb4d30bb92cbfc8411d8d91b0f4f2981f2cecc148 (diff)
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)
Diffstat (limited to 'src/server/game/Spells/SpellMgr.cpp')
-rw-r--r--src/server/game/Spells/SpellMgr.cpp14
1 files changed, 8 insertions, 6 deletions
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)