From bc1d71e589ad29efe0d6575f9409756fb4ffc81a Mon Sep 17 00:00:00 2001 From: Ovahlord Date: Tue, 20 Sep 2022 19:44:44 +0200 Subject: [PATCH] Core/Spells: fixed totems not inheriting spell bonus effects from their creator --- src/server/game/Entities/Unit/Unit.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index dec90c56bb..d84974b94a 100644 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -6224,8 +6224,8 @@ uint32 Unit::SpellDamageBonusDone(Unit* victim, SpellInfo const* spellProto, uin // Totems get their bonus damage from their owner if (IsCreature() && IsTotem()) - if (Unit* owner = GetOwner()) - return owner->SpellDamageBonusDone(victim, spellProto, pdamage, damagetype, effIndex, stack); + if (Unit* creator = ObjectAccessor::GetUnit(*this, GetCreatorGUID())) + return creator->SpellDamageBonusDone(victim, spellProto, pdamage, damagetype, effIndex, stack); int32 DoneTotal = 0; float DoneTotalMod = SpellDamagePctDone(victim, spellProto, damagetype); @@ -6988,8 +6988,8 @@ uint32 Unit::SpellHealingBonusDone(Unit* victim, SpellInfo const* spellProto, ui { // For totems get healing bonus from owner (statue isn't totem in fact) if (GetTypeId() == TYPEID_UNIT && IsTotem()) - if (Unit* owner = GetOwner()) - return owner->SpellHealingBonusDone(victim, spellProto, healamount, damagetype, effIndex, stack); + if (Unit* creator = ObjectAccessor::GetUnit(*this, GetCreatorGUID())) + return creator->SpellHealingBonusDone(victim, spellProto, healamount, damagetype, effIndex, stack); // Some spells don't benefit from done mods if (spellProto->HasAttribute(SPELL_ATTR3_IGNORE_CASTER_MODIFIERS))