diff --git a/src/engine/mobileAI/MobAI.java b/src/engine/mobileAI/MobAI.java
index 174f9d62..625be08a 100644
--- a/src/engine/mobileAI/MobAI.java
+++ b/src/engine/mobileAI/MobAI.java
@@ -884,6 +884,8 @@ public class MobAI {
                             return;
                         }
                     }
+                aiAgent.despawn();
+                return;
                 }
 
             if(Mob.discDroppers.contains(aiAgent))
@@ -892,7 +894,7 @@ public class MobAI {
             if(aiAgent.StrongholdGuardian || aiAgent.StrongholdEpic || aiAgent.StrongholdCommander)
                 return;
 
-            if (System.currentTimeMillis() > (aiAgent.deathTime + (aiAgent.spawnTime * 1000L))) {
+            if (aiAgent.despawned && System.currentTimeMillis() > (aiAgent.deathTime + (aiAgent.spawnTime * 1000L))) {
                 if (!Zone.respawnQue.contains(aiAgent)) {
                     Zone.respawnQue.add(aiAgent);
                 }
diff --git a/src/engine/objects/Mob.java b/src/engine/objects/Mob.java
index 240c3f3f..558660b9 100644
--- a/src/engine/objects/Mob.java
+++ b/src/engine/objects/Mob.java
@@ -1442,6 +1442,8 @@ public class Mob extends AbstractIntelligenceAgent {
             loadInventory();
 
         this.updateLocation();
+        this.stopPatrolTime = 0;
+        this.lastPatrolPointIndex = 0;
     }
 
     public void despawn() {