Advertisement
Guest User

Untitled

a guest
Jul 21st, 2017
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.83 KB | None | 0 0
  1. package fr.Falkanox.selector;
  2.  
  3. import com.google.common.collect.Lists;
  4. import java.util.ArrayList;
  5. import java.util.Iterator;
  6. import java.util.List;
  7. import java.util.Set;
  8. import org.bukkit.Bukkit;
  9. import org.bukkit.ChatColor;
  10. import org.bukkit.Material;
  11. import org.bukkit.command.Command;
  12. import org.bukkit.command.CommandExecutor;
  13. import org.bukkit.command.CommandSender;
  14. import org.bukkit.entity.Player;
  15. import org.bukkit.event.EventHandler;
  16. import org.bukkit.event.Listener;
  17. import org.bukkit.event.block.Action;
  18. import org.bukkit.event.inventory.InventoryClickEvent;
  19. import org.bukkit.event.player.PlayerInteractEvent;
  20. import org.bukkit.inventory.Inventory;
  21. import org.bukkit.inventory.ItemStack;
  22. import org.bukkit.inventory.meta.ItemMeta;
  23. import org.bukkit.plugin.java.JavaPlugin;
  24.  
  25. public class Main
  26. extends JavaPlugin
  27. implements Listener, CommandExecutor
  28. {
  29. String name = ChatColor.translateAlternateColorCodes('&', getConfig().getString("titre"));
  30. boolean watch = getConfig().getBoolean("horloge");
  31. boolean fill = getConfig().getBoolean("remplir");
  32. int slots = getConfig().getInt("lignes") * 9;
  33. private static Main instance;
  34. public static Main getInstance()
  35. {
  36. return instance;
  37. }
  38.  
  39. private Inventory getInv(Player p)
  40. {
  41. Inventory inv = Bukkit.createInventory(p, this.slots, this.name);
  42. Set<String> servers = getConfig().getConfigurationSection("servers").getKeys(false);
  43. for (String s : servers)
  44. {
  45. String bungee = getConfig().getString("servers." + s + ".bungee");
  46. String displayname = ChatColor.translateAlternateColorCodes('&', getConfig().getString("servers." + s + ".name"));
  47.  
  48. Material m = Material.getMaterial(getConfig().getInt("servers." + s + ".icon"));
  49. ItemStack icon = new ItemStack(m, 1);
  50.  
  51. boolean vnet = getConfig().getBoolean("servers." + s + ".shown");
  52. List<String> lorelist = getConfig().getStringList("servers." + s + ".lore");
  53. ArrayList<String> lorelist2 = Lists.newArrayList();
  54. ItemMeta meta = icon.getItemMeta();
  55. for (String s2 : lorelist)
  56. {
  57. String s3 = ChatColor.translateAlternateColorCodes('&', s2);
  58. lorelist2.add(s3);
  59. }
  60. meta.setDisplayName(displayname);
  61. meta.setLore(lorelist2);
  62. icon.setItemMeta(meta);
  63. if (shown) {
  64. inv.setItem(getConfig().getInt("servers." + s + ".slot") - 1, icon);
  65. }
  66. }
  67. List<Integer> emptySlots = new ArrayList();
  68. for (int i = 0; i < inv.getSize(); i++) {
  69. if (inv.getItem(i) == null) {
  70. emptySlots.add(Integer.valueOf(i));
  71. } else if ((inv.getItem(i).getType() == Material.AIR) || (inv.getItem(i).getType() == null)) {
  72. emptySlots.add(Integer.valueOf(i));
  73. }
  74. }
  75. Iterator i$;
  76. if (this.fill) {
  77. for (i$ = emptySlots.iterator(); i$.hasNext();)
  78. {
  79. int i = ((Integer)i$.next()).intValue();
  80. inv.setItem(i, new ItemStack(Material.STAINED_GLASS_PANE));
  81. }
  82. }
  83. return inv;
  84. }
  85.  
  86. public void onEnable()
  87. {
  88. instance = this;
  89. getCommand("atrjroetkzptkesp").setExecutor(this);
  90. getServer().getPluginManager().registerEvents(this, this);
  91. setupConfig();
  92. getServer().getMessenger().registerOutgoingPluginChannel(this, "BungeeCord");
  93. getServer().getMessenger().registerIncomingPluginChannel(this, "BungeeCord", new BungeeCord());
  94. }
  95.  
  96. private void setupConfig()
  97. {
  98. getConfig().options().copyDefaults(true);
  99. saveConfig();
  100. }
  101.  
  102. @EventHandler
  103. public void onClick(InventoryClickEvent e)
  104. {
  105. if ((e.getWhoClicked() instanceof Player))
  106. {
  107. Player p = (Player)e.getWhoClicked();
  108. if (ChatColor.stripColor(p.getOpenInventory().getTitle()).equals(ChatColor.stripColor(ChatColor.translateAlternateColorCodes('&', getConfig().getString("title")))))
  109. {
  110. Set<String> servers = getConfig().getConfigurationSection("servers").getKeys(false);
  111. for (String s : servers) {
  112. if (e.getCurrentItem().getType() != Material.STAINED_GLASS_PANE)
  113. {
  114. if (ChatColor.stripColor(e.getCurrentItem().getItemMeta().getDisplayName()).equals(ChatColor.stripColor(ChatColor.translateAlternateColorCodes('&', getConfig().getString("servers." + s + ".name")))))
  115. {
  116. BungeeCord.connectToBungeeServer(p, getConfig().getString("servers." + s + ".bungee"));
  117. e.setCancelled(true);
  118. break;
  119. }
  120. e.setCancelled(true);
  121. }
  122. }
  123. e.setCancelled(true);
  124. }
  125. }
  126.  
  127. if(e.getInventory().ge )
  128. }
  129.  
  130. public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args)
  131. {
  132. if (cmd.getName().equalsIgnoreCase("atrjroetkzptkesp"))
  133. {
  134. if (args.length == 0)
  135. {
  136. if ((sender instanceof Player))
  137. {
  138. Player p = (Player)sender;
  139. p.openInventory(getInv(p));
  140. return true;
  141. }
  142. sender.sendMessage("&cLa console ne peut pas executer cette Commande !");
  143. return true;
  144. }
  145. if ((args.length == 1) &&
  146. (args[0].equalsIgnoreCase("reload")))
  147. {
  148. if (sender.hasPermission("mls.reload"))
  149. {
  150. reloadConfig();
  151. sender.sendMessage("&aLa Configuration a été reload");
  152. return true;
  153. }
  154. sender.sendMessage("&fCommande");
  155. return true;
  156. }
  157. return true;
  158. }
  159. return false;
  160. }
  161.  
  162. @EventHandler
  163. public void onInteract(PlayerInteractEvent e)
  164. {
  165. Player p = e.getPlayer();
  166. if (((e.getAction() == Action.RIGHT_CLICK_AIR) || (e.getAction() == Action.RIGHT_CLICK_BLOCK)) &&
  167. (p.getItemInHand().getType().equals(Material.WATCH)) &&
  168. (this.watch))
  169. {
  170. p.performCommand("atrjroetkzptkesp");
  171. e.setCancelled(true);
  172. }
  173. }
  174. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement