|  |  |  | @ -502,29 +502,12 @@ public class MobileFSM {@@ -502,29 +502,12 @@ public class MobileFSM { | 
			
		
	
		
			
				
					|  |  |  |  |         } | 
			
		
	
		
			
				
					|  |  |  |  |         if(mob.BehaviourType.ordinal() == Enum.MobBehaviourType.GuardMinion.ordinal()){ | 
			
		
	
		
			
				
					|  |  |  |  |             //this is a player slotted guard minion
 | 
			
		
	
		
			
				
					|  |  |  |  |             if(mob.despawned){ | 
			
		
	
		
			
				
					|  |  |  |  |                 if(System.currentTimeMillis() > mob.deathTime + (mob.spawnTime * 1000)){ | 
			
		
	
		
			
				
					|  |  |  |  |                     if(mob.getEquipmentSetID() != ((Mob)mob.npcOwner).getEquipmentSetID()){ | 
			
		
	
		
			
				
					|  |  |  |  |                         mob.equipmentSetID = ((Mob)mob.npcOwner).getEquipmentSetID(); | 
			
		
	
		
			
				
					|  |  |  |  |                         mob.runAfterLoad(); | 
			
		
	
		
			
				
					|  |  |  |  |                     } | 
			
		
	
		
			
				
					|  |  |  |  |                     mob.respawn(); | 
			
		
	
		
			
				
					|  |  |  |  |                 } | 
			
		
	
		
			
				
					|  |  |  |  |                 return; | 
			
		
	
		
			
				
					|  |  |  |  |             } | 
			
		
	
		
			
				
					|  |  |  |  |             if(mob.isAlive() == false){ | 
			
		
	
		
			
				
					|  |  |  |  |                 CheckForRespawn(mob); | 
			
		
	
		
			
				
					|  |  |  |  |                 return; | 
			
		
	
		
			
				
					|  |  |  |  |             } | 
			
		
	
		
			
				
					|  |  |  |  |             CheckToSendMobHome(mob); | 
			
		
	
		
			
				
					|  |  |  |  |             if(mob.npcOwner.isAlive() == false){ | 
			
		
	
		
			
				
					|  |  |  |  |                 CheckForPlayerGuardAggro(mob); | 
			
		
	
		
			
				
					|  |  |  |  |                 return; | 
			
		
	
		
			
				
					|  |  |  |  |             } | 
			
		
	
		
			
				
					|  |  |  |  |             CheckMobMovement(mob); | 
			
		
	
		
			
				
					|  |  |  |  |             if(mob.getCombatTarget() != null){ | 
			
		
	
		
			
				
					|  |  |  |  |                 CheckForAttack(mob); | 
			
		
	
		
			
				
					|  |  |  |  |             } | 
			
		
	
		
			
				
					|  |  |  |  |             GuardMinionLogic(mob); | 
			
		
	
		
			
				
					|  |  |  |  |             return; | 
			
		
	
		
			
				
					|  |  |  |  |         } | 
			
		
	
		
			
				
					|  |  |  |  |         if(mob.BehaviourType.ordinal() == Enum.MobBehaviourType.GuardWallArcher.ordinal()){ | 
			
		
	
		
			
				
					|  |  |  |  |             //this is a player slotted guard minion
 | 
			
		
	
		
			
				
					|  |  |  |  |             GuardWallArcherLogic(mob); | 
			
		
	
		
			
				
					|  |  |  |  |             return; | 
			
		
	
		
			
				
					|  |  |  |  |         } | 
			
		
	
		
			
				
					|  |  |  |  |         if (mob.isPet() == false && mob.isSummonedPet() == false && mob.isNecroPet() == false) { | 
			
		
	
	
		
			
				
					|  |  |  | @ -783,6 +766,44 @@ public class MobileFSM {@@ -783,6 +766,44 @@ public class MobileFSM { | 
			
		
	
		
			
				
					|  |  |  |  |         } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |     } | 
			
		
	
		
			
				
					|  |  |  |  |     public static void GuardMinionLogic(Mob mob){ | 
			
		
	
		
			
				
					|  |  |  |  |         if(mob.despawned){ | 
			
		
	
		
			
				
					|  |  |  |  |             if(System.currentTimeMillis() > mob.deathTime + (mob.spawnTime * 1000)){ | 
			
		
	
		
			
				
					|  |  |  |  |                 if(mob.getEquipmentSetID() != ((Mob)mob.npcOwner).getEquipmentSetID()){ | 
			
		
	
		
			
				
					|  |  |  |  |                     mob.equipmentSetID = ((Mob)mob.npcOwner).getEquipmentSetID(); | 
			
		
	
		
			
				
					|  |  |  |  |                     mob.runAfterLoad(); | 
			
		
	
		
			
				
					|  |  |  |  |                 } | 
			
		
	
		
			
				
					|  |  |  |  |                 mob.respawn(); | 
			
		
	
		
			
				
					|  |  |  |  |             } | 
			
		
	
		
			
				
					|  |  |  |  |             return; | 
			
		
	
		
			
				
					|  |  |  |  |         } | 
			
		
	
		
			
				
					|  |  |  |  |         if(mob.isAlive() == false){ | 
			
		
	
		
			
				
					|  |  |  |  |             CheckForRespawn(mob); | 
			
		
	
		
			
				
					|  |  |  |  |             return; | 
			
		
	
		
			
				
					|  |  |  |  |         } | 
			
		
	
		
			
				
					|  |  |  |  |         CheckToSendMobHome(mob); | 
			
		
	
		
			
				
					|  |  |  |  |         if(mob.npcOwner.isAlive() == false){ | 
			
		
	
		
			
				
					|  |  |  |  |             CheckForPlayerGuardAggro(mob); | 
			
		
	
		
			
				
					|  |  |  |  |             return; | 
			
		
	
		
			
				
					|  |  |  |  |         } | 
			
		
	
		
			
				
					|  |  |  |  |         CheckMobMovement(mob); | 
			
		
	
		
			
				
					|  |  |  |  |         if(mob.getCombatTarget() != null){ | 
			
		
	
		
			
				
					|  |  |  |  |             CheckForAttack(mob); | 
			
		
	
		
			
				
					|  |  |  |  |         } | 
			
		
	
		
			
				
					|  |  |  |  |     } | 
			
		
	
		
			
				
					|  |  |  |  |     public static void GuardWallArcherLogic(Mob mob){ | 
			
		
	
		
			
				
					|  |  |  |  |         if(mob.isAlive() == false){ | 
			
		
	
		
			
				
					|  |  |  |  |             CheckForRespawn(mob); | 
			
		
	
		
			
				
					|  |  |  |  |             return; | 
			
		
	
		
			
				
					|  |  |  |  |         } | 
			
		
	
		
			
				
					|  |  |  |  |         if(mob.npcOwner.isAlive() == false){ | 
			
		
	
		
			
				
					|  |  |  |  |             CheckForPlayerGuardAggro(mob); | 
			
		
	
		
			
				
					|  |  |  |  |             return; | 
			
		
	
		
			
				
					|  |  |  |  |         } | 
			
		
	
		
			
				
					|  |  |  |  |         if(mob.getCombatTarget() != null){ | 
			
		
	
		
			
				
					|  |  |  |  |             CheckForAttack(mob); | 
			
		
	
		
			
				
					|  |  |  |  |         } | 
			
		
	
		
			
				
					|  |  |  |  |     } | 
			
		
	
		
			
				
					|  |  |  |  |     public static void CheckForPlayerGuardAggro(Mob mob) { | 
			
		
	
		
			
				
					|  |  |  |  |         //looks for and sets mobs combatTarget
 | 
			
		
	
		
			
				
					|  |  |  |  |         if (!mob.isAlive()) { | 
			
		
	
	
		
			
				
					|  |  |  | 
 |