Advertisement
Guest User

Untitled

a guest
Jun 23rd, 2017
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.50 KB | None | 0 0
  1. package me.joaoseidel.candyHelper;
  2.  
  3. import java.util.ArrayList;
  4. import java.util.HashMap;
  5. import java.util.Iterator;
  6. import java.util.Map;
  7. import java.util.logging.Logger;
  8. import org.bukkit.Bukkit;
  9. import org.bukkit.ChatColor;
  10. import org.bukkit.Server;
  11. import org.bukkit.command.Command;
  12. import org.bukkit.command.CommandSender;
  13. import org.bukkit.entity.Player;
  14. import org.bukkit.event.EventHandler;
  15. import org.bukkit.event.Listener;
  16. import org.bukkit.event.player.PlayerJoinEvent;
  17. import org.bukkit.event.player.PlayerQuitEvent;
  18. import org.bukkit.plugin.PluginDescriptionFile;
  19. import org.bukkit.plugin.PluginManager;
  20. import org.bukkit.plugin.java.JavaPlugin;
  21. import org.bukkit.scheduler.BukkitScheduler;
  22.  
  23. public class Main
  24. extends JavaPlugin
  25. implements Listener
  26. {
  27. public ArrayList<String> atendendoOn = new ArrayList();
  28. public ArrayList<String> pediuAjuda = new ArrayList();
  29. public ArrayList<String> spyHelper = new ArrayList();
  30. public int lista;
  31. Map<String, String> ajuda = new HashMap();
  32.  
  33. public void onEnable()
  34. {
  35. Bukkit.getServer().getLogger().info("[CandyHelper] Loading...");
  36. getServer().getPluginManager().registerEvents(this, this);
  37. Bukkit.getServer().getLogger().info("[CandyHelper] Loaded on v" + getDescription().getVersion() + "!");
  38. }
  39.  
  40. public void onDisable()
  41. {
  42. Bukkit.getServer().getLogger().info("[CandyHelper] Unloading...");
  43. Bukkit.getServer().getLogger().info("[CandyHelper] Plugin unloaded v" + getDescription().getVersion() + "!");
  44. }
  45.  
  46. public void sendMsg(Player p, String string)
  47. {
  48. p.sendMessage(ChatColor.translateAlternateColorCodes('&', "&7[&b&lCandy&3Helper&7] &r" + string));
  49. }
  50.  
  51. public void sendBMsg(String string)
  52. {
  53. Bukkit.broadcastMessage(ChatColor.translateAlternateColorCodes('&', "&7[&b&lCandy&3Helper&7] &r" + string));
  54. }
  55.  
  56. public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args)
  57. {
  58. if (!(sender instanceof Player)) {
  59. return true;
  60. }
  61. final Player p = (Player)sender;
  62. if (cmd.getName().equalsIgnoreCase("atender"))
  63. {
  64. if (!p.hasPermission("candyhelper.atender"))
  65. {
  66. sendMsg(p, "&cVoc� n�o tem permiss�o para executar este comando!");
  67. return true;
  68. }
  69. if (!this.atendendoOn.contains(p.getName()))
  70. {
  71. this.atendendoOn.add(p.getName());
  72.  
  73. Bukkit.broadcastMessage("");
  74. sendBMsg("&bO Helper " + p.getName() + " est� atendendo!");
  75. sendBMsg("&3Use: /suporte <mensagem>");
  76. Bukkit.broadcastMessage("");
  77.  
  78. sendMsg(p, "&aAgora voc� est� dispon�vel para atendimento!");
  79. }
  80. else
  81. {
  82. this.atendendoOn.remove(p.getName());
  83. sendMsg(p, "&cVoc� n�o est� mais dispon�vel para atendimento.");
  84. }
  85. return true;
  86. }
  87. if (cmd.getName().equalsIgnoreCase("shelper"))
  88. {
  89. if (!p.hasPermission("candyhelper.spy"))
  90. {
  91. sendMsg(p, "&cVoc� n�o tem permiss�o para executar este comando!");
  92. return true;
  93. }
  94. String msg = this.spyHelper.contains(p.getName()) ? "desativou" : "ativou";
  95. if (!this.spyHelper.contains(p.getName())) {
  96. this.spyHelper.add(p.getName());
  97. } else {
  98. this.spyHelper.remove(p.getName());
  99. }
  100. sendMsg(p, "Voc� " + msg + " o modo Spy!");
  101.  
  102. return true;
  103. }
  104. Player spier;
  105. if (cmd.getName().equalsIgnoreCase("suporte"))
  106. {
  107. if (args.length < 1)
  108. {
  109. sendMsg(p, "Use: /suporte <mensagem>");
  110. return true;
  111. }
  112. if (this.atendendoOn.size() == 0)
  113. {
  114. sendMsg(p, "&cN�o h� nenhum Helper dispon�vel no momento!");
  115. return true;
  116. }
  117. if (this.pediuAjuda.contains(p.getName()))
  118. {
  119. sendMsg(p, "&cAguarde at� algum Helper responder!");
  120. return true;
  121. }
  122. this.lista += 1;
  123. this.ajuda.put(String.valueOf(this.lista), p.getName());
  124.  
  125. String msg = "";
  126. String[] arrayOfString1;
  127. int j = (arrayOfString1 = args).length;
  128. for (int i = 0; i < j; i++)
  129. {
  130. String s = arrayOfString1[i];
  131. msg = msg + s + " ";
  132. }
  133. for (String helpers : this.atendendoOn)
  134. {
  135. Player helper = Bukkit.getPlayer(helpers);
  136.  
  137. sendMsg(helper, "&6&l" + p.getName() + " &a" + msg);
  138. sendMsg(helper, "&eUse: /responder " + this.lista + " <resposta>");
  139. }
  140. for (String spiers : this.spyHelper)
  141. {
  142. spier = Bukkit.getPlayer(spiers);
  143.  
  144. spier.sendMessage(ChatColor.translateAlternateColorCodes('&', "&5&l[SUPORTE] &7" + p.getName() + "&8 &l>>&7 Helpers&8: " + msg));
  145. }
  146. BukkitScheduler scheduler = Bukkit.getServer().getScheduler();
  147. scheduler.scheduleSyncDelayedTask(this, new Runnable()
  148. {
  149. public void run()
  150. {
  151. if (Main.this.pediuAjuda.contains(p.getName()))
  152. {
  153. Main.this.pediuAjuda.remove(p.getName());
  154. Main.this.sendMsg(p, "&aVoc� j� pode enviar um suporte novamente!");
  155. }
  156. }
  157. }, 1800L);
  158.  
  159. this.pediuAjuda.add(p.getName());
  160.  
  161. sendMsg(p, "&eVoc� enviou um relat�rio de ajuda, aguarde a resposta!");
  162.  
  163. return true;
  164. }
  165. if (cmd.getName().equalsIgnoreCase("responder"))
  166. {
  167. if (!p.hasPermission("candyhelper.responder"))
  168. {
  169. sendMsg(p, "&cVoc� n�o tem permiss�o para executar este comando!");
  170. return true;
  171. }
  172. if (args.length < 2)
  173. {
  174. sendMsg(p, "Use: /responder <#id> <mensagem>");
  175. return true;
  176. }
  177. String duvidoso = (String)this.ajuda.get(String.valueOf(args[0]));
  178. if (!this.pediuAjuda.contains(duvidoso))
  179. {
  180. sendMsg(p, "&cO jogador n�o enviou um pedido de ajuda!");
  181. return true;
  182. }
  183. String msg = "";
  184. String[] arrayOfString2;
  185. Player localPlayer1 = (arrayOfString2 = args).length;
  186. for (Object localObject = 0; localObject < localPlayer1; localObject++)
  187. {
  188. String s = arrayOfString2[localObject];
  189. msg = msg + s + " ";
  190. msg = msg.replaceAll(args[0], "");
  191. }
  192. this.ajuda.remove(String.valueOf(args[0]));
  193. this.pediuAjuda.remove(duvidoso);
  194.  
  195. sendMsg(p, "&aVoc� respondeu ao usu�rio " + duvidoso + ":" + msg);
  196. sendMsg(Bukkit.getPlayer(duvidoso), "&b&lHelper &3" + p.getName() + "&r: " + msg);
  197. for (localObject = this.spyHelper.iterator(); ((Iterator)localObject).hasNext();)
  198. {
  199. String spiers = (String)((Iterator)localObject).next();
  200. Player spier = Bukkit.getPlayer(spiers);
  201.  
  202. spier.sendMessage(ChatColor.translateAlternateColorCodes('&', "&5&l[SUPORTE] &7" + p.getName() + "&8 &l>>&7 " + duvidoso + "&8: " + msg));
  203. }
  204. return true;
  205. }
  206. return false;
  207. }
  208.  
  209. @EventHandler
  210. public void aoDeslogar(PlayerQuitEvent e)
  211. {
  212. Player p = e.getPlayer();
  213. if (this.pediuAjuda.contains(p.getName())) {
  214. this.pediuAjuda.remove(p.getName());
  215. }
  216. if (this.atendendoOn.contains(p.getName())) {
  217. this.atendendoOn.remove(p.getName());
  218. }
  219. if (this.spyHelper.contains(p.getName())) {
  220. this.spyHelper.remove(p.getName());
  221. }
  222. }
  223.  
  224. @EventHandler
  225. public void aoLogar(PlayerJoinEvent e)
  226. {
  227. Player p = e.getPlayer();
  228. if (p.hasPermission("candyhelper.spy")) {
  229. this.spyHelper.add(p.getName());
  230. }
  231. }
  232. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement