aboutsummaryrefslogtreecommitdiff
path: root/src/game/Spell.cpp
diff options
context:
space:
mode:
authorXanadu <none@none>2010-01-27 00:02:21 +0100
committerXanadu <none@none>2010-01-27 00:02:21 +0100
commit2c81241bef8f47bc1845d880b872065139804ab9 (patch)
tree3ef5d70236b52ced575d36143adf9186252d305a /src/game/Spell.cpp
parentb233a12c86af3f9d9bcd38756289665e2a506029 (diff)
Fixed hunter trap procs - Entrapment and Lock and Load shall be henceforth proced only by the correct traps.
Closes issue #110. --HG-- branch : trunk
Diffstat (limited to 'src/game/Spell.cpp')
-rw-r--r--src/game/Spell.cpp15
1 files changed, 7 insertions, 8 deletions
diff --git a/src/game/Spell.cpp b/src/game/Spell.cpp
index 3e7b2519224..add99c25795 100644
--- a/src/game/Spell.cpp
+++ b/src/game/Spell.cpp
@@ -814,15 +814,14 @@ void Spell::prepareDataForTriggerSystem(AuraEffect const * triggeredByAura)
}
m_procEx= PROC_EX_NONE;
- // Hunter traps spells (for Entrapment trigger)
- // Gives your Immolation Trap, Frost Trap, Explosive Trap, and Snake Trap ....
- if (m_spellInfo->SpellFamilyName == SPELLFAMILY_HUNTER && (m_spellInfo->SpellFamilyFlags[1] & 0x00002000 || m_spellInfo->SpellFamilyFlags[0] & 0x1C))
- {
+ // Hunter trap spells - activation proc for Lock and Load, Entrapment and Misdirection
+ if (m_spellInfo->SpellFamilyName == SPELLFAMILY_HUNTER &&
+ (m_spellInfo->SpellFamilyFlags[0] & 0x18 || // Freezing and Frost Trap, Freezing Arrow
+ m_spellInfo->Id == 57879 || // Snake Trap - done this way to avoid double proc
+ m_spellInfo->SpellFamilyFlags[2] & 0x00024000)) // Explosive and Immolation Trap
+
m_procAttacker |= PROC_FLAG_ON_TRAP_ACTIVATION;
- // Trigger only from spells originally casted by hunter(trap activation) to prevent multiple trigger from trap triggered spells
- if (m_originalCasterGUID != m_caster->GetGUID() && m_originalCasterGUID)
- return;
- }
+
/*
Effects which are result of aura proc from triggered spell cannot proc
to prevent chain proc of these spells