Jump to content

Creating a basic GUI dialog


Suese

Recommended Posts

Hi.  I'm brand-new to 'Forge. 

 

I'm still not understanding where/how to browse help files, so excuse my ignorance...

 

I've set up my Eclipse environment and compiled 'Forge.  I've figured out how to make an overlay that persists on screen displaying "Hello World" in the corner in bright white letters.

 

 

1. I want to know more about creating basic GUI dialogs. 

 

Specifically, I want to create a dialog that reads "Hello world" with a button "OK", and perhaps (if ambitious) add an event to the OK button that sends a message via chat over the network.

 

 

2. A pointer to the help files would be great too.  I can't find it on the web site. 

 

The tutorial for "Containers and GUIs" seems to be mixing two subjects together, and it is confusing.  I don't want to muck around with stacks of blocks and creating a tool chest.  A Basic GUI dialog with text buttons are all that matter to me.  That tutorial needs to be separated into two subjects.

 

 

 

3. Ultimately what I want to do is create basic GUI dialogs from chat events. 

 

The server might output in chat ">>DIALOG:Teleport to the moon?:Yes:No" and the client pops up a dialog.  When the user clicks "Yes"  it  might send via console "/answer yes".  Note that I am working with CraftBukkit server, not the 'Forge Server. 

 

Thanks!

 

Link to comment
Share on other sites

As for help files, there is a "Read me before posting" sticky.

 

The "Container and GUIs" tutorial is merely a practical example of a simple use case.

Learn what you need from it: in Forge, the simplest way to pop a GUI is to use a player instance and implement a IGuiHandler.

 

Buttons are implemented into GuiScreen.

Link to comment
Share on other sites

I definitely read the READ ME BEFORE POSTING.

 

API Documentation is missing:

 

http://jd.minecraftforge.net/    - Does not work.  Broken link.

 

The Wiki is not very informative as far as good reference material.

 

What would be really handy is a document seperated into sections:

 

Client Networking Events

Server Networking Events

GUI & Overlays

etc..

 

I assume this is in the API documentation files that are missing.

 

I'm not sure what the "Universal Binary" is,  but when I click for help it sends me back to the support forum. 

 

 

Link to comment
Share on other sites

Awesome.  Thank you.

 

I figured out a lot more of what I was doing.  GuiScreen was the key to my success.  I might even write a tutorial outlining how to make a custom GUI with buttons.  It was extremely simple once I found GuiScreen and all the simple built-in-examples such as IngameMenu.  Beginner's stuff really.

 

I have successfully completed the task I set out to perform.  Server-side indusced pop-ups.

 

I actually had more trouble with Java's implementation of JSON than I did with Minecraft Forge.  So Kudos to the Minecraft Forge team.

Link to comment
Share on other sites

Hey there!

 

If it helps out, one of the problems I faced with making custom GUI is actually displaying it. So, here is some code for you to put in your mod to display it easily!

 

Mod File:

 

First, make a variable for your common proxy class

 

public static CommonProxy proxy;

 

Common Proxy Class:

 

public void displayGUI(EntityPlayer player) {



}

 

Client Proxy Class:

 

public void displayGUI(EntityPlayer player) {

FMLClientHandler.instance().displayGuiScreen(player, new GuiScreenClass());

}

 

Then, whenever you want to display the GUI, just insert this code:

 

ModFileName.proxy.displayGuiScreen(paramEntityPlayer);

 

Hoped this helped!

 

Romejanic

Romejanic

 

Creator of Witch Hats, Explosive Chickens and Battlefield!

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.