diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp index 74905c821..e7f2b4947 100644 --- a/src/game/Unit.cpp +++ b/src/game/Unit.cpp @@ -1637,6 +1637,7 @@ void Unit::CalcAbsorbResist(Unit *pVictim,SpellSchoolMask schoolMask, DamageEffe // Reflect damage spells (not cast any damage spell in aura lookup) uint32 reflectSpell = 0; int32 reflectDamage = 0; + Aura* reflectTriggeredBy = NULL; // expected as not expired at reflect as in current cases // Death Prevention Aura SpellEntry const* preventDeathSpell = NULL; int32 preventDeathAmount = 0; @@ -1700,6 +1701,7 @@ void Unit::CalcAbsorbResist(Unit *pVictim,SpellSchoolMask schoolMask, DamageEffe else reflectDamage = currentAbsorb / 2; reflectSpell = 33619; + reflectTriggeredBy = *i; break; } if (spellProto->Id == 39228 || // Argussian Compass @@ -1762,15 +1764,15 @@ void Unit::CalcAbsorbResist(Unit *pVictim,SpellSchoolMask schoolMask, DamageEffe { switch((*k)->GetModifier()->m_miscvalue) { - case 5065: // Rank 1 - case 5064: // Rank 2 - case 5063: // Rank 3 + case 5065: // Rank 1 + case 5064: // Rank 2 { if(RemainingDamage >= currentAbsorb) reflectDamage = (*k)->GetModifier()->m_amount * currentAbsorb/100; else reflectDamage = (*k)->GetModifier()->m_amount * RemainingDamage/100; reflectSpell = 33619; + reflectTriggeredBy = *i; } break; default: break; } @@ -1871,7 +1873,7 @@ void Unit::CalcAbsorbResist(Unit *pVictim,SpellSchoolMask schoolMask, DamageEffe // Cast back reflect damage spell if (reflectSpell) - pVictim->CastCustomSpell(this, reflectSpell, &reflectDamage, NULL, NULL, true); + pVictim->CastCustomSpell(this, reflectSpell, &reflectDamage, NULL, NULL, true, NULL, reflectTriggeredBy); // absorb by mana cost AuraList const& vManaShield = pVictim->GetAurasByType(SPELL_AURA_MANA_SHIELD); diff --git a/src/shared/revision_nr.h b/src/shared/revision_nr.h index 6cafd0927..2985decc3 100644 --- a/src/shared/revision_nr.h +++ b/src/shared/revision_nr.h @@ -1,4 +1,4 @@ #ifndef __REVISION_NR_H__ #define __REVISION_NR_H__ - #define REVISION_NR "8067" + #define REVISION_NR "8068" #endif // __REVISION_NR_H__