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

[1.16.5] Adding arguments to DeferredRegister and RegistryObject


Recommended Posts

I got the new way of registering things working. I want to send the tile entity through my container so I have access to the BlockPos in the container (for sending packets). I'm just not sure how, if I add the tile to the constructor of the container how do I add the tile to the register?

 

https://github.com/Beardlessbrady/Currency-Mod/blob/master-1.16/src/main/java/com/beardlessbrady/gocurrency/init/CommonRegistry.java

Link to post
Share on other sites

On the server you create your container in INamedContainerProvider, so there you can just pass the TE in normally.

You then need to send whatever data is necessary to the client using the extraData argument of NetworkHooks.openGui. This data then shows up in your IContainerFactory as the data parameter.

Link to post
Share on other sites
11 minutes ago, BeardlessBrady said:

What do you mean by "On the server you create your container in INamedContainerProvider"?

Here: https://github.com/Beardlessbrady/Currency-Mod/blob/master-1.16/src/main/java/com/beardlessbrady/gocurrency/blocks/vending/VendingTile.java#L79-L83

This is then called from NetworkHooks.openGui (you give it the TE as the INamedContainerProvider, because you use ContainerBlock#getContainer, which returns the TE).

Link to post
Share on other sites
9 hours ago, BeardlessBrady said:

What format do I include data into the packetBuffer for the client?

It's just a PacketBuffer, you can put data in whatever format you want (it's just a byte array essentially). You just have to make sure you read and write it in the same way.

 

9 hours ago, BeardlessBrady said:

For instance if I want to include the BlockPos?

PacketBuffer#writeBlockPos, PacketBuffer#readBlockPos.

Link to post
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.



  • Recently Browsing

    No registered users viewing this page.

  • Posts

    • I want to make texture pack and I have a problem with models. I want to make sides of diamond armor logner, can anybody help me? When i change this in layers, and render my texture pack it just turning to mess.
    • Experienced modders, I come to you with hat in hand and request if you could share with me your thoughts and suggestions for a direction I should take on implementing a feature in my mod. First, the concept. What I would like to achieve is to provide the end user a json config file in which they can place a list of biomes and provide some addition details/criteria to apply to the world generation about those biomes. The first I would like to achieve is applying a min and max distance that a biome can spawn at from the center of the world. For example, if they wanted to make sure that desert biome was never any closer to 0, 0 then say 200 blocks they could have that in the json and then the world would skip desert as an allowed biome whenever the player is generating terrain before 200 blocks out. So far I have been able to implement my own WorldType and BiomeProvider and strong arm the getBiomeNoise function to check the distance loaded in from center against the value loaded in from the config file and just wholesale swap it for a different hardcoded biome choice, but obvious that brute force attack is not ideal at all. So I have two questions maybe you can offer advise about: 1. I would actually like this feature to allow whatever the existing generation algorithm is to do its things and just make this one additional criteria check, but obviously this seems unlikely. I have been reading up on Mixins but I am not sure yet if this will let me achieve my goals or if I even SHOULD go that route. 2. What do you think is a better strategy for replacing the chosen biome with a new one? Look for the closest neighbor biome and go that route? Whats the best way to do that?   Thanks ahead of time for anyone who even bothered to read this lol.
    • Yeah, I changed the JAVA_HOME variable to the path of my JDK (C:\Program Files\Java\jdk1.8.0_281) and it worked. Thanks.
    • use NetworkHooks#openGui look how minecraft create container, but basically you need the container and a screen tutorials are not the best solution to learn something, read the forge docs and look here in the forum, then try to create a container, if you have problems creating it you can still ask
  • Topics

  • Who's Online (See full list)

×
×
  • Create New...

Important Information

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