[7469] Allow scripting aura spell triggering in case not existed spell.

This commit is contained in:
VladimirMangos 2009-03-16 18:22:11 +03:00
parent 5d6cb5fe80
commit e904d7c2c0
2 changed files with 9 additions and 11 deletions

View file

@ -39,6 +39,7 @@
#include "Formulas.h"
#include "BattleGround.h"
#include "CreatureAI.h"
#include "ScriptCalls.h"
#include "Util.h"
#include "GridNotifiers.h"
#include "GridNotifiersImpl.h"
@ -1437,7 +1438,7 @@ void Aura::TriggerSpell()
caster->ModifyPower( POWER_MANA, mana );
caster->SendEnergizeSpellLog(caster, 23493, mana, POWER_MANA);
}
break;
return;
}
// // Stoneclaw Totem Passive TEST
// case 23792: break;
@ -1505,8 +1506,6 @@ void Aura::TriggerSpell()
// case 28522: break;
// // Silithyst
// case 29519: break;
// // Inoculate Nestlewood Owlkin
case 29528: trigger_spell_id = 28713; break;
// // Overload
// case 29768: break;
// // Return Fire
@ -1548,7 +1547,6 @@ void Aura::TriggerSpell()
creature->SetHealth(0); // just for nice GM-mode view
}
return;
break;
}
// Quake
case 30576: trigger_spell_id = 30571; break;
@ -1929,13 +1927,9 @@ void Aura::TriggerSpell()
default:
break;
}
// Reget trigger spell proto
triggeredSpellInfo = sSpellStore.LookupEntry(trigger_spell_id);
if(triggeredSpellInfo == NULL)
{
sLog.outError("Aura::TriggerSpell: Spell %u have 0 in EffectTriggered[%d], not handled custom case?",GetId(),GetEffIndex());
return;
}
}
else
{
@ -1987,8 +1981,12 @@ void Aura::TriggerSpell()
}
}
}
// All ok cast by default case
caster->CastSpell(target, triggeredSpellInfo, true, 0, this);
if(triggeredSpellInfo)
caster->CastSpell(target, triggeredSpellInfo, true, 0, this);
else if(target->GetTypeId()!=TYPEID_UNIT || !Script->EffectDummyCreature(caster, GetId(), GetEffIndex(), (Creature*)target))
sLog.outError("Aura::TriggerSpell: Spell %u have 0 in EffectTriggered[%d], not handled custom case?",GetId(),GetEffIndex());
}
void Aura::TriggerSpellWithValue()