Bukkit Entity/Tier nach bestimmter Distanz zum Spieler teleportieren lassen

3 Antworten

du benutzt ja auch .distanceSquared() das heißt die Distanz hoch 2 was bei 4^2 = 16, und bei 5^2 = 25 wäre. Das heißt die Entfernung ab der das Huhn teleportiert wird liegt zwischen 4 und 5. Du musst nur .distance() nutzen.

Du könntest es ganz einfach so machen:

Player p;(Hier deine Spielerinstanz einfügen)

Chicken chicken;(Hier deine Tierinstanz einfügen)

ArrayList entities = new ArrayList();

for(Entity ent : p.getNearbyEntities(10, 10, 10)) {

entities.add(ent);

}

if(!entities.contains(a)) {

a.teleport(p.getLocation());

}

Diese Methode 'p.getNearbyEntities(10,10,10);' gibt dir alle Entities, die im Umfeld von x10, y10 und z10 Blöcken entfernt, sind wieder.

Dieser Codeabschnitt müsste so passen, du musst nur oben die Instanz vom Chicken anpassen. Wenn du zum Beispiel nach einem Spieler suchst, musst du dort hinschreiben 'Player target = Bukkit.getPlayer("NAME DER ZIELPERSON");'. Wenn du aber nach einem LivingEntity oder einem Entity suchst, musst du wissen woher du die Instanz davon bekommst.

Nicht vergessen oben die Spielerinstanz(Player p;) noch für dich anzupassen.

Ich hoffe ich konnte dir helfen auch wenn es schon etwas länger her ist ^^ :)

in minecraft ist 1 = 0.25 also solltest du eine veriable erstellen also einfach so: i =80

und danach das 20 wegmachen und i reinpacken