From 53fa6322a80aa3354f1e796a1f124c02a50aeb93 Mon Sep 17 00:00:00 2001 From: maximius Date: Wed, 18 Nov 2009 16:45:07 -0800 Subject: [PATCH] *Hysteria now causes health loss. By manuel, thanks to QAston. Closes #323 --HG-- branch : trunk --- src/game/SpellAuras.cpp | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/src/game/SpellAuras.cpp b/src/game/SpellAuras.cpp index 4cb094f06c5..5c0d84a7960 100644 --- a/src/game/SpellAuras.cpp +++ b/src/game/SpellAuras.cpp @@ -6690,6 +6690,14 @@ void AuraEffect::PeriodicDummyTick() } case SPELLFAMILY_DEATHKNIGHT: { + switch (spell->Id) + { + case 49016: //Hysteria + uint32 damage = uint32(caster->GetMaxHealth()*0.01f); + m_target->DealDamage(m_target, damage, NULL, DIRECT_DAMAGE, SPELL_SCHOOL_MASK_NORMAL, NULL, false); + break; + } + // Death and Decay if (spell->SpellFamilyFlags[0] & 0x20) { @@ -6701,8 +6709,7 @@ void AuraEffect::PeriodicDummyTick() if (spell->SpellFamilyFlags[1] & 0x00004000) { // Get 0 effect aura - AuraEffect *slow = GetParentAura()->GetPartAura(0); - if (slow) + if (AuraEffect *slow = GetParentAura()->GetPartAura(0)) { slow->ApplyModifier(false, true); slow->SetAmount(slow->GetAmount() + GetAmount()); @@ -6729,18 +6736,18 @@ void AuraEffect::PeriodicDummyTick() return; // Remove death rune added on proc - for (uint8 i=0; iSpellIconID == 2622) { if (((Player*)m_target)->GetCurrentRune(i) != RUNE_DEATH || - ((Player*)m_target)->GetBaseRune(i) == RUNE_BLOOD ) + ((Player*)m_target)->GetBaseRune(i) == RUNE_BLOOD) continue; } else { if (((Player*)m_target)->GetCurrentRune(i) != RUNE_DEATH || - ((Player*)m_target)->GetBaseRune(i) != RUNE_BLOOD ) + ((Player*)m_target)->GetBaseRune(i) != RUNE_BLOOD) continue; }