Posted July 25, 201312 yr Hi, I'm trying to use a bucket of water in a recipe but as well the crafted item being produced, an empty bucket is returned to the player's inventory. Is there some way to stop this from happening? I've tried searching, the only result I can find is an unanswered post from 6 months ago on this forum And I've tried looking through the code but to no avail. Even if I had somewhere to start I could actually try things but I have no idea, or is it I'm just blindly walking by an obvious solution? Well, if that's the case then I apologise haha
July 25, 201312 yr Hello, the code responsible for this is located at SlotCrafting.onPickupFromSlot (at least in 1.5). I don't think it's possible without modifying the method (probably via ASM). I was looking how to solve this as well, but I was too lazy to write another ASM hook so I rather added an empty bucket to a recipe (so one bucket is consumed and one returned). mnn.getNativeLang() != English If I helped you please click on the "thank you" button.
July 25, 201312 yr Author Ahh I'd been looking for that class a few nights ago but must have forgot about it! Thanks! Yeah, I might just have to go with the lazy way for the moment.. oh well
July 25, 201312 yr you can do it when making a recipe like i did here GameRegistry.addShapelessRecipe(new ItemStack(pdust), new ItemStack(Medieval.pbag.setContainerItem(Medieval.bag))); so what says here that when i get the item pdust and will make pbag into a container which will return a pdust and a bag I like helping people because i was also in a same problem and i do not like unfinished work, so a thank you will be enough for the people im helping and a thank you to the people that helped me
July 25, 201312 yr Author You've got it the wrong way round haha, I want to stop the return of a bucket when placing a bucket of water in the recipe
July 26, 201312 yr oo lol sorry my mistake tought you wanted this lol I like helping people because i was also in a same problem and i do not like unfinished work, so a thank you will be enough for the people im helping and a thank you to the people that helped me
July 26, 201312 yr You've got it the wrong way round haha, I want to stop the return of a bucket when placing a bucket of water in the recipe but since i am so nice i looked for a way made codes and got to a simple one took time to understand but it was because it was to simple lol... so in the recipe item.bucketwater just add .setContainerItem(null) so it should look like this 'w', Item.bucketWater.setContainerItem(null), I like helping people because i was also in a same problem and i do not like unfinished work, so a thank you will be enough for the people im helping and a thank you to the people that helped me
July 26, 201312 yr o and you are welcome I like helping people because i was also in a same problem and i do not like unfinished work, so a thank you will be enough for the people im helping and a thank you to the people that helped me
July 26, 201312 yr 'w', Item.bucketWater.setContainerItem(null), I have a feeling that this ^ will break all crafting recipes with bucket of water - IMO all recipes will never return a bucket when using a bucket with water. mnn.getNativeLang() != English If I helped you please click on the "thank you" button.
July 26, 201312 yr Author Sadly, mnm is right Is there some event called when a recipe is crafted? And, conveniently, holds a var to which recipe was crafted?
July 26, 201312 yr yeah, it could work. too bad that almost all auto-crafters will return the bucket (they don't call crafting handlers). mnn.getNativeLang() != English If I helped you please click on the "thank you" button.
July 26, 201312 yr well first of all there is no recipe that uses waterbuckets and secondly you are right about the return buckets on other recipes I like helping people because i was also in a same problem and i do not like unfinished work, so a thank you will be enough for the people im helping and a thank you to the people that helped me
July 26, 201312 yr i also tried that on one the bucket doesnt return and the other does but if you do that it doesnt work. it will return it even with null even so it still works and if you dont want what i used its ok i tried helping u.u I like helping people because i was also in a same problem and i do not like unfinished work, so a thank you will be enough for the people im helping and a thank you to the people that helped me
July 28, 201312 yr Author Sorry been away the past few days, @ralphyrafa - I appreciate the help It's just that I'd prefer not to edit those classes incase, for example, another mod used water in one their recipes. Besides, I might require water buckets to work normally in crafting later on. @diesieben07 - I'm pretty new to this so I'm not exactly sure of what that would involve but I'll look into it, it's a shame what mnm pointed out, that auto-crafters ignore crafting handlers In the end I might just have to add an empty bucket to the recipe.
July 28, 201312 yr Only one properly working crafting "machine" I found so far is from Immibis - mod tubestuff - "Automatic Crafting Table MkII". (Other mods - MFR, BC, TE, Forestry and AE doesn't support crafting handler and/or custom recipes. Last time I checked it, it was on 1.5.2 so something might have changed.) Using ICraftingHandler is quite simple, you just create a class implementing that interface and register it on mod load - GameRegistry.registerCraftingHandler. Then in "onCrafting" method of your new class you check if it's your recipe and remove the bucket. mnn.getNativeLang() != English If I helped you please click on the "thank you" button.
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.