Core/Spells: Fix erraneous behaviour on hunter spell Lock and Load (disable charge-drop) - thanks to Dr. Tenma

Closes issue 3307

--HG--
branch : trunk
This commit is contained in:
click
2010-12-17 04:52:17 +01:00
parent a3de6e7c6f
commit a6df53bbe2
+8 -1
View File
@@ -6680,6 +6680,11 @@ bool Unit::HandleDummyAuraProc(Unit *pVictim, uint32 damage, AuraEffect* trigger
if (!procSpell) if (!procSpell)
return false; return false;
Spell * spell = ToPlayer()->m_spellModTakingSpell;
// Disable charge drop because of Lock and Load
ToPlayer()->SetSpellModTakingSpell(spell, false);
// Explosive Shot // Explosive Shot
if (procSpell->SpellFamilyFlags[2] & 0x200) if (procSpell->SpellFamilyFlags[2] & 0x200)
{ {
@@ -6688,10 +6693,12 @@ bool Unit::HandleDummyAuraProc(Unit *pVictim, uint32 damage, AuraEffect* trigger
} }
else else
basepoints0 = CalculatePowerCost(procSpell, this, SpellSchoolMask(procSpell->SchoolMask)) * 4/10; basepoints0 = CalculatePowerCost(procSpell, this, SpellSchoolMask(procSpell->SchoolMask)) * 4/10;
ToPlayer()->SetSpellModTakingSpell(spell, true);
if (basepoints0 <= 0) if (basepoints0 <= 0)
return false; return false;
basepoints0 += 1; // standard basepoint increase for CastCustomSpell
target = this; target = this;
triggered_spell_id = 34720; triggered_spell_id = 34720;
break; break;