|  |  |  | @ -506,13 +506,8 @@ public class MobileFSM {@@ -506,13 +506,8 @@ public class MobileFSM { | 
			
		
	
		
			
				
					|  |  |  |  |                 CheckForRespawn(mob); | 
			
		
	
		
			
				
					|  |  |  |  |                 return; | 
			
		
	
		
			
				
					|  |  |  |  |             } | 
			
		
	
		
			
				
					|  |  |  |  |             if (mob.getLoc().distanceSquared2D(mob.npcOwner.getLoc()) > sqr(2000)) { | 
			
		
	
		
			
				
					|  |  |  |  |                 MovementManager.translocate(mob,((Mob)mob.npcOwner).building.getLoc(),null); | 
			
		
	
		
			
				
					|  |  |  |  |                 mob.setAggroTargetID(0); | 
			
		
	
		
			
				
					|  |  |  |  |                 mob.setCombatTarget(null); | 
			
		
	
		
			
				
					|  |  |  |  |             } | 
			
		
	
		
			
				
					|  |  |  |  |             CheckToSendMobHome(mob); | 
			
		
	
		
			
				
					|  |  |  |  |             if(mob.npcOwner.isAlive() == false){ | 
			
		
	
		
			
				
					|  |  |  |  |                 CheckToSendMobHome(mob); | 
			
		
	
		
			
				
					|  |  |  |  |                 CheckForPlayerGuardAggro(mob); | 
			
		
	
		
			
				
					|  |  |  |  |                 CheckMobMovement(mob); | 
			
		
	
		
			
				
					|  |  |  |  |                 if(mob.getCombatTarget() != null){ | 
			
		
	
	
		
			
				
					|  |  |  | @ -599,7 +594,6 @@ public class MobileFSM {@@ -599,7 +594,6 @@ public class MobileFSM { | 
			
		
	
		
			
				
					|  |  |  |  |         } | 
			
		
	
		
			
				
					|  |  |  |  |         mob.updateLocation(); | 
			
		
	
		
			
				
					|  |  |  |  |         if (mob.isPet() == false && mob.isSummonedPet() == false && mob.isNecroPet() == false) { | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |             if (mob.getCombatTarget() == null) { | 
			
		
	
		
			
				
					|  |  |  |  |                 patrol(mob); | 
			
		
	
		
			
				
					|  |  |  |  |             } else { | 
			
		
	
	
		
			
				
					|  |  |  | @ -673,6 +667,12 @@ public class MobileFSM {@@ -673,6 +667,12 @@ public class MobileFSM { | 
			
		
	
		
			
				
					|  |  |  |  |         mobAttack(mob); | 
			
		
	
		
			
				
					|  |  |  |  |     } | 
			
		
	
		
			
				
					|  |  |  |  |     private static void CheckToSendMobHome(Mob mob) { | 
			
		
	
		
			
				
					|  |  |  |  |         if(mob.isPlayerGuard() && ZoneManager.getCityAtLocation(mob.getLoc()).equals(mob.getGuild().getOwnedCity()) == false){ | 
			
		
	
		
			
				
					|  |  |  |  |                 PowersBase recall = PowersManager.getPowerByToken(-1994153779); | 
			
		
	
		
			
				
					|  |  |  |  |                 PowersManager.useMobPower(mob, mob, recall, 40); | 
			
		
	
		
			
				
					|  |  |  |  |                 mob.setAggroTargetID(0); | 
			
		
	
		
			
				
					|  |  |  |  |                 mob.setCombatTarget(null); | 
			
		
	
		
			
				
					|  |  |  |  |         } | 
			
		
	
		
			
				
					|  |  |  |  |         if (mob.getLoc().distanceSquared2D(mob.getBindLoc()) > sqr(2000)) { | 
			
		
	
		
			
				
					|  |  |  |  |             PowersBase recall = PowersManager.getPowerByToken(-1994153779); | 
			
		
	
		
			
				
					|  |  |  |  |             PowersManager.useMobPower(mob, mob, recall, 40); | 
			
		
	
	
		
			
				
					|  |  |  | 
 |