Disconsented Posted August 27, 2014 Posted August 27, 2014 I am looking for an implementation of GuiButton (net.minecraft.client.gui.GuiButton) to attempt to figure out how to properly implement it Trying to figure out how to make the buttons render correctly (I suspect the size of the buttons is the issue here) http://pastebin.com/QxwtXjtG Quote
hugo_the_dwarf Posted August 27, 2014 Posted August 27, 2014 20 for default buttons, if you want buttons that are a bit bigger, you're going to have to make your own guiButton, I know I just needed a button that had a few extra variables to store info in so I just extended GUIButton and added them. Quote Currently updating my Mod to 1.10.2 https://bitbucket.org/hugo_the_dwarf/riseoftristram2016/src?at=master
Disconsented Posted August 27, 2014 Author Posted August 27, 2014 On 8/27/2014 at 4:29 AM, hugo_the_dwarf said: 20 for default buttons, if you want buttons that are a bit bigger, you're going to have to make your own guiButton, I know I just needed a button that had a few extra variables to store info in so I just extended GUIButton and added them. Cheers for confirming my suspicions Any ideas on how to make the buttons activate-able? Edit: It looks like I have to do it myself Quote
hugo_the_dwarf Posted August 27, 2014 Posted August 27, 2014 Yeah for making your buttons activate-able (im assuming you mean toggle-able, click it once its on, click again its off. Rinse and repeat) when you make your custom buttons just add in a Boolean called "active" and you can guess what the true and false states will do. then you can just access the button (if you save it as a list in your GUI) MyButton1.active and do your stuff based on its state. this is as far as I can help, i'm still tinkering with it myself. Quote Currently updating my Mod to 1.10.2 https://bitbucket.org/hugo_the_dwarf/riseoftristram2016/src?at=master
Disconsented Posted August 28, 2014 Author Posted August 28, 2014 @Override protected void mouseClicked(int par1, int par2, int par3) { System.out.println("A click "+par1+" "+par2+" "+par3); for (int i = 0; i < buttons.size(); i++){ if (buttons.get(i).mousePressed(Minecraft.getMinecraft(), par1, par2)){ buttons.get(i).enabled = false; } else{ buttons.get(i).enabled = true; } } } That is what I managed to come up with and its the behavior I want (Only one button can be selected at a time) Quote
hugo_the_dwarf Posted August 28, 2014 Posted August 28, 2014 since it is a click and a toggle you can just use button.get(i).enabled = !button.get(i).enabled; this is just a quicker way of toggling the code or you can use: button.get(i).enabled = button.get(i).enabled == true ? false : true; //You might be able to leave out the '==' since it is a boolean and you only need to say bool or !bool for true and false Quote Currently updating my Mod to 1.10.2 https://bitbucket.org/hugo_the_dwarf/riseoftristram2016/src?at=master
Recommended Posts
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.