/** * Prevents crafting of EnderChest unless the player has permission * * @param e - event */ @EventHandler(priority = EventPriority.LOW, ignoreCancelled = true) public void onCraft(CraftItemEvent e) { e.setCancelled(checkEnderChest((Player)e.getWhoClicked(), e.getRecipe().getResult().getType())); }
@EventHandler public void onCraft(CraftItemEvent e) { for (ItemStack item: e.getInventory().getContents()) { if (SlimefunItem.getByItem(item) != null && !(SlimefunItem.getByItem(item).isReplacing())) { e.setCancelled(true); Messages.local.sendTranslation((Player) e.getWhoClicked(), "workbench.not-enhanced", true); break; } } }
@EventHandler public void onCraft(CraftItemEvent e) { ShapedRecipe packedice = YOURRECIPE; if(e.getInventory().getSize() == 10 && e.getInventory().getResult().equals(packedice.getResult())) { if(e.getRawSlot() == 0) { ItemStack upleft = e.getInventory().getItem(1); if(upleft != null && upleft.hasItemMeta() && upleft.getItemMeta().hasLore()) { List<String> l = upleft.getItemMeta().getLore(); if(!l.get(0).equals("Line 1")) { e.setCancelled(true); } } } } }
@EventHandler public void craft(CraftItemEvent e){ if(e.getInventory() instanceof CraftingInventory){ CraftingInventory inv = (CraftingInventory) e.getInventory(); if(inv.getSize() != 4 && e.getRecipe().equals(lvl1ArmorHelmetRecipe())){ ItemStack helm = inv.getMatrix()[4];//get the middle item in the bench, which is the helmet if(helm.hasItemMeta()){//make sure the helmet has item meta if(helm.getItemMeta().getDisplayName().equals("Better Helmet")){//make sure the helmet's display name is 'Better Helmet' //you're done! It works! Do something like tell the player "you have crafted better armor" or something here. return; } } //the return; above would have been called if the crafting had succeeded. When it got called, the remainder of this method would not run (this part will not be run if the crafting has succeeded) //send the player a message to make it more realistic here. For my wizardry server I use: 'One of thee items used was incorrect, and unbalanced the energy. The death block hath been destroyed' e.setCanceled(true); e.setResult(new ItemStack(Material.AIR)); } } }
@SuppressWarnings("deprecation") @EventHandler(priority = EventPriority.MONITOR, ignoreCancelled = true) public void onCraftItem(CraftItemEvent event) { if (!(event.getWhoClicked() instanceof Player) || event.getAction() == InventoryAction.NOTHING || event.getClick() == ClickType.NUMBER_KEY && event.getAction() == InventoryAction.HOTBAR_MOVE_AND_READD) { return; Player player = (Player) event.getWhoClicked(); if (!shouldIncreaseBeTakenIntoAccountNoPermissions(player)) { return; ItemStack item = event.getCurrentItem(); String craftName = item.getType().name().toLowerCase(); if (!player.hasPermission(category.toPermName() + '.' + craftName)) { foundAchievements.addAll(findAchievementsByCategoryAndName(category, craftName)); int eventAmount = event.getCurrentItem().getAmount(); if (event.isShiftClick()) { int maxAmount = event.getInventory().getMaxStackSize(); ItemStack[] matrix = event.getInventory().getMatrix(); for (ItemStack itemStack : matrix) { if (itemStack != null && itemStack.getType() != Material.AIR) { eventAmount = Math.min(eventAmount, getInventoryAvailableSpace(player, event.getCurrentItem())); if (eventAmount == 0) { return;
@EventHandler public void onCraft(CraftItemEvent cie) { Player player = (Player) cie.getWhoClicked(); Game game = BedwarsRel.getInstance().getGameManager().getGameOfPlayer(player); if (game == null) { return; } if (game.getState() == GameState.STOPPED) { return; } if (BedwarsRel.getInstance().getBooleanConfig("allow-crafting", false)) { return; } cie.setCancelled(true); }
@EventHandler public void onCraftItem(CraftItemEvent event) { HumanEntity human = event.getWhoClicked(); if (!(human instanceof Player)) return; Player player = (Player)human; Mage mage = controller.getMage(player); // Don't allow crafting in the wand inventory. if (mage.hasStoredInventory()) { event.setCancelled(true); return; } ItemStack currentItem = event.getCurrentItem(); if (Wand.isWand(currentItem)) { CraftWandEvent castEvent = new CraftWandEvent(mage, controller.getWand(currentItem)); Bukkit.getPluginManager().callEvent(castEvent); } }
@EventHandler(priority=EventPriority.MONITOR) public void onCrafting(CraftItemEvent event) { if (event.isCancelled()) { return; } if (event.getWhoClicked() instanceof Player) { Player player = (Player) event.getWhoClicked(); String playerID = PlayerConverter.getID(player); CraftData playerData = (CraftData) dataMap.get(playerID); if (containsPlayer(playerID) && item.compare(event.getRecipe().getResult()) && checkConditions(playerID)) { playerData.subtract(event.getRecipe().getResult().getAmount()); if (playerData.isZero()) { completeObjective(playerID); } } } }
@EventHandler(priority = EventPriority.MONITOR, ignoreCancelled = true) public void onCraftItem(CraftItemEvent event) { /* WORLD BLACKLIST CHECK */ if(WorldBlacklist.isWorldBlacklisted(event.getWhoClicked().getWorld())) return; final HumanEntity whoClicked = event.getWhoClicked(); if (!whoClicked.hasMetadata(mcMMO.playerDataKey)) { return; } ItemStack result = event.getRecipe().getResult(); if (!ItemUtils.isMcMMOItem(result)) { return; } Player player = (Player) whoClicked; /* WORLD GUARD MAIN FLAG CHECK */ if(WorldGuardUtils.isWorldGuardLoaded()) { if(!WorldGuardManager.getInstance().hasMainFlag(player)) return; } new PlayerUpdateInventoryTask((Player) whoClicked).runTaskLater(plugin, 0); }
if(!matches(packedice, event.getInventory().getMatrix())) return; ItemStack[] matrix = event.getInventory().getMatrix(); for(ItemStack item: matrix) if(item != null && item.getType() == Material.PRISMARINE_SHARD) if(!neededLore.equals(item.getItemMeta().getLore())) event.setCancelled(true); return;
public ItemStack get(CraftItemEvent event) { return event.getRecipe().getResult(); } }, 0);
@EventHandler public void onCraft(CraftItemEvent cie) { Player player = (Player) cie.getWhoClicked(); Game game = BedwarsRel.getInstance().getGameManager().getGameOfPlayer(player); if (game == null) { return; } if (game.getState() == GameState.STOPPED) { return; } if (BedwarsRel.getInstance().getBooleanConfig("allow-crafting", false)) { return; } cie.setCancelled(true); }