[10174] Fix special targeting for spells 812/9347.

This commit is contained in:
VladimirMangos 2010-07-10 02:15:36 +04:00
parent 6fba66fded
commit 695f0f1655
2 changed files with 36 additions and 3 deletions

View file

@ -1060,8 +1060,26 @@ void Aura::TriggerSpell()
{
switch(auraId)
{
// // Periodic Mana Burn
// case 812: break;
case 812: // Periodic Mana Burn
{
trigger_spell_id = 25779; // Mana Burn
// expected selection current fight target
triggerTarget = GetTarget()->getVictim();
if (!triggerTarget || triggerTarget->GetMaxPower(POWER_MANA) <= 0)
return;
triggeredSpellInfo = sSpellStore.LookupEntry(trigger_spell_id);
if (!triggeredSpellInfo)
return;
SpellRangeEntry const* srange = sSpellRangeStore.LookupEntry(triggeredSpellInfo->rangeIndex);
float max_range = GetSpellMaxRange(srange);
if (!triggerTarget->IsWithinDist(GetTarget(),max_range))
return;
break;
}
// // Polymorphic Ray
// case 6965: break;
// Thaumaturgy Channel
@ -1668,6 +1686,21 @@ void Aura::TriggerSpell()
// Spell exist but require custom code
switch(auraId)
{
case 9347: // Mortal Strike
{
// expected selection current fight target
triggerTarget = GetTarget()->getVictim();
if (!triggerTarget)
return;
// avoid triggering for far target
SpellRangeEntry const* srange = sSpellRangeStore.LookupEntry(triggeredSpellInfo->rangeIndex);
float max_range = GetSpellMaxRange(srange);
if (!triggerTarget->IsWithinDist(GetTarget(),max_range))
return;
break;
}
// Curse of Idiocy
case 1010:
{

View file

@ -1,4 +1,4 @@
#ifndef __REVISION_NR_H__
#define __REVISION_NR_H__
#define REVISION_NR "10173"
#define REVISION_NR "10174"
#endif // __REVISION_NR_H__