Jump to content

[s1129][One] Lifebloom final heal not stackable


Guest betagan

Recommended Posts

Hi,

This patch fixes the bug, that the bloom (final heal) of lifeboom (druid heal spell) should not be affected by the number of stacks of that spell. While the periodic healing stacks, the final heal should always be the same for 1, 2 or 3 stacks in TBC (patch 2.4.3).

Quote from patch notes 2.1.0:

The final heal, however, is still unaffected by stacking multiple applications of this spell.
To my knowledge, this never changed and wowwiki still claims the same in august 2008 [1]. It had been correctly implemented in Mangos 8xxx but got changed for 3.x.x and never was corrected in the Mangos ONE branch so far.

The patch was written by me.

diff --git a/src/game/SpellAuras.cpp b/src/game/SpellAuras.cpp
index e17c285..8297038 100644
--- a/src/game/SpellAuras.cpp
+++ b/src/game/SpellAuras.cpp
@@ -2652,6 +2652,13 @@ void Aura::HandleAuraDummy(bool apply, bool Real)
                            ((*itr)->GetSpellProto()->SpellFamilyFlags & UI64LIT(0x1000000000)))
                            return;

+                    // this is only roughly correct, used as fallback in case GetCaster fails (still includes talents twice/thrice) 
+                    m_modifier.m_amount -= (m_stackAmount - 1) * 600;
+                    if (Unit* caster = GetCaster()) {
+                        // this is correct calculation
+                        m_modifier.m_amount = caster->SpellHealingBonusDone(target, GetSpellProto(), 600, SPELL_DIRECT_DAMAGE);
+                        m_modifier.m_amount = target->SpellHealingBonusTaken(caster, GetSpellProto(), m_modifier.m_amount, SPELL_DIRECT_DAMAGE);
+                    }
                    // final heal
                    if(target->IsInWorld())
                        target->CastCustomSpell(target, 33778, &m_modifier.m_amount, NULL, NULL, true, NULL, this, GetCasterGUID());

References:

[1] http://www.wowwiki.com/index.php?title=Lifebloom&oldid=1587267

Link to comment
Share on other sites

  • 2 weeks later...
  • 2 weeks later...
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. Privacy Policy Terms of Use