aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xsrc/server/game/Spells/SpellEffects.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/server/game/Spells/SpellEffects.cpp b/src/server/game/Spells/SpellEffects.cpp
index 1f4f61b193b..03d9fb17dae 100755
--- a/src/server/game/Spells/SpellEffects.cpp
+++ b/src/server/game/Spells/SpellEffects.cpp
@@ -542,8 +542,19 @@ void Spell::SpellDamageSchoolDmg(SpellEffIndex effIndex)
else if (m_spellInfo->SpellFamilyFlags[1] & 0x400000)
{
if (m_caster->GetTypeId() == TYPEID_UNIT && m_caster->ToCreature()->isPet())
+ {
// Get DoTs on target by owner (5% increase by dot)
damage += int32(CalculatePctN(unitTarget->GetDoTsByCaster(m_caster->GetOwnerGUID()), 5));
+
+ if (Player* owner = m_caster->GetOwner()->ToPlayer())
+ {
+ if (AuraEffect* aurEff = owner->GetAuraEffect(SPELL_AURA_ADD_FLAT_MODIFIER, SPELLFAMILY_WARLOCK, 214, 0))
+ {
+ int32 bp0 = aurEff->GetId() == 54037 ? 4 : 8;
+ m_caster->CastCustomSpell(m_caster, 54425, &bp0, NULL, NULL, true);
+ }
+ }
+ }
}
break;
}