tutorial:extendedscreenhandler
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
tutorial:extendedscreenhandler [2020/08/14 16:27] – [Registering our ScreenHandler] manymoney2 | tutorial:extendedscreenhandler [2020/08/14 17:41] – [Result] manymoney2 | ||
---|---|---|---|
Line 151: | Line 151: | ||
public class ExampleMod implements ModInitializer { | public class ExampleMod implements ModInitializer { | ||
- | | + | |
- | public static final BlockItem BOX_BLOCK_ITEM; | + | |
- | public static final BlockEntityType< | + | |
public static final ScreenHandlerType< | public static final ScreenHandlerType< | ||
static { | static { | ||
- | | + | |
- | BOX_BLOCK_ITEM = Registry.register(Registry.ITEM, | + | |
- | + | ||
- | //The parameter of build at the very end is always null, do not worry about it | + | |
- | BOX_BLOCK_ENTITY = Registry.register(Registry.BLOCK_ENTITY_TYPE, | + | |
- | + | ||
//we now use registerExtended as our screenHandler now accepts a packetByteBuf in its Constructor | //we now use registerExtended as our screenHandler now accepts a packetByteBuf in its Constructor | ||
BOX_SCREEN_HANDLER = ScreenHandlerRegistry.registerExtended(BOX, | BOX_SCREEN_HANDLER = ScreenHandlerRegistry.registerExtended(BOX, | ||
Line 173: | Line 167: | ||
} | } | ||
</ | </ | ||
+ | |||
+ | ====== Result ====== | ||
+ | You have now seen how to transfer data when the ScreenHandler is opened. In the image you can see the result: The Blocks title is now the block position. Do note that this is just a demonstration, | ||
+ | Setting the position as the title would be possible alot easier. | ||
+ | |||
+ | You might wonder: Can i transfer this data again even after the Screen was opened? | ||
+ | This is possible by sending custom Packets (see: [[tutorial: | ||
+ | You might also want to have a look at the BlockEntityClientSerializable Interface from the Fabric API. | ||
+ | |||
+ | If you only want to sync integer values you can use PropertyDelegates SEE MY NEXT TUTROIAL | ||
+ | |||
+ | {{: | ||
+ | |||
tutorial/extendedscreenhandler.txt · Last modified: 2022/12/17 15:38 by miir