hunter.txt 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. event.load("custom_command");
  2. event.load("item_air_click");
  3. event.load("left_click_air");
  4. command.add("hunt");
  5. command.add("compass");
  6. prefix = "§hHunt";
  7. hunters = list.new();
  8. compass_type = "minecraft:compass";
  9. compass = read.item(compass_type);
  10. msg("dev", "§bHunter §rwurde geladen");
  11. @wait
  12. wait();
  13. //Wenn Event aus Hunter-Welt, dann wird er verarbeitet
  14. if(player == null) {
  15. goto("wait");
  16. }
  17. player_loc = entity.getLocation(player);
  18. world_name = world.getName(loc.getWorld(player_loc));
  19. if(isSurvWorldName(world_name)) {
  20. ignoreGoto(event);
  21. }
  22. goto("wait");
  23. @custom_command
  24. size = list.getSize(args);
  25. if(command == "hunt") {
  26. if(!perm.has(player, "isSnuviMaster")) {
  27. speakPrefix(player, prefix, "Keine Permissions");
  28. goto("wait");
  29. }
  30. if(size < 2) {
  31. speakPrefix(player, prefix, "/hunt <hunter> <runner>");
  32. goto("wait");
  33. }
  34. hunter_name = list.getIndex(args, 0);
  35. if(!checkIfEverOnline(hunter_name)) {
  36. speakPrefix(player, prefix, "§rDer angegebene Hunter war noch nie online");
  37. goto("wait");
  38. }
  39. if(!isOnline(hunter_name)) {
  40. speakPrefix(player, prefix, "§rDer angegebene Hunter ist nicht online");
  41. goto("wait");
  42. }
  43. runner_name = list.getIndex(args, 1);
  44. if(!checkIfEverOnline(runner_name)) {
  45. speakPrefix(player, prefix, "§rDer angegebene Runner war noch nie online");
  46. goto("wait");
  47. }
  48. if(!isOnline(runner_name)) {
  49. speakPrefix(player, prefix, "§rDer angegebene Runner ist nicht online");
  50. goto("wait");
  51. }
  52. hunter = read.player(hunter_name);
  53. if(player.getItemAmount(hunter, false, compass) == 0) {
  54. player.giveItem(hunter, compass);
  55. }
  56. list.add(hunters, player.getUuid(hunter_name));
  57. runner_uuid = player.getUuid(runner_name);
  58. goto("wait");
  59. }
  60. if(command == "compass") {
  61. uuid = player.getUuid(player);
  62. if(list.contains(hunters, uuid)) {
  63. if(player.getItemAmount(player, false, compass) == 0) {
  64. player.giveItem(player, compass);
  65. }
  66. }
  67. goto("wait");
  68. }
  69. goto("wait");
  70. @left_click_air
  71. @item_air_click
  72. if(item.getType(entity.getEquip(player, "hand")) == compass_type || item.getType(entity.getEquip(player, "offhand")) == compass_type) {
  73. uuid = player.getUuid(player);
  74. if(list.contains(hunters, uuid)) {
  75. if(isOnline(player.getName(runner_uuid))) {
  76. player.setCompass(player, entity.getLocation(player.get(runner_uuid)));
  77. speakPrefix(player, prefix, "Kompass neu gesetzt.");
  78. } else {
  79. speakPrefix(player, prefix, "Runner nicht online.");
  80. }
  81. } else {
  82. speakPrefix(player, prefix, "Du bist kein Hunter.");
  83. }
  84. }
  85. goto("wait");