diff --git a/main/src/main/java/net/citizensnpcs/EventListen.java b/main/src/main/java/net/citizensnpcs/EventListen.java index 7df695b52..67ba504c9 100644 --- a/main/src/main/java/net/citizensnpcs/EventListen.java +++ b/main/src/main/java/net/citizensnpcs/EventListen.java @@ -634,7 +634,7 @@ public class EventListen implements Listener { } return false; } - return npc.spawn(spawn); + return npc.spawn(spawn, SpawnReason.CHUNK_LOAD); } private void storeForRespawn(NPC npc) { diff --git a/main/src/main/java/net/citizensnpcs/commands/NPCCommands.java b/main/src/main/java/net/citizensnpcs/commands/NPCCommands.java index e45fd2851..726d97985 100644 --- a/main/src/main/java/net/citizensnpcs/commands/NPCCommands.java +++ b/main/src/main/java/net/citizensnpcs/commands/NPCCommands.java @@ -954,7 +954,7 @@ public class NPCCommands { min = 1, max = 1, flags = "c", - permission = "citizens.npc.controllable") + permission = "citizens.npc.mount") public void mount(CommandContext args, CommandSender sender, NPC npc) throws CommandException { if (args.hasValueFlag("onnpc")) { NPC mount; diff --git a/main/src/main/java/net/citizensnpcs/npc/CitizensNPC.java b/main/src/main/java/net/citizensnpcs/npc/CitizensNPC.java index 962c81bac..d1bf76f94 100644 --- a/main/src/main/java/net/citizensnpcs/npc/CitizensNPC.java +++ b/main/src/main/java/net/citizensnpcs/npc/CitizensNPC.java @@ -226,6 +226,10 @@ public class CitizensNPC extends AbstractNPC { at = at.clone(); + if (reason == SpawnReason.CHUNK_LOAD) { + at.getChunk().load(); + } + getTrait(CurrentLocation.class).setLocation(at); entityController.spawn(at, this);