aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/server/scripts/Spells/spell_priest.cpp6
-rw-r--r--src/server/scripts/Spells/spell_warlock.cpp11
2 files changed, 14 insertions, 3 deletions
diff --git a/src/server/scripts/Spells/spell_priest.cpp b/src/server/scripts/Spells/spell_priest.cpp
index f7bf7a68672..9efb49d5935 100644
--- a/src/server/scripts/Spells/spell_priest.cpp
+++ b/src/server/scripts/Spells/spell_priest.cpp
@@ -1209,8 +1209,12 @@ class spell_pri_vampiric_touch : public SpellScriptLoader
if (AuraEffect const* aurEff = GetEffect(EFFECT_1))
{
// backfire damage
+ int32 bp = aurEff->GetAmount();
+ bp = target->SpellDamageBonusTaken(caster, aurEff->GetSpellInfo(), bp, DOT);
+ bp *= 8;
+
CastSpellExtraArgs args(aurEff);
- args.AddSpellBP0(aurEff->GetAmount() * 8);
+ args.AddSpellBP0(bp);
caster->CastSpell(target, SPELL_PRIEST_VAMPIRIC_TOUCH_DISPEL, args);
}
}
diff --git a/src/server/scripts/Spells/spell_warlock.cpp b/src/server/scripts/Spells/spell_warlock.cpp
index f4fcb96ace5..f11802d79a5 100644
--- a/src/server/scripts/Spells/spell_warlock.cpp
+++ b/src/server/scripts/Spells/spell_warlock.cpp
@@ -904,13 +904,20 @@ class spell_warl_unstable_affliction : public SpellScriptLoader
void HandleDispel(DispelInfo* dispelInfo)
{
if (Unit* caster = GetCaster())
+ {
if (AuraEffect const* aurEff = GetEffect(EFFECT_1))
{
+ Unit* target = dispelInfo->GetDispeller();
+ int32 bp = aurEff->GetAmount();
+ bp = target->SpellDamageBonusTaken(caster, aurEff->GetSpellInfo(), bp, DOT);
+ bp *= 9;
+
// backfire damage and silence
CastSpellExtraArgs args(aurEff);
- args.AddSpellBP0(aurEff->GetAmount() * 9);
- caster->CastSpell(dispelInfo->GetDispeller(), SPELL_WARLOCK_UNSTABLE_AFFLICTION_DISPEL, args);
+ args.AddSpellBP0(bp);
+ caster->CastSpell(target, SPELL_WARLOCK_UNSTABLE_AFFLICTION_DISPEL, args);
}
+ }
}
void Register() override