aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorariel- <ariel-@users.noreply.github.com>2018-01-17 13:01:18 -0300
committerShauren <shauren.trinity@gmail.com>2021-06-16 11:22:10 +0200
commitbb7869b31fc2fe6eb8cd9552249fea028d08316a (patch)
tree818ec367cfbd558b8a52e2124dfb56c3e80b7ecf
parent3bc3b3eeeb78fa8acc559730f9c45b0f237e4b2b (diff)
Core/Scripts: fix some spells double dipping from done/taken bonuses
Closes #21007 (cherry picked from commit ab3307fc2373ace51bea93682bc66bc709ca019c)
-rw-r--r--src/server/scripts/Spells/spell_druid.cpp9
1 files changed, 1 insertions, 8 deletions
diff --git a/src/server/scripts/Spells/spell_druid.cpp b/src/server/scripts/Spells/spell_druid.cpp
index d155182247b..9fadf1612f3 100644
--- a/src/server/scripts/Spells/spell_druid.cpp
+++ b/src/server/scripts/Spells/spell_druid.cpp
@@ -852,12 +852,8 @@ public:
void OnRemoveEffect(Unit* target, AuraEffect const* aurEff, uint32 stack)
{
- int32 healAmount = aurEff->GetAmount();
if (Unit* caster = GetCaster())
{
- healAmount = caster->SpellHealingBonusDone(GetTarget(), GetSpellInfo(), healAmount, HEAL, aurEff->GetSpellEffectInfo(), stack);
- healAmount = GetTarget()->SpellHealingBonusTaken(caster, GetSpellInfo(), healAmount, HEAL, aurEff->GetSpellEffectInfo(), stack);
-
// restore mana
std::vector<SpellPowerCost> costs = GetSpellInfo()->CalcPowerCost(caster, GetSpellInfo()->GetSchoolMask());
auto m = std::find_if(costs.begin(), costs.end(), [](SpellPowerCost const& cost) { return cost.Power == POWER_MANA; });
@@ -870,10 +866,7 @@ public:
}
}
- CastSpellExtraArgs args(aurEff);
- args.OriginalCaster = GetCasterGUID();
- args.AddSpellBP0(healAmount);
- target->CastSpell(target, SPELL_DRUID_LIFEBLOOM_FINAL_HEAL, args);
+ target->CastSpell(target, SPELL_DRUID_LIFEBLOOM_FINAL_HEAL, { aurEff, GetCasterGUID() });
}
void AfterRemove(AuraEffect const* aurEff, AuraEffectHandleModes /*mode*/)