Fork of Poseidon providing Bukkit #1060 to older Beta versions (b1.0-b1.7.3)
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}