Jump to content

[1.7.10] One tile entity for multiple containers/gui ?


FuzeIII

Recommended Posts

Hey !

I'm trying to make a block with multiple tabs in it. Each tab is going to have his own inventory and I was wondering if it was (or wasn't) recommended to use multiple GUIContainers and Containers with a same TileEntity ? If so, can I switch between the two using

 

Minecraft.getMinecraft().thePlayer.openGui(Mod.instance, ID_CUSTOM_GU,
				Minecraft.getMinecraft().theWorld, tile.xCoord, tile.yCoord, tile.zCoord);

 

Thanks

Link to comment
Share on other sites

No, it is a waste to make multiple GuiContainers for each tab. If the bottom part (the player inventory) never changes throughout the tab changes, there is only a need to update the part of the container that changes when a certain tab is selected. Let's say you have three tabs, tab0, tab1, and tab2. In your container, tell the game "if tab0 is selected, add these slots to the inventory, if tab1 is selected, add these instead" etc. Only ever change what you need to change. So, again, if the player inventory slots never change when switching tabs, you don't have to update any slot positions for the player inventory.

I am not a cat. I know my profile picture is sexy and amazing beyond anything you could imagine but my cat like features only persist in my fierce eyes. I might be a cat.

Link to comment
Share on other sites

Also, remember that Minecraft#getMinecraft() IS CLIENT SIDE ONLY. So, you can never use it in the container class, because that class only runs on the server side.

I am not a cat. I know my profile picture is sexy and amazing beyond anything you could imagine but my cat like features only persist in my fierce eyes. I might be a cat.

Link to comment
Share on other sites

Packets are your best friend. When the tab is clicked, it will be run on client side only. So, in order to inform the server the the container update needs to run, you'll need to send a packet containing what the new selected tab number is. So, you click the tab, update the gui, send the packet, update the container.

I am not a cat. I know my profile picture is sexy and amazing beyond anything you could imagine but my cat like features only persist in my fierce eyes. I might be a cat.

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.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
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.

Announcements



×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.