diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index 7622f8cd9a..7359972a22 100644 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -7467,6 +7467,21 @@ uint32 Unit::SpellHealingBonusDone(Unit* victim, SpellInfo const* spellProto, ui } } + // Custom scripted damage + switch (spellProto->SpellFamilyName) + { + case SPELLFAMILY_SHAMAN: + { + // Nature's Blessing + if (AuraEffect const* blessing = GetDummyAuraEffect(SPELLFAMILY_SHAMAN, 2012, EFFECT_0)) + if (blessing->IsAffectingSpell(spellProto) && victim->HasAura(974, GetGUID())) + AddPct(DoneTotalMod, blessing->GetAmount()); + break; + } + default: + break; + } + // Done fixed damage bonus auras int32 DoneAdvertisedBenefit = SpellBaseHealingBonusDone(spellProto->GetSchoolMask()); // modify spell power by victim's SPELL_AURA_MOD_HEALING auras (eg Amplify/Dampen Magic) diff --git a/src/server/game/Spells/SpellEffects.cpp b/src/server/game/Spells/SpellEffects.cpp index e951de7388..31a4b10ec5 100644 --- a/src/server/game/Spells/SpellEffects.cpp +++ b/src/server/game/Spells/SpellEffects.cpp @@ -1082,11 +1082,6 @@ void Spell::EffectHeal(SpellEffIndex effIndex) int32 addhealth = damage; - // Nature's Blessing - if (AuraEffect const* aurEff = caster->GetDummyAuraEffect(SPELLFAMILY_SHAMAN, 2012, EFFECT_0)) - if (unitTarget->HasAura(974)) - AddPct(addhealth, aurEff->GetAmount()); - // Vessel of the Naaru (Vial of the Sunwell trinket) if (m_spellInfo->Id == 45064) { diff --git a/src/server/game/Spells/SpellMgr.cpp b/src/server/game/Spells/SpellMgr.cpp index bf9dabf2bf..a97be456e4 100644 --- a/src/server/game/Spells/SpellMgr.cpp +++ b/src/server/game/Spells/SpellMgr.cpp @@ -5629,6 +5629,13 @@ void SpellMgr::LoadSpellInfoCorrections() if (spellInfo->SpellIconID == 2721 && spellInfo->SpellFamilyFlags[0] & 0x2) spellInfo->SpellFamilyFlags[0] |= 0x40; break; + case SPELLFAMILY_SHAMAN: + // Nature's Blessing should also affect Greater Healing Wave and Riptide + if (spellInfo->SpellIconID == 2012 && spellInfo->HasAura(SPELL_AURA_DUMMY)) + spellInfo->Effects[EFFECT_0].SpellClassMask[2] = (0x00000010 | 0x00010000); + break; + default: + break; } }