Core/Scripts: Fix loading of spell scripts.

This commit is contained in:
hondacrx
2018-03-13 15:44:02 -04:00
parent 0ab3b8e8cd
commit 874e5b7b2c
3 changed files with 3 additions and 45 deletions
+1 -43
View File
@@ -357,7 +357,7 @@ namespace Game.AI
if (HasEscortState(SmartEscortState.Returning))
{
if (mWPReached)//reached OOC WP
if (mOOCReached)//reached OOC WP
{
mOOCReached = false;
RemoveEscortState(SmartEscortState.Returning);
@@ -1081,48 +1081,6 @@ namespace Game.AI
SmartScript mScript;
}
public class SmartSpell : SpellScript
{
public override bool Load()
{
mScript.OnInitialize(GetSpell());
scriptHolders = Global.SmartAIMgr.GetScript((int)GetSpellInfo().Id, SmartScriptType.Spell);
return true;
}
void HandleEffectHit(uint effIndex)
{
mScript.ProcessEventsFor(SmartEvents.SpellEffectHit, GetCaster());
}
void HandleEffectHitTarget(uint effIndex)
{
mScript.ProcessEventsFor(SmartEvents.SpellEffectHitTarget);
}
public override void Register()
{
foreach (var holder in scriptHolders)
{
switch (holder.GetEventType())
{
case SmartEvents.SpellEffectHit:
OnEffectHit.Add(new EffectHandler(HandleEffectHit, holder.Event.spell.effIndex, SpellEffectName.ScriptEffect));
OnEffectHit.Add(new EffectHandler(HandleEffectHit, holder.Event.spell.effIndex, SpellEffectName.Dummy));
break;
case SmartEvents.SpellEffectHitTarget:
OnEffectHitTarget.Add(new EffectHandler(HandleEffectHitTarget, holder.Event.spell.effIndex, SpellEffectName.ScriptEffect));
OnEffectHitTarget.Add(new EffectHandler(HandleEffectHitTarget, holder.Event.spell.effIndex, SpellEffectName.Dummy));
break;
}
}
}
List<SmartScriptHolder> scriptHolders = new List<SmartScriptHolder>();
SmartScript mScript = new SmartScript();
}
public enum SmartEscortState
{
None = 0x00, //nothing in progress
+1 -1
View File
@@ -2336,7 +2336,7 @@ namespace Game.Entities
vSchoolAbsorbCopy.Sort(new AbsorbAuraOrderPred());
// absorb without mana cost
foreach (var absorbAurEff in vSchoolAbsorbCopy)
foreach (var absorbAurEff in vSchoolAbsorbCopy.ToList())
{
if (damageInfo.GetDamage() == 0)
break;
+1 -1
View File
@@ -801,7 +801,7 @@ namespace Game
LoadAutobroadcasts();
// Load and initialize scripts
//Global.ObjectMgr.LoadSpellScripts(); // must be after load Creature/Gameobject(Template/Data)
Global.ObjectMgr.LoadSpellScripts(); // must be after load Creature/Gameobject(Template/Data)
Global.ObjectMgr.LoadEventScripts(); // must be after load Creature/Gameobject(Template/Data)
Global.ObjectMgr.LoadWaypointScripts();