aboutsummaryrefslogtreecommitdiff
path: root/src/game/SpellMgr.cpp
diff options
context:
space:
mode:
authormegamage <none@none>2009-05-17 16:40:40 -0500
committermegamage <none@none>2009-05-17 16:40:40 -0500
commit1c134f81e38137bbfb1c6925a3a42d9628571d4c (patch)
tree479972a69d9badeffab98d51e8c19178afb99ec1 /src/game/SpellMgr.cpp
parentb95e67375c00e7e24609450178c4f7ba44064441 (diff)
parent7c6757d7ee652c8e688caa5c6856d116c1f034c1 (diff)
*Merge.
--HG-- branch : trunk
Diffstat (limited to 'src/game/SpellMgr.cpp')
-rw-r--r--src/game/SpellMgr.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/game/SpellMgr.cpp b/src/game/SpellMgr.cpp
index a960942579e..c7bf8cd5bac 100644
--- a/src/game/SpellMgr.cpp
+++ b/src/game/SpellMgr.cpp
@@ -1222,6 +1222,8 @@ bool SpellMgr::IsSpellProcEventCanTriggeredBy(SpellProcEventEntry const* spellPr
if((procFlags & EventProcFlag) == 0)
return false;
+ bool hasFamilyMask = false;
+
/* Check Periodic Auras
* Both hots and dots can trigger if spell has no PROC_FLAG_SUCCESSFUL_POSITIVE_SPELL
@@ -1288,10 +1290,17 @@ bool SpellMgr::IsSpellProcEventCanTriggeredBy(SpellProcEventEntry const* spellPr
if ((spellProcEvent->spellFamilyMask & procSpell->SpellFamilyFlags ) == 0)
return false;
active = true; // Spell added manualy -> so its active spell
+ hasFamilyMask = true;
}
}
}
+ if (procExtra & PROC_EX_INTERNAL_REQ_FAMILY)
+ {
+ if (!hasFamilyMask)
+ return false;
+ }
+
// Check for extra req (if none) and hit/crit
if (procEvent_procEx == PROC_EX_NONE)
{