Fork of Poseidon providing Bukkit #1060 to older Beta versions (b1.0-b1.7.3)
at develop 44 lines 1.4 kB view raw
1package org.bukkit.command.defaults; 2 3import org.bukkit.Bukkit; 4import org.bukkit.ChatColor; 5import org.bukkit.command.Command; 6import org.bukkit.command.CommandSender; 7import org.bukkit.entity.Player; 8 9public class TeleportCommand extends VanillaCommand { 10 public TeleportCommand() { 11 super("tp"); 12 this.description = "Teleports the given player to another player"; 13 this.usageMessage = "/tp <player> <target>"; 14 this.setPermission("bukkit.command.teleport"); 15 } 16 17 @Override 18 public boolean execute(CommandSender sender, String currentAlias, String[] args) { 19 if (!testPermission(sender)) return true; 20 if (args.length != 2) { 21 sender.sendMessage(ChatColor.RED + "Usage: " + usageMessage); 22 return false; 23 } 24 25 Player victim = Bukkit.getPlayerExact(args[0]); 26 Player target = Bukkit.getPlayerExact(args[1]); 27 28 if (victim == null) { 29 sender.sendMessage("Can't find user " + args[0] + ". No tp."); 30 } else if (target == null) { 31 sender.sendMessage("Can't find user " + args[1] + ". No tp."); 32 } else { 33 Command.broadcastCommandMessage(sender, "Teleporting " + victim.getName() + " to " + target.getName()); 34 victim.teleport(target); 35 } 36 37 return true; 38 } 39 40 @Override 41 public boolean matches(String input) { 42 return input.startsWith("tp "); 43 } 44}