if (message.getSlot() < 0) { InventoryCreativeEvent event = eventFactory .callEvent(new InventoryCreativeEvent(view, SlotType.OUTSIDE, -999, stack)); if (event.isCancelled()) { session.send(new SetWindowSlotMessage(-1, -1, stack)); } else { player.drop(event.getCursor()); SlotType type = inv.getSlotType(slot); InventoryCreativeEvent event = eventFactory .callEvent(new InventoryCreativeEvent(view, type, viewSlot, stack)); if (event.isCancelled()) {
@EventHandler(ignoreCancelled = true) public void onInventoryCreative(InventoryCreativeEvent event) { HumanEntity entity = event.getWhoClicked(); ItemStack item = event.getCursor(); if (item != 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); event.setCursor(null); } } }