package me.km.commands; import me.km.api.Utils; import me.km.api.GlobalText; import me.km.api.Module; import me.km.api.ModuleCommand; import me.km.exception.PlayerNotFoundException; import me.km.permissions.Permissions; import net.minecraft.command.ICommandSender; import net.minecraft.entity.player.EntityPlayer; public class CommandTeleport extends ModuleCommand { public CommandTeleport(Module m) { super("tp", m); super.setDescription("Teleportiert einen Spieler zu einem anderen"); super.setUsage("/tp [player] "); super.setPermission(Permissions.TELEPORT); super.addAlias("teleport"); } @Override public boolean execute(ICommandSender cs, String[] arg) { if(arg.length == 0) { return false; } EntityPlayer affectedPlayer; try { affectedPlayer = Utils.getPlayerByName(arg[0]); } catch(PlayerNotFoundException ex) { this.getModule().send(cs, GlobalText.cantFindPlayer(arg[0])); return true; } EntityPlayer affectedPlayer2; try { affectedPlayer2 = Utils.getPlayerByName(arg[1]); } catch(PlayerNotFoundException ex) { this.getModule().send(cs, GlobalText.cantFindPlayer(arg[1])); return true; } catch(IndexOutOfBoundsException ex) { if(!(cs instanceof EntityPlayer)) { this.getModule().send(cs, GlobalText.missingParameter()); return true; } Utils.teleportEntity((EntityPlayer) cs, affectedPlayer); this.getModule().send(cs, "Du wurdest zu " + affectedPlayer.getName() + " teleportiert."); if(!((EntityPlayer) cs).isSpectator()) { this.getModule().send(affectedPlayer, cs.getName() + " hat sich zu dir teleportiert."); } return true; } Utils.teleportEntity(affectedPlayer, affectedPlayer2); this.getModule().send(affectedPlayer, "Du wurdest zu " + affectedPlayer2.getName() + " teleportiert."); if(!affectedPlayer.isSpectator()) { this.getModule().send(affectedPlayer2, affectedPlayer.getName() + " hat sich zu dir teleportiert."); } return true; } }