Advertisement
Guest User

Untitled

a guest
Feb 25th, 2018
61
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.33 KB | None | 0 0
  1. package Commands;
  2.  
  3. import java.util.HashMap;
  4.  
  5. import org.bukkit.Bukkit;
  6. import org.bukkit.command.Command;
  7. import org.bukkit.command.CommandExecutor;
  8. import org.bukkit.command.CommandSender;
  9. import org.bukkit.entity.Player;
  10.  
  11. import Main.System;
  12. import net.md_5.bungee.api.chat.ClickEvent;
  13. import net.md_5.bungee.api.chat.ComponentBuilder;
  14. import net.md_5.bungee.api.chat.HoverEvent;
  15. import net.md_5.bungee.api.chat.TextComponent;
  16.  
  17. public class Tpa implements CommandExecutor {
  18.  
  19. public static HashMap<Player, Player> TPA = new HashMap<>();
  20.  
  21. @Override
  22. public boolean onCommand(CommandSender sender, Command arg1, String arg2, String[] args) {
  23. Player p = (Player) sender;
  24. if(args.length == 0){
  25. p.sendMessage(System.Prefix + "/tpa <Name>");
  26. return false;
  27. } else {
  28. String arg = args[0];
  29. if(Bukkit.getPlayerExact(arg) == null){
  30. p.sendMessage(System.Prefix + "§cDieser Spieler ist nicht online§8.");
  31. return false;
  32. }
  33. if(args[0] != p.getName()) {
  34. Player target = Bukkit.getPlayerExact(arg);
  35. if(TPA.containsKey(p)){
  36. TPA.remove(p);
  37. }
  38. TPA.put(target, p);
  39. p.sendMessage(System.Prefix + "Du hast " + target.getDisplayName() + " eine Anfrage gesendet§8.");
  40. target.sendMessage(System.Prefix + p.getDisplayName() + " will sich zu dir telepotieren§8.");
  41. TextComponent message = new TextComponent(System.Prefix + "Wenn du diese Anfrage annehmen willst klicke §8[§aACCEPT§8] §8.");
  42. message.setClickEvent( new ClickEvent( ClickEvent.Action.RUN_COMMAND, "/tpaccept" ) );
  43. message.setHoverEvent( new HoverEvent( HoverEvent.Action.SHOW_TEXT, new ComponentBuilder( "§aAkzeptieren").create()));
  44. target.spigot().sendMessage(message);
  45. Bukkit.getScheduler().scheduleSyncDelayedTask(System.system, new Runnable(){
  46. public void run(){
  47. if (TPA.get(target) != null){
  48. p.sendMessage(System.Prefix + "Die Anfrage von " + target.getDisplayName() + " §7ist ausgelaufen§8.");
  49. target.sendMessage(System.Prefix + "Die Anfrage von " + p.getDisplayName() + "§7 ist ausgelaufen§8.");
  50. TPA.remove(target);
  51. }
  52. }
  53. }, 60*20);
  54. } else {
  55. p.sendMessage(System.Prefix + "Du kannst dir nicht selber eine Anfrage schicken§8.")
  56. }
  57. }
  58. return false;
  59. }
  60.  
  61. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement