Posted June 21, 20169 yr I'm trying to make a 'sharpening stone', that when combined with any axe will add the efficiency 1 enchant to it. I've got a basic handler that returns the stone, but I can't figure out how to make the recipe use ANY kind of axe. Do I need to create an array of axes and reference that in the recipe? Here's what I have below. @SubscribeEvent public void onCrafting(PlayerEvent.ItemCraftedEvent event) { IInventory matrix = event.craftMatrix; ItemStack y = new ItemStack(ItemList.basicItem, 1); for(int i=0;i<matrix.getSizeInventory();i++) { if (matrix.getStackInSlot(i)!= null && matrix.getStackInSlot(i).getDisplayName().equals(y.getDisplayName())) { matrix.setInventorySlotContents(i, new ItemStack(ItemList.basicItem, 2)); } } } public class ItemList { public static Item basicItem; public static void initItems() { basicItem = new ItemBase(); GameRegistry.registerItem(basicItem, "basicItem"); GameRegistry.addShapelessRecipe(new ItemStack(Items.diamond_axe, 1), basicItem, Items.wooden_axe, Items.flint); } }
June 22, 20169 yr Author Ok, thanks I'll have a look. The ItemCraftedEvent is to give the item back after using it in the crafting recipe. There's probably a better way of doing it...
June 22, 20169 yr hasContainerItem and getContainerItem Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable. If you think this is the case, JUST REPORT ME. Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice. Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked. DO NOT PM ME WITH PROBLEMS. No help will be given.
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.