Minecraft Plugin: Wie kann ich dafür sorgen, dass sich ein gespawnter Villager nicht mehr bewegt und ich beim Spawnen einen <Random> Namen wählen kann?

Hey liebe Programmiergemeinde,

ich bin gerade dabei, für meinen Server ein Plugin zu programmieren, welches einen Villager, der sich nicht bewegt, spawnt und diesem einen Displayname gibt.

Nun zu meiner Frage:

Ich bin soweit, dass der Villager gespawnt wird und der Displayname über seinen Kopf erscheint (diesen Namen soll man am Ende beim Spawnen festlegen können).
Der Villager wird gespawnt und immer wenn er sich bewegt, durch einen Scheduler wieder an seinen "Spawn-Point" zurückgesetzt. Jedoch nickt der Villager immer und ich weiß nicht, wie ich das ausschalten kann. (Es soll am Ende wie auf Mineplex oder Gomme sein).

Weiß jemand, wie ich es hinbekomme, dass der Villager sich gar nicht mehr bewegt und ich beim Spawnen einen <Random> Namen wählen kann?

Code:

@Override
public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
  if (sender instanceof Player) {
    Player p = (Player)sender;

    if (p.isOp()) {
      final Villager s = (Villager) p.getWorld().spawnEntity(p.getLocation(), EntityType.VILLAGER);
      s.setCustomName("§5Test");
      s.setCustomNameVisible(true);
      final Location loc = s.getLocation();

      Bukkit.getScheduler().scheduleSyncRepeatingTask(main.getInstance(), new Runnable() {
        @Override
        public void run() {
          s.teleport(loc);
        }
      }, 1L, 1L);
    }
  }

  return false;
}
Computer, programmieren, Minecraft, villager
Weitere Inhalte können nur Nutzer sehen, die bei uns eingeloggt sind.