From a6df53bbe2ef1d9c444de6b43adb7c5da125f682 Mon Sep 17 00:00:00 2001 From: click Date: Fri, 17 Dec 2010 04:52:17 +0100 Subject: Core/Spells: Fix erraneous behaviour on hunter spell Lock and Load (disable charge-drop) - thanks to Dr. Tenma Closes issue 3307 --HG-- branch : trunk --- src/server/game/Entities/Unit/Unit.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index 3245b707129..a92da8470b5 100755 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -6680,6 +6680,11 @@ bool Unit::HandleDummyAuraProc(Unit *pVictim, uint32 damage, AuraEffect* trigger if (!procSpell) return false; + Spell * spell = ToPlayer()->m_spellModTakingSpell; + + // Disable charge drop because of Lock and Load + ToPlayer()->SetSpellModTakingSpell(spell, false); + // Explosive Shot if (procSpell->SpellFamilyFlags[2] & 0x200) { @@ -6688,10 +6693,12 @@ bool Unit::HandleDummyAuraProc(Unit *pVictim, uint32 damage, AuraEffect* trigger } else basepoints0 = CalculatePowerCost(procSpell, this, SpellSchoolMask(procSpell->SchoolMask)) * 4/10; + + ToPlayer()->SetSpellModTakingSpell(spell, true); + if (basepoints0 <= 0) return false; - basepoints0 += 1; // standard basepoint increase for CastCustomSpell target = this; triggered_spell_id = 34720; break; -- cgit v1.2.3