@EventHandler (priority = EventPriority.HIGH) public void onPlayerInteractGUI(InventoryClickEvent event) { if (event.getClickedInventory() == null) { return; } if (event.getClickedInventory().getHolder() instanceof FactionGUI) { event.setCancelled(true); ((FactionGUI) event.getClickedInventory().getHolder()).onClick(event.getRawSlot(), event.getClick()); } }
@EventHandler(ignoreCancelled = true, priority = EventPriority.HIGHEST) public void onInventoryClick(InventoryClickEvent e) { if (e.getClickedInventory() instanceof AnvilInventory) { if (e.getRawSlot() == 2) { HumanEntity p = e.getWhoClicked(); ItemStack ind1 = e.getView().getItem(0); ItemStack ind2 = e.getView().getItem(1); if (ItemManager.toRPGItem(ind1).isPresent() || ItemManager.toRPGItem(ind2).isPresent()) { if (!p.hasPermission("rpgitem.allowenchant.new")) e.setCancelled(true); } } } }
@EventHandler(priority = EventPriority.LOW) public void onInventoryClick(InventoryClickEvent e) { Player p = (Player) e.getWhoClicked(); if(!inventories.containsKey(p)) return; if(e.getAction() == InventoryAction.COLLECT_TO_CURSOR || e.getAction() == InventoryAction.MOVE_TO_OTHER_INVENTORY || e.getAction() == InventoryAction.NOTHING) { e.setCancelled(true); return; } if(e.getClickedInventory() == p.getOpenInventory().getTopInventory()) { e.setCancelled(true); int row = e.getSlot() / 9; int column = e.getSlot() % 9; if(row < 0 || column < 0) return; SmartInventory inv = inventories.get(p); if(row >= inv.getRows() || column >= inv.getColumns()) return; inv.getListeners().stream() .filter(listener -> listener.getType() == InventoryClickEvent.class) .forEach(listener -> ((InventoryListener<InventoryClickEvent>) listener).accept(e)); contents.get(p).get(row, column).ifPresent(item -> item.run(e)); p.updateInventory(); } }
@EventHandler(ignoreCancelled = true) public void onClick(InventoryClickEvent event) { if (!(event.getWhoClicked() instanceof Player)) { return; } Player player = (Player) event.getWhoClicked(); if (player.hasPermission("playervaults.bypassblockeditems")) { return; } Inventory clickedInventory = event.getClickedInventory(); if (clickedInventory != null) { VaultViewInfo info = PlayerVaults.getInstance().getInVault().get(player.getUniqueId().toString()); if (info != null) { int num = info.getNumber(); String inventoryTitle = clickedInventory.getTitle(); String title = Lang.VAULT_TITLE.toString().replace("%number", String.valueOf(num)).replace("%p", info.getVaultName()); if (((inventoryTitle != null && inventoryTitle.equalsIgnoreCase(title)) || event.getCurrentItem() != null)) { if (PlayerVaults.getInstance().isBlockedMaterial(event.getCurrentItem().getType())) { event.setCancelled(true); player.sendMessage(Lang.TITLE.toString() + Lang.BLOCKED_ITEM.toString().replace("%m", event.getCurrentItem().getType().name())); } } } } }
case PLACE_SOME: case SWAP_WITH_CURSOR: if (event.getClickedInventory().getType() != InventoryType.PLAYER) { item = event.getCursor(); } else { case HOTBAR_MOVE_AND_READD: case HOTBAR_SWAP: if (event.getClickedInventory().getType() != InventoryType.PLAYER) { item = event.getWhoClicked().getInventory().getItem(event.getHotbarButton()); } else {
@EventHandler public void onClick(InventoryClickEvent e) { if (e.getClickedInventory() == null || e.getCurrentItem() == null || e.getCurrentItem().getItemMeta() == null || e.getCursor() == null) return; if (e.getClickedInventory().getTitle().equalsIgnoreCase(SavageFactions.plugin.color(SavageFactions.plugin.getConfig().getString("fupgrades.MainMenu.Title").replace("{faction}", fme.getFaction().getTag())))) { e.setCancelled(true); ItemStack[] items = buildItems(fme);