diff --git a/Source/Game/AI/SmartScripts/SmartAI.cs b/Source/Game/AI/SmartScripts/SmartAI.cs index 09c241a35..de1c687e0 100644 --- a/Source/Game/AI/SmartScripts/SmartAI.cs +++ b/Source/Game/AI/SmartScripts/SmartAI.cs @@ -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 scriptHolders = new List(); - SmartScript mScript = new SmartScript(); - } - public enum SmartEscortState { None = 0x00, //nothing in progress diff --git a/Source/Game/Entities/Unit/Unit.Combat.cs b/Source/Game/Entities/Unit/Unit.Combat.cs index ccfc81721..b11ee3a0d 100644 --- a/Source/Game/Entities/Unit/Unit.Combat.cs +++ b/Source/Game/Entities/Unit/Unit.Combat.cs @@ -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; diff --git a/Source/Game/Server/WorldManager.cs b/Source/Game/Server/WorldManager.cs index 9ff52665b..02a6d9437 100644 --- a/Source/Game/Server/WorldManager.cs +++ b/Source/Game/Server/WorldManager.cs @@ -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();