@SuppressWarnings({"rawtypes", "unchecked"}) private void openInventory(Player p, Location l) { Inventory inv = pl.getServer().createInventory(null, InventoryType.HOPPER, "Network Creator"); inv.setItem(2, in2); ItemStack brea = new ItemStack(Material.ENDER_PORTAL_FRAME); ItemMeta im = brea.getItemMeta(); im.setDisplayName(ChatColor.RESET + "Déassablage"); List<String> lore = new ArrayList(); lore.add(l.getBlockX() + "/" + l.getBlockY() + "/" + l.getBlockZ()); im.setLore(lore); brea.setItemMeta(im); inv.setItem(4, brea); p.openInventory(inv); }
@SuppressWarnings({"unchecked", "rawtypes"}) public NetworkCreatorListener(Startup pl) { this.pl = pl; this.pl.getServer().getPluginManager().registerEvents(this, this.pl); in2.setDurability((short) 15); ItemMeta im2 = in2.getItemMeta(); im2.setDisplayName(ChatColor.RESET + "--->"); List<String> lim2 = new ArrayList(); lim2.add(ChatColor.RESET + "Create Card Network"); im2.setLore(lim2); in2.setItemMeta(im2); ShapedRecipe craft = new ShapedRecipe(pl.nc); craft.shape(new String[] {"DID", "EDE", "SSS"}); craft.setIngredient('D', Material.DIAMOND); craft.setIngredient('E', Material.ENDER_PEARL); craft.setIngredient('I', Material.IRON_INGOT); craft.setIngredient('S', Material.ENDER_STONE); pl.getServer().addRecipe(craft); }
@EventHandler public void onClickInventory(InventoryClickEvent ev) { if (ev.getInventory().getType() == InventoryType.HOPPER && ev.getInventory().getTitle().equalsIgnoreCase("Network Creator")) { if (ev.getCurrentItem() == null) { return; } if (ev.isShiftClick()) { ev.setCancelled(true); return; } if ((ev.getSlot() == 0 || ev.getSlot() == 1) && !CardNetworkListener.isModifier(ev.getCursor()) && ev.getCursor().getType() != Material.AIR) { ev.setCancelled(true); return; } if (ev.getSlot() == 3 && !pl.isCardNetwork(ev.getCursor()) && ev.getCursor().getType() != Material.AIR) { ev.setCancelled(true); return; } Player p = (Player) ev.getWhoClicked(); Inventory inv = ev.getInventory(); if (ev.getCurrentItem().getType() == Material.ENDER_PORTAL_FRAME && ev.getCurrentItem().hasItemMeta() && ev.getCurrentItem().getItemMeta().hasDisplayName() && ev.getCurrentItem().getItemMeta().getDisplayName().equalsIgnoreCase("§rDéassablage")) { ev.setCancelled(true); List<String> lore = ev.getCurrentItem().getItemMeta().getLore(); String[] cs = lore.get(0).split("/"); Block b = new Location( ev.getWhoClicked().getWorld(), Integer.parseInt(cs[0]), Integer.parseInt(cs[1]), Integer.parseInt(cs[2])) .getBlock(); b.setType(Material.AIR); pl.bs.remove(b); b.getWorld().dropItemNaturally(b.getLocation(), pl.nc); p.closeInventory(); return; } if (ev.getSlot() == 2 && ev.getCurrentItem().getType() == Material.STAINED_GLASS_PANE && ev.getCurrentItem().getDurability() == 15 && ev.getCurrentItem().hasItemMeta() && ev.getCurrentItem().getItemMeta().hasDisplayName() && ev.getCurrentItem().getItemMeta().getDisplayName().equalsIgnoreCase("§r--->")) { ev.setCancelled(true); if (inv.getItem(0) == null && inv.getItem(1) == null && inv.getItem(3) == null) return; if (CardNetworkListener.whatNetwork(inv.getItem(3)) != null) return; ItemStack item; ItemStack m1 = inv.getItem(0); ItemStack m2 = inv.getItem(1); if (m1 != null || m2 != null) { item = inv.getItem(3); ItemMeta im = item.getItemMeta(); List<String> lore = im.getLore(); lore.add(" "); lore.add(ChatColor.GRAY + "Modifier :"); if (m1 != null) { lore.add(ChatColor.GRAY + "- " + CardNetworkListener.whatModifier(m1)); inv.setItem(0, new ItemStack(Material.AIR)); } if (m2 != null && !m2.isSimilar(m1)) { lore.add(ChatColor.GRAY + "- " + CardNetworkListener.whatModifier(m2)); inv.setItem(1, new ItemStack(Material.AIR)); } im.setLore(lore); item.setItemMeta(im); inv.setItem(3, item); } p.playSound(p.getLocation(), Sound.WOOD_CLICK, 1, 1); Inventory icn = pl.getServer().createInventory(null, InventoryType.HOPPER, "NC"); icn.setContents(inv.getContents()); inv.clear(); new ChatInventory(pl, p, null, ChatEtat.CREATE_NETWORK, icn); p.closeInventory(); p.sendMessage(ChatColor.GRAY + "Entré le nom du réseau"); return; } } }