aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Spells/SpellMgr.cpp
diff options
context:
space:
mode:
authorTrisjdc <trisjdc@gmail.com>2014-06-07 23:43:11 +0100
committerTrisjdc <trisjdc@gmail.com>2014-06-07 23:43:11 +0100
commit91052574acb49a791ebfc958c0776e19dd578a71 (patch)
tree2a8e60749d4921fb61f1f6dfd13272c12a979d2d /src/server/game/Spells/SpellMgr.cpp
parent6c31c33f667e4a861e40418f8b10e4e6b06d30c1 (diff)
Core/Auras: Expanding functionality of SPELL_GROUP_STACK_RULE_EXCLUSIVE_SAME_EFFECT to be able to take care of aura effects inside their handlers
Currently handled: - SPELL_AURA_MOD_RESISTANCE_PCT - SPELL_AURA_MOD_STAT - SPELL_AURA_MELEE_SLOW - SPELL_AURA_MOD_MELEE_HASTE - SPELL_AURA_MOD_DAMAGE_PERCENT_DONE Necessary to allow stack rules such as BoK/BoS/Bok-Drums and others to be all in a target with all of the aura effects, yet with only the 'highest' effect active
Diffstat (limited to 'src/server/game/Spells/SpellMgr.cpp')
-rw-r--r--src/server/game/Spells/SpellMgr.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/server/game/Spells/SpellMgr.cpp b/src/server/game/Spells/SpellMgr.cpp
index 9eadd178eb3..04de93bae0c 100644
--- a/src/server/game/Spells/SpellMgr.cpp
+++ b/src/server/game/Spells/SpellMgr.cpp
@@ -765,6 +765,15 @@ SpellGroupStackRule SpellMgr::CheckSpellGroupStackRules(SpellInfo const* spellIn
return rule;
}
+SpellGroupStackRule SpellMgr::GetSpellGroupStackRule(SpellGroup group) const
+{
+ SpellGroupStackMap::const_iterator itr = mSpellGroupStack.find(group);
+ if (itr != mSpellGroupStack.end())
+ return itr->second;
+
+ return SPELL_GROUP_STACK_RULE_DEFAULT;
+}
+
SpellProcEventEntry const* SpellMgr::GetSpellProcEvent(uint32 spellId) const
{
SpellProcEventMap::const_iterator itr = mSpellProcEventMap.find(spellId);