From 95504364e04b33345d7c7251383eb719ab64bf8c Mon Sep 17 00:00:00 2001 From: QAston Date: Sun, 10 May 2009 20:15:35 +0200 Subject: Do not proc relentless strikes with slice and dice twice, fix vanish stealth apply --HG-- branch : trunk --- src/game/Spell.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'src/game/Spell.cpp') diff --git a/src/game/Spell.cpp b/src/game/Spell.cpp index 2227bc4c92b..4fdd26c806f 100644 --- a/src/game/Spell.cpp +++ b/src/game/Spell.cpp @@ -978,7 +978,8 @@ void Spell::DoAllEffectOnTarget(TargetInfo *target) uint32 procEx = PROC_EX_NONE; //Spells with this flag cannot trigger if effect is casted on self - bool canEffectTrigger = (m_spellInfo->AttributesEx4 & SPELL_ATTR_EX4_CANT_PROC_FROM_SELFCAST ? m_caster!=unitTarget : true) + // Slice and Dice, relentless strikes, eviscerate + bool canEffectTrigger = (m_spellInfo->AttributesEx4 & (SPELL_ATTR_EX4_CANT_PROC_FROM_SELFCAST | SPELL_ATTR_EX4_UNK4) ? m_caster!=unitTarget : true) && m_canTrigger; if (missInfo==SPELL_MISS_NONE) // In case spell hit target, do all effect on that target @@ -1222,7 +1223,7 @@ void Spell::DoSpellHitOnUnit(Unit *unit, const uint32 effectMask) ((Creature*)m_caster)->AI()->SpellHitTarget(unit, m_spellInfo); // spells with this flag can trigger only if not selfcast (eviscerate for example) - if (m_ChanceTriggerSpells.size() && (!(m_spellInfo->AttributesEx4 & SPELL_ATTR_EX4_CANT_PROC_FROM_SELFCAST) || unit!=m_caster)) + if (m_ChanceTriggerSpells.size() && (!(m_spellInfo->AttributesEx4 & SPELL_ATTR_EX4_CANT_PROC_FROM_SELFCAST | SPELL_ATTR_EX4_UNK4) || unit!=m_caster)) { int _duration=0; for(ChanceTriggerSpells::const_iterator i = m_ChanceTriggerSpells.begin(); i != m_ChanceTriggerSpells.end(); ++i) -- cgit v1.2.3