If you want to open a GUI that extends GuiScreen directly, you can just use
Minecraft.getMinecraft().displayGuiScreen(new YourGUI())
. Else, you will have to use packets.
That doesn't work, as if you want to read the info from addInformation()
you must be in the gui, and in a gui you can sneak, so that will always be false when in a gui.
Yes, there's a method called
getDrops
in the Block class in which you need to return an
ArrayList<ItemStack>
containing the ItemStacks that you want to drop.
The
readFromNBT()
method only gets called on the server side. So the server knows the saved value (1000mB), but the client still has the default value (0mB). To solve this add the methods from brandon3055 post.