From 7e1d4c804ee4065df64d3d79045f51b26a7dc3b6 Mon Sep 17 00:00:00 2001 From: H0zen Date: Sat, 20 Feb 2016 00:51:00 +0200 Subject: [PATCH 1/2] Fix Mind Soothe aggro. - Fix issue https://www.getmangos.eu/issue.php?issueid=908 --- src/game/WorldHandlers/Spell.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/game/WorldHandlers/Spell.cpp b/src/game/WorldHandlers/Spell.cpp index d95dd064..be1b0be7 100644 --- a/src/game/WorldHandlers/Spell.cpp +++ b/src/game/WorldHandlers/Spell.cpp @@ -1183,6 +1183,10 @@ void Spell::DoSpellHitOnUnit(Unit* unit, uint32 effectMask, bool isReflected) switch (m_spellInfo->Id) { + // Mind Soothe (all ranks) + case 453: + case 8192: + case 10953: //Soothe animal case 9901: case 8955: From 6c4ca38d56a46746dcba6fcd7e54c74a8723926b Mon Sep 17 00:00:00 2001 From: H0zen Date: Sat, 20 Feb 2016 02:21:27 +0200 Subject: [PATCH 2/2] Correct spell damage taken on melee attacks. - spell damage taken should be affected by auras id 14 (SPELL_AURA_MOD_DAMAGE_TAKEN) - fixes issue https://www.getmangos.eu/issue.php?issueid=605 --- src/game/Object/Unit.cpp | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/src/game/Object/Unit.cpp b/src/game/Object/Unit.cpp index 28782e86..0bf808c0 100644 --- a/src/game/Object/Unit.cpp +++ b/src/game/Object/Unit.cpp @@ -1754,12 +1754,9 @@ void Unit::DealMeleeDamage(CalcDamageInfo* damageInfo, bool durabilityLoss) alreadyDone.insert(*i); uint32 damage = (*i)->GetModifier()->m_amount; SpellEntry const* i_spellProto = (*i)->GetSpellProto(); - // Calculate absorb resist ??? no data in opcode for this possibly unable to absorb or resist? - // uint32 absorb; - // uint32 resist; - // CalcAbsorbResist(pVictim, SpellSchools(spellProto->School), SPELL_DIRECT_DAMAGE, damage, &absorb, &resist); - // damage-=absorb + resist; + //apply bonus damage from existing auras with id = 14 (SPELL_AURA_MOD_DAMAGE_TAKEN) + damage += SpellBaseDamageBonusTaken(GetSpellSchoolMask(i_spellProto)); pVictim->DealDamageMods(this, damage, NULL); WorldPacket data(SMSG_SPELLDAMAGESHIELD, (8 + 8 + 4 + 4));