From c5e6205801948faf5ff3ea8b89291ea8c0b2e463 Mon Sep 17 00:00:00 2001 From: FatBoy-DOTC Date: Sat, 15 Feb 2025 07:52:39 -0600 Subject: [PATCH] invis mob solution --- src/engine/mobileAI/MobAI.java | 8 ++++++++ src/engine/mobileAI/Threads/MobRespawnThread.java | 9 ++++----- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/src/engine/mobileAI/MobAI.java b/src/engine/mobileAI/MobAI.java index fb99aa09..d5f01e7d 100644 --- a/src/engine/mobileAI/MobAI.java +++ b/src/engine/mobileAI/MobAI.java @@ -9,6 +9,7 @@ package engine.mobileAI; import engine.Enum; +import engine.InterestManagement.InterestManager; import engine.InterestManagement.WorldGrid; import engine.gameManager.*; import engine.math.Vector3f; @@ -161,6 +162,12 @@ public class MobAI { if (target.getPet().getCombatTarget() == null && target.getPet().assist == true) target.getPet().setCombatTarget(mob); + try{ + InterestManager.forceLoad(mob); + }catch(Exception e){ + + } + } catch (Exception e) { Logger.info(mob.getObjectUUID() + " " + mob.getName() + " Failed At: AttackPlayer" + " " + e.getMessage()); } @@ -1221,6 +1228,7 @@ public class MobAI { if (!mob.BehaviourType.isWimpy && mob.getCombatTarget() != null) CheckForAttack(mob); + } catch (Exception e) { Logger.info(mob.getObjectUUID() + " " + mob.getName() + " Failed At: DefaultLogic" + " " + e.getMessage()); } diff --git a/src/engine/mobileAI/Threads/MobRespawnThread.java b/src/engine/mobileAI/Threads/MobRespawnThread.java index 7bc3a9d6..717c5c2c 100644 --- a/src/engine/mobileAI/Threads/MobRespawnThread.java +++ b/src/engine/mobileAI/Threads/MobRespawnThread.java @@ -43,14 +43,13 @@ public class MobRespawnThread implements Runnable { if (zones != null) { for (Zone zone : zones) { synchronized (zone) { // Optional: Synchronize on zone - if (!zone.respawnQue.isEmpty() && - zone.lastRespawn + RESPAWN_INTERVAL < System.currentTimeMillis()) { + if (!Zone.respawnQue.isEmpty() && Zone.lastRespawn + RESPAWN_INTERVAL < System.currentTimeMillis()) { - Mob respawner = zone.respawnQue.iterator().next(); + Mob respawner = Zone.respawnQue.iterator().next(); if (respawner != null) { respawner.respawn(); - zone.respawnQue.remove(respawner); - zone.lastRespawn = System.currentTimeMillis(); + Zone.respawnQue.remove(respawner); + Zone.lastRespawn = System.currentTimeMillis(); Thread.sleep(100); } }