Jump to content

[fix][6625] Periodic Leech


Recommended Posts

Posted

SendHealSpellLog should send gain instead of new_damage * multiplier, otherwise it shows misleading numbers.

Index: game/SpellAuras.cpp
===================================================================
--- game/SpellAuras.cpp        (revision 6623)
+++ game/SpellAuras.cpp        (working copy)
@@ -5735,10 +5735,10 @@

                        int32 gain = pCaster->SpellHealingBonus(spellProto, uint32(new_damage * multiplier), DOT, pCaster);

-                        gain = pCaster->ModifyHealth(gain);
-                        pCaster->getHostilRefManager().threatAssist(pCaster, float(gain) * 0.5f, spellProto);
+                        float realGain = float(pCaster->ModifyHealth(gain));
+                        pCaster->getHostilRefManager().threatAssist(pCaster, realGain * 0.5f, spellProto);

-                        pCaster->SendHealSpellLog(pCaster, spellProto->Id, uint32(new_damage * multiplier));
+                        pCaster->SendHealSpellLog(pCaster, spellProto->Id, uint32(gain));
                        break;
                }
                case SPELL_AURA_PERIODIC_HEAL:

Posted

Well, you are right.

But the problem is that it does not send value modified by % healing recieved auras ( eg. Mortal Strike ).

This must send value changed by spellhealingbonus() anyway thanks you for your suggestion it must be a little different

EDIT: updated first post with code correctly sending overheal

×
×
  • 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