public ItemStack get(InventoryClickEvent event) { return event.getCurrentItem(); } }, 0);
@Override public MCItemStack getCurrentItem() { return new BukkitMCItemStack(ic.getCurrentItem()); }
@EventHandler //MAKE SURE YOU HAVE THIS public void InventoryClick(InventoryClickEvent e){ Player p = (Player) e.getWhoClicked(); if(e.getInventory().getTitle().contains("put the name of the GUI here (CAsE SEnsITivE)")){ //Cancel the event so they can't take items out of the GUI e.setCancelled(true); if(e.getCurrentItem() == null){ return; } //gets called when the current item's type (The item the player clicked) is a diamond else if(e.getCurrentItem().getType() == Material.DIAMOND){ //send the player a message when they click it p.sendMessage("You clicked the diamond!"); //call this if you want to close the inventory when they click it p.closeInventory(); } } }
@EventHandler(priority = EventPriority.LOWEST, ignoreCancelled = true) public void onClick(InventoryClickEvent e) { if (!cm.isAntiNegativeItemDupe) { return; } ItemStack item = null; if (e.getCurrentItem() != null && e.getCurrentItem().getType() != Material.AIR) { item = e.getCurrentItem(); } else if (e.getCursor() != null && e.getCursor().getType() != Material.AIR) { item = e.getCursor(); } if (item != null && item.getAmount() <= 0) { item.setType(Material.AIR); } }
@EventHandler(priority = EventPriority.MONITOR, ignoreCancelled = true) public void onInventoryClick(InventoryClickEvent e) { HumanEntity human = e.getWhoClicked(); if (human instanceof Player && e.getInventory() instanceof CraftingInventory) { final Player player = (Player) human; if (e.getCurrentItem() != null) { if (ArmorType.isArmor(e.getCurrentItem().getTypeId())) { sendDelayedArmorUpdate(player); return; } } if (e.getRawSlot() >= 5 && e.getRawSlot() <= 8) { sendDelayedArmorUpdate(player); } } }
@EventHandler public void onButtonClick(InventoryClickEvent event) { if (!(event.getWhoClicked() instanceof Player)) { return; } Player player = (Player) event.getWhoClicked(); Inventory gui = event.getInventory(); ItemStack button = event.getCurrentItem(); Announcer announcer = announcers.getByGUI(gui); if (announcer != null && button != null && button.getData() instanceof Wool) { announcer.clickGroupButton(player, button); } }
@EventHandler(priority = EventPriority.MONITOR, ignoreCancelled = true) public void onInventoryClickEvent(InventoryClickEvent event) { SkillUtils.removeAbilityBuff(event.getCurrentItem()); if (event.getAction() == InventoryAction.HOTBAR_SWAP) { SkillUtils.removeAbilityBuff(event.getWhoClicked().getInventory().getItem(event.getHotbarButton())); } }
@EventHandler(priority = EventPriority.HIGH, ignoreCancelled = true) public void onClick(InventoryClickEvent e) { if (!(e.getInventory().getHolder() instanceof MenuBuilderHolder)) { return; } MenuBuilderHolder holder = (MenuBuilderHolder) e.getInventory().getHolder(); if (holder.isLock() || e.getAction() == InventoryAction.COLLECT_TO_CURSOR) { e.setCancelled(true); } Optional.ofNullable(holder.getItems().get(e.getRawSlot())).ifPresent(item -> { if (item.getCallable() != null) { item.getCallable().call(new MenuBuilderEvent(e, (Player) e.getWhoClicked(), e.getCurrentItem(), e.getRawSlot())); } }); }
@EventHandler public void handleInventoryClick(InventoryClickEvent e) { if (!(e.getWhoClicked() instanceof Player)) return; if (inventories().contains(e.getInventory()) && e.getCurrentItem() != null && e.getSlot() == e.getRawSlot()) { e.setCancelled(true); if (mobConfig.getItemLayout().getItemId() == e.getCurrentItem().getTypeId()) { MobImpl mob = find(e.getInventory()); if (mob.getServerPosition().containsKey(e.getSlot())) { if (CloudAPI.getInstance().getServerId().equalsIgnoreCase(mob.getServerPosition().get(e.getSlot()))) return; ByteArrayDataOutput byteArrayDataOutput = ByteStreams.newDataOutput(); byteArrayDataOutput.writeUTF("Connect"); byteArrayDataOutput.writeUTF(mob.getServerPosition().get(e.getSlot())); ((Player) e.getWhoClicked()).sendPluginMessage(CloudServer.getInstance().getPlugin(), "BungeeCord", byteArrayDataOutput.toByteArray()); } } } }
@Override public void clicked(InventoryClickEvent event) { event.setCancelled(true); if (context != null) { Mage mage = context.getMage(); Wand wand = context.getWand(); ItemStack item = event.getCurrentItem(); if (wand != null && com.elmakers.mine.bukkit.wand.Wand.isSpell(item)) { String spellKey = com.elmakers.mine.bukkit.wand.Wand.getSpell(item); SpellKey upgradeKey = new SpellKey(spellKey); wand.setActiveSpell(upgradeKey.getBaseKey()); } mage.deactivateGUI(); } }
@EventHandler(priority = EventPriority.HIGH) public void onInteract(InventoryClickEvent event) { Inventory inv = event.getView().getTopInventory(); if (inv instanceof AnvilInventory) { Player player = (Player) event.getWhoClicked(); int slot = event.getRawSlot(); // slot 2 = result item slot if (slot >= 0 && slot == 2) { ItemStack is = event.getCurrentItem(); if (is != null && is.hasItemMeta()) { ItemMeta im = is.getItemMeta(); ItemStack one = inv.getItem(0); ItemStack two = inv.getItem(1); if (checkRepair(one, two) && im.hasDisplayName() && disallow.containsKey(im.getDisplayName()) && is.getType() == disallow.get(im.getDisplayName())) { TARDISMessage.send(player, "NO_RENAME"); event.setCancelled(true); } } } } }
@EventHandler(priority = EventPriority.HIGHEST) public void onInventoryClick(InventoryClickEvent e){ if(e.getWhoClicked() instanceof Player){ Player p = (Player) e.getWhoClicked(); if(isBlocking(p.getUniqueId())){ ItemStack cursor = e.getCursor(); ItemStack current = e.getCurrentItem(); if(cursor != null && cursor.getType() == Material.SHIELD || current != null && current.getType() == Material.SHIELD){ e.setCancelled(true); restore(p); } } } }
private void onLobbyInventoryClick(InventoryClickEvent ice, Player player, Game game) { Inventory inv = ice.getInventory(); ItemStack clickedStack = ice.getCurrentItem(); if (!inv.getTitle().equals(BedwarsRel._l(player, "lobby.chooseteam"))) { ice.setCancelled(true); return; } if (clickedStack == null) { ice.setCancelled(true); return; } if (clickedStack.getType() != Material.WOOL) { ice.setCancelled(true); return; } ice.setCancelled(true); Wool wool = (Wool) clickedStack.getData(); Team team = game.getTeamByDyeColor(wool.getColor()); if (team == null) { return; } game.playerJoinTeam(player, team); player.closeInventory(); }
@EventHandler public void inventoryClick(InventoryClickEvent e) { if (e.getInventory().getHolder() instanceof ItemLibraryHolder) { e.setCancelled(true); if (e.getCurrentItem() == null || e.getCurrentItem().getType().equals(Material.AIR) || e.getRawSlot() >= e.getInventory().getSize()) { return; } int i = e.getRawSlot(); if (i == 47) { openInventory((Player) e.getWhoClicked(), ((ItemLibraryHolder) e.getInventory().getHolder()).PAGE - 1); } else if (i == 51) { openInventory((Player) e.getWhoClicked(), ((ItemLibraryHolder) e.getInventory().getHolder()).PAGE + 1); } else { e.getWhoClicked().getInventory().addItem(ItemUtils.getCacheItem(((ItemLibraryHolder) e.getInventory().getHolder()).ITEMS_DATA.get(e.getRawSlot()))); } } }
@EventHandler(ignoreCancelled = true) public void onPerceptionFilterRemove(InventoryClickEvent event) { if (event.getInventory().getType().equals(InventoryType.CRAFTING)) { int slot = event.getRawSlot(); if (slot >= 0 && slot == 6) { ItemStack is = event.getCurrentItem(); if (is != null) { if (is.hasItemMeta()) { ItemMeta im = is.getItemMeta(); if (im.hasDisplayName() && im.getDisplayName().equals("Perception Filter")) { if (event.getAction().equals(InventoryAction.PICKUP_ALL)) { plugin.getFilter().removePerceptionFilter((Player) event.getWhoClicked()); } } } } } } } }
@EventHandler public void onOffhandInventoryClick(InventoryClickEvent e) { if (e.getInventory().getType() != InventoryType.CRAFTING || e.getSlotType() != InventoryType.SlotType.QUICKBAR || e.getSlot() != 40) return; if (!(e.getWhoClicked() instanceof Player)) return; Player player = (Player) e.getWhoClicked(); ItemStack currentIs = e.getCurrentItem(); ItemStack cursorIs = e.getCursor(); RPGItem currentItem = ItemManager.toRPGItem(currentIs).orElse(null); RPGItem cursorItem = ItemManager.toRPGItem(cursorIs).orElse(null); if (currentItem != null && (e.getAction() == InventoryAction.PICKUP_SOME || e.getAction() == InventoryAction.PICKUP_ALL || e.getAction() == InventoryAction.PICKUP_ONE || e.getAction() == InventoryAction.PICKUP_HALF || e.getAction() == InventoryAction.DROP_ALL_SLOT || e.getAction() == InventoryAction.DROP_ONE_CURSOR)) { Boolean cont = currentItem.power(player, currentIs, e, Trigger.PICKUP_OFF_HAND); if (!cont) e.setCancelled(true); } if (cursorItem != null && (e.getAction() == InventoryAction.PLACE_SOME || e.getAction() == InventoryAction.PLACE_ONE || e.getAction() == InventoryAction.PLACE_ALL)) { Boolean cont = cursorItem.power(player, cursorIs, e, Trigger.PLACE_OFF_HAND); if (!cont) e.setCancelled(true); } }
@EventHandler(priority = EventPriority.HIGHEST) public void onInventoryClick(InventoryClickEvent e){ if(!(e.getWhoClicked() instanceof Player)) return; Player player = (Player) e.getWhoClicked(); if(!isEnabled(player.getWorld())) return; if(player.getGameMode() == GameMode.CREATIVE) return; InventoryType type = e.getInventory().getType(); // Only if they're in their inventory, not chests etc. if(type != InventoryType.CRAFTING && type != InventoryType.PLAYER) return; ItemStack cursor = e.getCursor(); ItemStack currentItem = e.getCurrentItem(); if((cursor != null && cursor.getType() != Material.ELYTRA) && (currentItem != null && currentItem.getType() != Material.ELYTRA)){ return; } if(e.getSlot() == 38 || e.getClick() == ClickType.SHIFT_LEFT || e.getClick() == ClickType.SHIFT_RIGHT){ e.setCancelled(true); } }
@EventHandler(ignoreCancelled = true) public void onInventoryClick(InventoryClickEvent event) { if (event.isCancelled()) return; if (!(event.getWhoClicked() instanceof Player)) return; InventoryType inventoryType = event.getInventory().getType(); InventoryType.SlotType slotType = event.getSlotType(); ItemStack cursor = event.getCursor(); ItemStack current = event.getCurrentItem(); SettingsManager manager = plugin.getSettingsManager(); if (inventoryType == InventoryType.ANVIL) { // Have to check "current" here as well to avoid shift+clicks if (manager.isMetaFieldType(cursor) || manager.isMetaFieldType(current)) { event.setCancelled(true); } } else if (slotType == InventoryType.SlotType.CRAFTING && (inventoryType == InventoryType.CRAFTING || inventoryType == InventoryType.WORKBENCH)) { if (manager.isMetaFieldType(cursor)) { event.setCancelled(true); } } } }
@EventHandler public void onInventoryClick(InventoryClickEvent e){ if(!isEnabled(e.getWhoClicked().getWorld())) return; if(e.getInventory().getType() != InventoryType.ENCHANTING) return; if(!hasPermission(e.getWhoClicked())) return; ItemStack item = e.getCurrentItem(); if(item == null){ return; } if(item.getType() == lapisLazuliMaterial && e.getRawSlot() == 1){ e.setCancelled(true); } else if(e.getCursor() != null && e.getCursor().getType() == lapisLazuliMaterial && e.getClick() == ClickType.DOUBLE_CLICK){ e.setCancelled(true); } }
@EventHandler(ignoreCancelled = true) public void onInventoryClick(InventoryClickEvent event) { HumanEntity entity = event.getWhoClicked(); Inventory inventory = event.getInventory(); ItemStack item = event.getCurrentItem(); if (item != null && inventory != null && inventory.getHolder() != null && entity instanceof Player) { Player player = (Player) entity; ConfigurationManager cfg = WorldGuard.getInstance().getPlatform().getGlobalStateManager(); WorldConfiguration wcfg = cfg.get(BukkitAdapter.adapt(entity.getWorld())); LocalPlayer localPlayer = getPlugin().wrapPlayer(player); if (wcfg.getBlacklist() != null && !wcfg.getBlacklist().check( new ItemAcquireBlacklistEvent(localPlayer, BukkitAdapter.asBlockVector(entity.getLocation()), createTarget(item)), false, false)) { event.setCancelled(true); if (inventory.getHolder().equals(player)) { event.setCurrentItem(null); } } } }