diff --git a/src/engine/mobileAI/MobAI.java b/src/engine/mobileAI/MobAI.java index d2dca5a9..dcb32c68 100644 --- a/src/engine/mobileAI/MobAI.java +++ b/src/engine/mobileAI/MobAI.java @@ -14,6 +14,7 @@ import engine.InterestManagement.WorldGrid; import engine.gameManager.*; import engine.math.Vector3f; import engine.math.Vector3fImmutable; +import engine.mobileAI.MobHandlers.MobHandler; import engine.mobileAI.Threads.MobAIThread; import engine.mobileAI.utilities.CombatUtilities; import engine.mobileAI.utilities.MovementUtilities; @@ -756,7 +757,9 @@ public class MobAI { HamletGuardLogic(mob); break; default: - DefaultLogic(mob); + //SuperSimpleMobAI.run(mob); + MobHandler.run(mob); + //DefaultLogic(mob); break; } if(mob.isAlive()) diff --git a/src/engine/mobileAI/Threads/MobAIThread.java b/src/engine/mobileAI/Threads/MobAIThread.java index 41917e10..8519f413 100644 --- a/src/engine/mobileAI/Threads/MobAIThread.java +++ b/src/engine/mobileAI/Threads/MobAIThread.java @@ -34,34 +34,6 @@ public class MobAIThread implements Runnable{ try { if (mob != null) { MobAI.DetermineAction(mob); - //if(mob.isSiege() || mob.isPet() || mob.isPlayerGuard()){ - // SuperSimpleMobAI.run(mob); - // return; - //} - //boolean override; - //switch (mob.BehaviourType) { - // case GuardCaptain: - // case GuardMinion: - // case GuardWallArcher: - // case Pet1: - // case HamletGuard: - // override = false; - // break; - // default: - // override = true; - // break; - //} - - // if(mob.isSiege()) - // override = false; - - //if(mob.isPet()) - // override = false; - - //if(override){ - // SuperSimpleMobAI.run(mob); - // return; - //} } } catch (Exception e) { Logger.error("Error processing Mob [Name: {}, UUID: {}]", mob.getName(), mob.getObjectUUID(), e); diff --git a/src/engine/objects/AbstractCharacter.java b/src/engine/objects/AbstractCharacter.java index 7245656c..f7f55fc0 100644 --- a/src/engine/objects/AbstractCharacter.java +++ b/src/engine/objects/AbstractCharacter.java @@ -1465,12 +1465,7 @@ public abstract class AbstractCharacter extends AbstractWorldObject { if (eff == null) continue; - boolean cancelOnAttack = eff.cancelOnAttack(); - if(s.equals("Invisible")) - cancelOnAttack = true; - - - if (cancelOnAttack && eff.cancel()) { + if (eff.cancelOnAttack() && eff.cancel()) { eff.cancelJob(); this.effects.remove(s); changed = true; @@ -1565,10 +1560,7 @@ public abstract class AbstractCharacter extends AbstractWorldObject { override = true; } - Boolean cancelOnMove = eff.cancelOnMove(); - if(s.equals("SafeMode") || eff.getEffectsBase().getUUID() == 961) - cancelOnMove = true; - if (!override && cancelOnMove && eff.cancel()) { + if (!override && eff.cancelOnMove() && eff.cancel()) { //System.out.println("canceling on Move"); eff.cancelJob(); this.effects.remove(s);