From 687cd83bddfbc5416ba11bff53c8a636747a5802 Mon Sep 17 00:00:00 2001 From: Shauren Date: Sat, 24 Jul 2010 22:14:23 +0200 Subject: Fixed Thrill of the Hunt not restoring mana when Explosive Shot crits Closes issue #2221. --HG-- branch : trunk --- src/server/game/Entities/Unit/Unit.cpp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'src/server') diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index 10e6905ec8a..e9e1bdc0258 100644 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -6627,8 +6627,14 @@ bool Unit::HandleDummyAuraProc(Unit *pVictim, uint32 damage, AuraEffect* trigger if (!procSpell) return false; - // mana cost save - basepoints0 = CalculatePowerCost(procSpell, this, SpellSchoolMask(procSpell->SchoolMask)) * 4/10; + // Explosive Shot + if (procSpell->SpellFamilyFlags[2] & 0x200) + { + if (AuraEffect const* pEff = pVictim->GetAuraEffect(SPELL_AURA_PERIODIC_DUMMY, SPELLFAMILY_HUNTER, 0x0, 0x80000000, 0x0, GetGUID())) + basepoints0 = CalculatePowerCost(pEff->GetSpellProto(), this, SpellSchoolMask(pEff->GetSpellProto()->SchoolMask)) * 4/10/3; + } + else + basepoints0 = CalculatePowerCost(procSpell, this, SpellSchoolMask(procSpell->SchoolMask)) * 4/10; if (basepoints0 <= 0) return false; -- cgit v1.2.3