aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormegamage <none@none>2009-05-06 00:07:28 -0500
committermegamage <none@none>2009-05-06 00:07:28 -0500
commit4045c881abce892dabcb55a19e7422076e9ce53a (patch)
tree3bc57b401be86f0c743498b7c9f67ef83efde38a
parent3f6f15e34b11586d4b819cd89261fb03f690bb9f (diff)
*add SPELL_ATTR_CU_EXCLUDE_SELF
--HG-- branch : trunk
-rw-r--r--src/game/Spell.cpp3
-rw-r--r--src/game/SpellMgr.h1
2 files changed, 4 insertions, 0 deletions
diff --git a/src/game/Spell.cpp b/src/game/Spell.cpp
index ad0ebff1874..c863e8cc933 100644
--- a/src/game/Spell.cpp
+++ b/src/game/Spell.cpp
@@ -1535,6 +1535,9 @@ void Spell::SearchAreaTarget(std::list<Unit*> &TagUnitMap, float radius, SpellNo
m_caster->GetMap()->VisitWorld(x, y, radius, notifier);
else
m_caster->GetMap()->VisitAll(x, y, radius, notifier);
+
+ if(m_customAttr & SPELL_ATTR_CU_EXCLUDE_SELF)
+ TagUnitMap.remove(m_caster);
}
WorldObject* Spell::SearchNearbyTarget(float range, SpellTargets TargetType)
diff --git a/src/game/SpellMgr.h b/src/game/SpellMgr.h
index 8933931ea64..d19584514b0 100644
--- a/src/game/SpellMgr.h
+++ b/src/game/SpellMgr.h
@@ -679,6 +679,7 @@ inline bool IsProfessionSkill(uint32 skill)
#define SPELL_ATTR_CU_LINK_AURA 0x00001000
#define SPELL_ATTR_CU_LINK_REMOVE 0x00002000
#define SPELL_ATTR_CU_MOVEMENT_IMPAIR 0x00004000
+#define SPELL_ATTR_CU_EXCLUDE_SELF 0x00008000
typedef std::vector<uint32> SpellCustomAttribute;