Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

[1.16.4] help with container items


Glados1235
 Share

Recommended Posts

hello! I am new to Minecraft modding and I'm modding for 1.16.4 I want to create an item that doesn't get used and takes damage during crafting (like ic2's hammer or cutters)

this is the first mod I'm trying to make to learn and I prefer to learn through examples

here is what I have for the item in question LEGO_MOLD or lego_mold

 

my Item Init class

https://pastebin.com/X6pjkUEi

 

the container item class I think is correct? (followed a tutorial kiiinda know how it works but not really)

https://pastebin.com/Jpwerbgy

 

and the recipe I want to affect

https://pastebin.com/dYPCxdjf

 

I know the container class is what's needed but how do I make the LEGO_MOLD the item it's affecting?

like I said I'm brand new to this and don't know much java so examples would be super helpful!

and it this is in the wrong place please tell me i dont post on forms much thanks!

Edited by Glados1235
forgot the version in the title
Link to comment
Share on other sites

  • Glados1235 changed the title to [1.16.4] help with container items
6 minutes ago, diesieben07 said:

The lego_mold class is never used in the code you posted.

i know its not thats why im asking how do i do that like i said i know its the thing i need to use but how to i apply that lego_mold class to a item like the lego mold item

Link to comment
Share on other sites

41 minutes ago, diesieben07 said:

Do you know basic Java?

sort of i mostly know basic c# or unity code i came here to ask for help as i found barely anything on the topic of the post and i learn through examples as alot of stuff just wont make sense to my brain 

Link to comment
Share on other sites

11 hours ago, diesieben07 said:

Then you should know how to make an instance of a class and how inheritance works...

I don't that is why I'm asking for help here as there are no tutorials or examples anywhere that help with what I'm trying to do I've been trying for a few days now to figure it out and I cant I don't know what I'm supposed to do as no one wants to help

Link to comment
Share on other sites

Line 20 is wrong.

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.

Link to comment
Share on other sites

2 hours ago, Draco18s said:

Line 20 is wrong.

i had a feeling but i don't know how to properly fix it i know there is the .containerItem() function that i can add to the item but no matter what way i try i does not work

Edited by Glados1235
spelling
Link to comment
Share on other sites

Look at line 20 very carefully.
Think about what D7 said in his first reply.

Edited by Draco18s

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.

Link to comment
Share on other sites

okay so i sorta got it

i added 

public static final LegoMold legoMold = new LegoMold();

and changed line 20 to

	public static final RegistryObject<Item> LEGO_MOLD = ITEMS.register("lego_mold",
			() -> new Item(new Item.Properties().group(LegoModItemGroup.LEGO_MOD).maxStackSize(1).containerItem(legoMold)));

and now it works but instead of giving me back the mold but damaged it just gives me a air block so i assume i need to tell it what item to give?

Link to comment
Share on other sites

4 hours ago, Glados1235 said:

it just gives me a air block so i assume i need to tell it what item to give?

thats because ItemStack#shrink reduce the count of the Item
and 1 - 1 = 0, and if the item has a number of 0 it is removed (replaced by air)

Link to comment
Share on other sites

8 hours ago, Glados1235 said:

okay so i sorta got it

i added 

public static final LegoMold legoMold = new LegoMold();

and changed line 20 to

	public static final RegistryObject<Item> LEGO_MOLD = ITEMS.register("lego_mold",
			() -> new Item(new Item.Properties().group(LegoModItemGroup.LEGO_MOD).maxStackSize(1).containerItem(legoMold)));

and now it works but instead of giving me back the mold but damaged it just gives me a air block so i assume i need to tell it what item to give?

I don't know why you did this. Your item class was already perfectly fine. You just need to actually use it.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share



×
×
  • Create New...

Important Information

By using this site, you agree to our Privacy Policy.