diff --git a/src/engine/mobileAI/MobAI.java b/src/engine/mobileAI/MobAI.java index 751ffc0e..5b55ac18 100644 --- a/src/engine/mobileAI/MobAI.java +++ b/src/engine/mobileAI/MobAI.java @@ -165,7 +165,7 @@ public class MobAI { if (playercity != null) for (Mob guard : playercity.getParent().zoneMobSet) - if (guard.BehaviourType != null && guard.BehaviourType.ordinal() == Enum.MobBehaviourType.GuardCaptain.ordinal()) + if (guard.BehaviourType != null && guard.BehaviourType.equals(Enum.MobBehaviourType.GuardCaptain)) if (guard.getCombatTarget() == null && !guard.getGuild().equals(mob.getGuild())) guard.setCombatTarget(mob); @@ -260,7 +260,7 @@ public class MobAI { //guard captains inherit barracks patrol points dynamically - if (mob.BehaviourType.ordinal() == Enum.MobBehaviourType.GuardCaptain.ordinal()) { + if (mob.BehaviourType.equals(Enum.MobBehaviourType.GuardCaptain)) { Building barracks = mob.building; @@ -608,7 +608,7 @@ public class MobAI { if (mob.despawned && mob.isPlayerGuard) { - if (mob.BehaviourType.ordinal() == Enum.MobBehaviourType.GuardMinion.ordinal()) { + if (mob.BehaviourType.equals(Enum.MobBehaviourType.GuardMinion)) { if (mob.npcOwner.isAlive() == false || ((Mob) mob.npcOwner).despawned == true) { //minions don't respawn while guard captain is dead @@ -625,7 +625,7 @@ public class MobAI { //check to send mob home for player guards to prevent exploit of dragging guards away and then teleporting - if (mob.BehaviourType.ordinal() != Enum.MobBehaviourType.Pet1.ordinal()) + if (mob.BehaviourType.equals(Enum.MobBehaviourType.Pet1) == false) CheckToSendMobHome(mob); return; @@ -646,7 +646,7 @@ public class MobAI { return; } - if (mob.BehaviourType.ordinal() != Enum.MobBehaviourType.Pet1.ordinal()) + if (mob.BehaviourType.equals(Enum.MobBehaviourType.Pet1) == false) CheckToSendMobHome(mob); if (mob.getCombatTarget() != null) { @@ -893,7 +893,8 @@ public class MobAI { if (mob.getCombatTarget() == null) return; - if (mob.getCombatTarget().getObjectType().equals(Enum.GameObjectType.PlayerCharacter) && MovementUtilities.inRangeDropAggro(mob, (PlayerCharacter) mob.getCombatTarget()) == false && mob.BehaviourType.ordinal() != Enum.MobBehaviourType.Pet1.ordinal()) { + if (mob.getCombatTarget().getObjectType().equals(Enum.GameObjectType.PlayerCharacter) && MovementUtilities.inRangeDropAggro(mob, (PlayerCharacter) mob.getCombatTarget()) == false && + mob.BehaviourType.equals(Enum.MobBehaviourType.Pet1) == false) { mob.setCombatTarget(null); return; @@ -912,7 +913,7 @@ public class MobAI { if (mob.BehaviourType.isAgressive) { if (mob.isPlayerGuard()) { - if (mob.BehaviourType.ordinal() == Enum.MobBehaviourType.GuardCaptain.ordinal()) + if (mob.BehaviourType.equals(Enum.MobBehaviourType.GuardCaptain)) CheckForPlayerGuardAggro(mob); } else { CheckForAggro(mob); @@ -932,7 +933,7 @@ public class MobAI { PowersManager.useMobPower(mob, mob, recall, 40); mob.setCombatTarget(null); - if (mob.BehaviourType.ordinal() == Enum.MobBehaviourType.GuardCaptain.ordinal() && mob.isAlive()) { + if (mob.BehaviourType.equals(Enum.MobBehaviourType.GuardCaptain) && mob.isAlive()) { //guard captain pulls his minions home with him @@ -1246,7 +1247,7 @@ public class MobAI { if (mob.getGuild().getNation().equals(target.getGuild().getNation())) return false; - if (mob.BehaviourType.ordinal() == Enum.MobBehaviourType.GuardMinion.ordinal()) { + if (mob.BehaviourType.equals(Enum.MobBehaviourType.GuardMinion)) { if (((Mob) mob.npcOwner).building.getCity().cityOutlaws.contains(target.getObjectUUID()) == true) { return true; } @@ -1331,7 +1332,7 @@ public class MobAI { MovementUtilities.aiMove(mob, mob.destination, true); - if (mob.BehaviourType.ordinal() == Enum.MobBehaviourType.GuardCaptain.ordinal()) { + if (mob.BehaviourType.equals(Enum.MobBehaviourType.GuardCaptain)) { for (Entry minion : mob.siegeMinionMap.entrySet()) { //make sure mob is out of combat stance