aboutsummaryrefslogtreecommitdiff
path: root/src/game/SpellAuras.cpp
diff options
context:
space:
mode:
authorQAston <none@none>2009-06-14 17:56:22 +0200
committerQAston <none@none>2009-06-14 17:56:22 +0200
commite7910ec9d241749822278574315c02a531cee3fd (patch)
treec926e52db309ddb414d3c756b5e82bd0c9664697 /src/game/SpellAuras.cpp
parent4e005c307028bebd4a083d6ad5c96a2360439947 (diff)
*Correct interpretation of procflags and update spell_proc_event due to that (some of mangos entries may be incompatibile due to that change)
*Fix siphon life. *Fix Rapture. --HG-- branch : trunk
Diffstat (limited to 'src/game/SpellAuras.cpp')
-rw-r--r--src/game/SpellAuras.cpp24
1 files changed, 12 insertions, 12 deletions
diff --git a/src/game/SpellAuras.cpp b/src/game/SpellAuras.cpp
index 7b92d6c924b..f7eb73c7b72 100644
--- a/src/game/SpellAuras.cpp
+++ b/src/game/SpellAuras.cpp
@@ -5994,9 +5994,9 @@ void AuraEffect::PeriodicTick()
SpellEntry const* spellProto = GetSpellProto();
// Set trigger flag
- uint32 procAttacker = PROC_FLAG_ON_DO_PERIODIC;
- uint32 procVictim = PROC_FLAG_ON_TAKE_PERIODIC;
- uint32 procEx = PROC_EX_INTERNAL_DOT | PROC_EX_NORMAL_HIT;
+ uint32 procAttacker = PROC_FLAG_ON_DO_PERIODIC | PROC_FLAG_SUCCESSFUL_DAMAGING_SPELL_HIT;
+ uint32 procVictim = PROC_FLAG_ON_TAKE_PERIODIC | PROC_FLAG_TAKEN_DAMAGING_SPELL_HIT;
+ uint32 procEx = PROC_EX_NORMAL_HIT;
pdamage = (pdamage <= absorb+resist) ? 0 : (pdamage-absorb-resist);
if (pdamage)
procVictim|=PROC_FLAG_TAKEN_ANY_DAMAGE;
@@ -6060,9 +6060,9 @@ void AuraEffect::PeriodicTick()
int32 stackAmount = GetParentAura()->GetStackAmount();
// Set trigger flag
- uint32 procAttacker = PROC_FLAG_ON_DO_PERIODIC;
- uint32 procVictim = PROC_FLAG_ON_TAKE_PERIODIC;
- uint32 procEx = PROC_EX_INTERNAL_DOT | PROC_EX_NORMAL_HIT;
+ uint32 procAttacker = PROC_FLAG_ON_DO_PERIODIC | PROC_FLAG_SUCCESSFUL_DAMAGING_SPELL_HIT;
+ uint32 procVictim = PROC_FLAG_ON_TAKE_PERIODIC | PROC_FLAG_TAKEN_DAMAGING_SPELL_HIT;
+ uint32 procEx = PROC_EX_NORMAL_HIT;
pdamage = (pdamage <= absorb+resist) ? 0 : (pdamage-absorb-resist);
if (pdamage)
procVictim|=PROC_FLAG_TAKEN_ANY_DAMAGE;
@@ -6161,9 +6161,9 @@ void AuraEffect::PeriodicTick()
}
}
- uint32 procAttacker = PROC_FLAG_ON_DO_PERIODIC;
- uint32 procVictim = PROC_FLAG_ON_TAKE_PERIODIC;
- uint32 procEx = PROC_EX_INTERNAL_HOT | PROC_EX_NORMAL_HIT;
+ uint32 procAttacker = PROC_FLAG_ON_DO_PERIODIC | PROC_FLAG_SUCCESSFUL_HEALING_SPELL;
+ uint32 procVictim = PROC_FLAG_ON_TAKE_PERIODIC | PROC_FLAG_TAKEN_HEALING_SPELL;
+ uint32 procEx = PROC_EX_NORMAL_HIT;
// ignore item heals
if(!haveCastItem)
pCaster->ProcDamageAndSpell(target, procAttacker, procVictim, procEx, pdamage, BASE_ATTACK, spellProto);
@@ -6358,9 +6358,9 @@ void AuraEffect::PeriodicTick()
pCaster->SendSpellNonMeleeDamageLog(&damageInfo);
// Set trigger flag
- uint32 procAttacker = PROC_FLAG_ON_DO_PERIODIC;
- uint32 procVictim = PROC_FLAG_ON_TAKE_PERIODIC;
- uint32 procEx = createProcExtendMask(&damageInfo, SPELL_MISS_NONE) | PROC_EX_INTERNAL_DOT;
+ uint32 procAttacker = PROC_FLAG_ON_DO_PERIODIC | PROC_FLAG_SUCCESSFUL_DAMAGING_SPELL_HIT;
+ uint32 procVictim = PROC_FLAG_ON_TAKE_PERIODIC | PROC_FLAG_TAKEN_DAMAGING_SPELL_HIT;
+ uint32 procEx = createProcExtendMask(&damageInfo, SPELL_MISS_NONE);
if (damageInfo.damage)
procVictim|=PROC_FLAG_TAKEN_ANY_DAMAGE;