Posted September 6, 201510 yr Ironically just a few weeks ago now I answered a similar question with the extent of my knowledge on it... However I seem to have a few holes in my method. In a quest to toughen up vanilla recipes I'm using the following method to find and remove crafting recipes so that I can replace them: public static void removeCraftingRecipe(Item item) { List<IRecipe> recipes = CraftingManager.getInstance().getRecipeList(); Iterator<IRecipe> remover = recipes.iterator(); while(remover.hasNext()) { // If the output matches the specified item. Can be used with itemstacks directly or getitemfromblock as well. ItemStack itemstack = remover.next().getRecipeOutput(); if(itemstack != null && itemstack.getItem() == item) { // Remove the recipe remover.remove(); } } } which works fine for 99.99% of recipes... However it doesn't seem to remove Fireworks, Dyes, or Stained Clay blocks. These seem to just.. not be there. Checking the specific Recipes classes don't seem to help much. Dyes seem to be added to A crafting manager normally... but not the list in CraftingManager I guess... Fireworks don't.. I don't even know where the recipe for stained clay is? Not sure how to find and remove these. Developing the Spiral Power Mod . こんにちは!お元気ですか?
September 6, 201510 yr Recipes for Dyes and coloured blocks (e.g. Stained Clay) are added by RecipeDyes#addRecipes , which is called from the CraftingManager constructor. They're just standard shaped/shapeless recipes, so your method should remove them without issue. Fireworks recipes are handled by the RecipeFireworks class, which returns null from IRecipe#getRecipeOutput until IRecipe#matches has found a matching recipe; so you can't remove it based on the output Item . You can remove it based on the class instead, though. You can see a working example of this for 1.8 here. This outputs the following to the log: Removed 1 recipes for class net.minecraft.item.crafting.RecipeFireworks Removed 28 recipes for minecraft:dye Removed 16 recipes for minecraft:stained_hardened_clay Please don't PM me to ask for help. Asking your question in a public thread preserves it for people who are having the same problem in the future.
September 6, 201510 yr Author To be honest I probably don't want to remove the Firework recipes.. Too many combos to play with just trying to make it harder.. But it's interesting to know how, thanks. As for the dyes, I made a stupid mistake I wasn't actually USING that method, I was iterating through an itemstack of the dyes and checking each metadata value directly against the itemstack. And similar with the blocks with a for loop and checking each for a recipe which was just fizzling. [02:55:41] [Client thread/INFO] [ANCTECH]: Removed 0 recipes for Ink Sac [02:55:41] [Client thread/INFO] [ANCTECH]: Removed 0 recipes for Rose Red [02:55:41] [Client thread/INFO] [ANCTECH]: Removed 0 recipes for Cactus Green [02:55:41] [Client thread/INFO] [ANCTECH]: Removed 0 recipes for Cocoa Beans [02:55:41] [Client thread/INFO] [ANCTECH]: Removed 0 recipes for Lapis Lazuli [02:55:41] [Client thread/INFO] [ANCTECH]: Removed 0 recipes for Purple Dye [02:55:41] [Client thread/INFO] [ANCTECH]: Removed 0 recipes for Cyan Dye [02:55:41] [Client thread/INFO] [ANCTECH]: Removed 0 recipes for Light Gray Dye [02:55:41] [Client thread/INFO] [ANCTECH]: Removed 0 recipes for Gray Dye [02:55:41] [Client thread/INFO] [ANCTECH]: Removed 0 recipes for Pink Dye [02:55:41] [Client thread/INFO] [ANCTECH]: Removed 0 recipes for Lime Dye [02:55:41] [Client thread/INFO] [ANCTECH]: Removed 0 recipes for Dandelion Yellow [02:55:41] [Client thread/INFO] [ANCTECH]: Removed 0 recipes for Light Blue Dye [02:55:41] [Client thread/INFO] [ANCTECH]: Removed 0 recipes for Magenta Dye [02:55:41] [Client thread/INFO] [ANCTECH]: Removed 0 recipes for Orange Dye [02:55:41] [Client thread/INFO] [ANCTECH]: Removed 0 recipes for Bone Meal [02:55:41] [Client thread/INFO] [ANCTECH]: Removed 0 recipes for White Stained Clay [02:55:41] [Client thread/INFO] [ANCTECH]: Removed 0 recipes for Orange Stained Clay [02:55:41] [Client thread/INFO] [ANCTECH]: Removed 0 recipes for Magenta Stained Clay [02:55:41] [Client thread/INFO] [ANCTECH]: Removed 0 recipes for Light Blue Stained Clay [02:55:41] [Client thread/INFO] [ANCTECH]: Removed 0 recipes for Yellow Stained Clay [02:55:41] [Client thread/INFO] [ANCTECH]: Removed 0 recipes for Lime Stained Clay [02:55:41] [Client thread/INFO] [ANCTECH]: Removed 0 recipes for Pink Stained Clay [02:55:41] [Client thread/INFO] [ANCTECH]: Removed 0 recipes for Gray Stained Clay [02:55:41] [Client thread/INFO] [ANCTECH]: Removed 0 recipes for Light Gray Stained Clay [02:55:41] [Client thread/INFO] [ANCTECH]: Removed 0 recipes for Cyan Stained Clay [02:55:41] [Client thread/INFO] [ANCTECH]: Removed 0 recipes for Purple Stained Clay [02:55:41] [Client thread/INFO] [ANCTECH]: Removed 0 recipes for Blue Stained Clay [02:55:41] [Client thread/INFO] [ANCTECH]: Removed 0 recipes for Brown Stained Clay [02:55:41] [Client thread/INFO] [ANCTECH]: Removed 0 recipes for Green Stained Clay [02:55:41] [Client thread/INFO] [ANCTECH]: Removed 0 recipes for Red Stained Clay [02:55:41] [Client thread/INFO] [ANCTECH]: Removed 0 recipes for Black Stained Clay [02:55:41] [Client thread/INFO] [ANCTECH]: Removed 0 recipes for White Stained Clay Just passing the item itself totally works as intended. [03:03:17] [Client thread/INFO] [ANCTECH]: Removed 28 recipes for dyePowder [03:03:17] [Client thread/INFO] [ANCTECH]: Removed 16 recipes for tile.clayHardenedStained.name Thanks again for that too. No telling how long I would have wasted not figuring out that. Developing the Spiral Power Mod . こんにちは!お元気ですか?
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.