CommandTeleportAccept.java 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. package me.km.commands;
  2. import me.km.api.GlobalText;
  3. import me.km.api.Module;
  4. import me.km.api.ModuleCommand;
  5. import java.util.HashMap;
  6. import java.util.UUID;
  7. import me.km.KajetansMod;
  8. import me.km.api.Utils;
  9. import me.km.permissions.Permissions;
  10. import net.minecraft.command.ICommandSender;
  11. import net.minecraft.entity.player.EntityPlayer;
  12. public class CommandTeleportAccept extends ModuleCommand
  13. {
  14. public HashMap<UUID, UUID> tpaccept;
  15. public CommandTeleportAccept(Module m)
  16. {
  17. super("teleportaccept", m);
  18. super.setDescription("Akzeptiert eine Teleportanfrage");
  19. super.setUsage("/teleportaccept");
  20. super.setPermission(Permissions.TELEPORT_ACCEPT);
  21. super.addAlias("tpa");
  22. tpaccept = new HashMap<>();
  23. }
  24. @Override
  25. public boolean execute(ICommandSender cs, String[] arg)
  26. {
  27. if(!(cs instanceof EntityPlayer))
  28. {
  29. this.getModule().send(cs, GlobalText.onlyPlayer());
  30. return true;
  31. }
  32. EntityPlayer p = (EntityPlayer) cs;
  33. if(!tpaccept.containsKey(p.getUniqueID()))
  34. {
  35. this.getModule().send(cs, "Du hast keine ausstehenden Teleportanfragen.");
  36. return true;
  37. }
  38. EntityPlayer affectedPlayer = KajetansMod.server.getPlayerList().getPlayerByUUID(tpaccept.get(p.getUniqueID()));
  39. if(affectedPlayer == null)
  40. {
  41. this.getModule().send(cs, "Der Spieler ist nicht mehr online.");
  42. tpaccept.remove(p.getUniqueID());
  43. return true;
  44. }
  45. tpaccept.remove(p.getUniqueID());
  46. Utils.teleportEntity(affectedPlayer, p);
  47. this.getModule().send(affectedPlayer, "Du wurdest zu " + p.getName() + " teleportiert.");
  48. this.getModule().send(p, affectedPlayer.getName() + " hat sich zu dir teleportiert.");
  49. return true;
  50. }
  51. }