nitan Posted August 16, 2013 Share Posted August 16, 2013 Hallo die eingabe ist /horse tp <uid> das pferd wird zu spieler teleportiert wenn dich dieser auf der gleichen welt befindet doch wenn der spieler auf einer anderen welt ist wird das pfert zu der location von spieler teleportier doch auf der welt wo das pfert ist und nicht da wo der spieler ist. package me.nitan.basic; import me.nitan.basic.HorseModifier.HorseType; import me.nitan.basic.HorseModifier.HorseVariant; import org.bukkit.Bukkit; import org.bukkit.Location; import org.bukkit.command.Command; import org.bukkit.command.CommandExecutor; import org.bukkit.command.CommandSender; import org.bukkit.entity.Entity; import org.bukkit.entity.Horse; import org.bukkit.entity.Player; public class cmdHorse implements CommandExecutor{ private nexusBasic plugin; public cmdHorse(nexusBasic plugin){ this.plugin = plugin; } @Override public boolean onCommand(CommandSender Player, Command cmd, String label, String[] args) { if(Player instanceof Player){ Player p = (Player) Player; if(args[0].equalsIgnoreCase("tp")){ if(getEntity(args[1])==null){ System.out.println("nicht gefunden"); }else{ Location l = new Location(p.getWorld(), p.getLocation().getX(), p.getLocation().getY(), p.getLocation().getZ()); Horse h = (Horse) getEntity(args[1]); h.teleport(l); System.out.println("tele"); } } } return true; } public static Entity getEntity(String string) { for (org.bukkit.entity.Entity entity : Bukkit.getWorld("gswelt").getEntities()) { if (entity.getUniqueId().toString().equals(string)) { return entity; } } return null; } } Link to comment Share on other sites More sharing options...
Arkanus Posted August 16, 2013 Share Posted August 16, 2013 Ich weiß nicht ganz was du meinst... Könntest du das bitte besser formulieren und Satzzeichen einfügen? Link to comment Share on other sites More sharing options...
nitan Posted August 16, 2013 Author Share Posted August 16, 2013 folgendes h.teleport(l); teleportiert ein Pferd an die location dabei übergebe ich X;Y;Z;Welt das macht er auch aber nur in der gleichen Welt wo das Pferd auch ist. sagen wir mal das Pferd ist in der Grundstückwelt und ich möchte es in die Farmwelt teleportieren dann teleporiert es das Pferd an die Koordinaten die ich angegeben hab doch in die Grundstückwelt das verstehe ich aber nicht ich gib bei der location doch die Farmwelt an... Link to comment Share on other sites More sharing options...
Arkanus Posted August 16, 2013 Share Posted August 16, 2013 Schon besser Ersteinmal: Location l = new Location(p.getWorld(), p.getLocation().getX(), p.getLocation().getY(), p.getLocation().getZ()); Warum legst du denn hier eine neue Location an? Es reicht doch, wenn du einfach das Pferd zum Spieler teleportierst: h.teleport(p.getLocation); Sonst müsste es eigentlich gehen Anmerkung: Natürlich nur wenn das Pferd in der "gswelt" ist. Link to comment Share on other sites More sharing options...
nitan Posted August 17, 2013 Author Share Posted August 17, 2013 Hallo ich lege eine neue variable an da dieser Code nur ein Ausschnitt von meinen Code ist also macht es hier nicht Grade viel Sinn. doch selbst mit : h.teleport(p.getLocation); Teleportiert er das Pferd nicht weltübergreifend das Pferd wird immer an die richtige Koordinate teleportiert aber nur auf der Welt wo sich das Pferd befindet Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now