Skip to content

Instantly share code, notes, and snippets.

@TheMolkaPL
Created January 12, 2014 13:20
Show Gist options
  • Save TheMolkaPL/8384523 to your computer and use it in GitHub Desktop.
Save TheMolkaPL/8384523 to your computer and use it in GitHub Desktop.
Teleport a player (to player)
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
public class Teleport implements CommandExecutor {
@Override
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
if(command.getName().equalsIgnoreCase("teleport") || command.getName().equalsIgnoreCase("tp")) {
if(args.length == 0) {
sender.sendMessage(ChatColor.RED + "Podaj argument/y!");
sender.sendMessage(ChatColor.RED + "Uzycie: /tp <gracz> [do]");
return true;
}
if(args.length == 1) {
if(!sender.hasPermission("teleport.teleport")) {
sender.sendMessage(ChatColor.RED + "Brak odpowiednich uprawnien!");
return true;
}
if(sender instanceof Player) {
Player target = Bukkit.getPlayer(args[0]);
if(!target.isOnline()) {
sender.sendMessage(ChatColor.RED + "Gracz " + target.getName() + " nie jest online!");
return true;
}
((Player) sender).teleport(target.getLocation());
sender.sendMessage(ChatColor.GREEN + "Zostales/as teleportowany/a do gracza " + target.getName());
target.sendMessage(ChatColor.GRAY + sender.getName() + " teleportowal sie do Ciebie");
return true;
} else {
sender.sendMessage(ChatColor.RED + "Nie mozesz wykonac tej komendy z poziomu konsoli");
return true;
}
}
if(args.length == 2) {
Player player = Bukkit.getPlayer(args[0]);
Player to = Bukkit.getPlayer(args[1]);
if(!sender.hasPermission("teleport.other")) {
sender.sendMessage(ChatColor.RED + "Brak odpowiednich uprawnien!");
return true;
}
if(!player.isOnline()) {
sender.sendMessage(ChatColor.RED + "Gracz " + player.getName() + " nie jest online!");
return true;
}
if(!to.isOnline()) {
sender.sendMessage(ChatColor.RED + "Gracz " + to.getName() + " nie jest online!");
return true;
}
player.teleport(to.getLocation());
sender.sendMessage(ChatColor.GREEN + "Zostales/as teleportowany/a do gracza " + to.getName() + " przez " + sender.getName());
to.sendMessage(ChatColor.GRAY + sender.getName() + " teleportowal do Ciebie " + player.getName());
return true;
} else {
sender.sendMessage(ChatColor.RED + "Zbyt duzo argumentów!");
sender.sendMessage(ChatColor.RED + "Uzycie: /tp <gracz> [do]");
return true;
}
}
return false;
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment