diff --git a/src/net/jitse/npclib/api/NPC.java b/src/net/jitse/npclib/api/NPC.java index 8553e31..8a2bc23 100644 --- a/src/net/jitse/npclib/api/NPC.java +++ b/src/net/jitse/npclib/api/NPC.java @@ -150,7 +150,7 @@ public abstract class NPC { shown.remove(player.getUniqueId()); - if (player.getLocation().distance(location) <= autoHideDistance) { + if (player.getWorld() == location.getWorld() && player.getLocation().distance(location) <= autoHideDistance) { sendHidePackets(player); } else { if (autoHidden.contains(player.getUniqueId())) { diff --git a/src/net/jitse/npclib/listeners/PlayerListener.java b/src/net/jitse/npclib/listeners/PlayerListener.java index 48da8e2..9d2ae3a 100644 --- a/src/net/jitse/npclib/listeners/PlayerListener.java +++ b/src/net/jitse/npclib/listeners/PlayerListener.java @@ -30,8 +30,8 @@ public class PlayerListener implements Listener { npc.getAutoHidden().remove(player.getUniqueId()); } - if (npc.isActuallyShown(player)) { - npc.hide(player); + if (npc.getShown().contains(player.getUniqueId())) { + npc.getShown().remove(player.getUniqueId()); } } }