Jump to content

Recommended Posts

Posted

Greetings,

 

I'm looking to create a GUI that allows users to make changes to the block's TileEntity data. For example, the user right-clicks my block and the GUI provides them a text field for entering a number and a check box to simulate a boolean. When they close the GUI these values get written to the block's TileEntity.

 

Unfortunately the only GUI tutorials I've found (on the wiki and minecraft forums) are either too old and use the deprecated "CommonProxy" and / or they demonstrate a GUI container such as an extended chest.

 

Are there any tutorials out there that pertain to a GUI interface that allows users to enter data? Right now my block is fully functional but I wanted to give the user access to change some fields without having to exit the game and modify the config file.

 

Thanks

 

PS:

 

All I really need is something to point me in the direction of setting up the GUI for input. I can figure out the TileEntity portion on my own, I think.

Posted

Courses.vswe.se has courses which deals with intermediate and advance GUI's which deals with a lot of different inputs in the GUI which in turn is saved in the TE on the server side :)

If you guys dont get it.. then well ya.. try harder...

Posted

You have GOT to be joking... Since when did CommonProxy / ClientProxy become depracted?!?!?!?!?!!?!?!?!?

 

I believe you MAY have read my tutorial.. Probably not though. I don't get into any of the interesting GUI stuff, but it gets a basic GUI working.

 

I can give you some pointers if you want, just PM me or ask via this thread. ( I can't be bothered to type it all out if you don't want it xD )

I am Mew. The Legendary Psychic. I behave oddly and am always playing practical jokes.

 

I have also found that I really love making extremely long and extremely but sometimes not so descriptive variables. Sort of like what I just did there xD

Posted

You have GOT to be joking... Since when did CommonProxy / ClientProxy become depracted?!?!?!?!?!!?!?!?!?

 

I don' t know when exactly but every tutorial I watched for 1.5.2 and 1.6.2 says you no longer need to muck around with the CommonProxy crap. My SmartLights mod works just fine without it anyway.

 

Edit: In

for 1.5.1, Wuppy explains (at around 25 seconds) that you don't need CommonProxy anymore.

 

I believe you MAY have read my tutorial.. Probably not though. I don't get into any of the interesting GUI stuff, but it gets a basic GUI working.

 

I can give you some pointers if you want, just PM me or ask via this thread. ( I can't be bothered to type it all out if you don't want it xD )

 

Can you link to your tutorial? I'm not sure if it is one that I found or not.

Posted

Courses.vswe.se has courses which deals with intermediate and advance GUI's which deals with a lot of different inputs in the GUI which in turn is saved in the TE on the server side :)

 

Thanks, I'll check it out. I posted his Minecraft series on the wiki but it didn't include GUIs. On his YouTube channel I saw the "Climbing the Interface Ladder" playlist but didn't bother clicking on it because there was no description and I thought it was about implementing interfaces in Java.

Posted

Hehe well interface has more than one meaning ;)

 

Anyways enjoy those courses and uhm ClientProxy and CommonProxy can't be depracted, CommonProxy extends nothing and therefore it's impossible for it to be depracted as it's a self made class ;)

 

I can also assure you that they work in 1.6.X just like they did in 1.5 and 1.4 :)

If you guys dont get it.. then well ya.. try harder...

Posted

Hehe well interface has more than one meaning ;)

 

Anyways enjoy those courses and uhm ClientProxy and CommonProxy can't be depracted, CommonProxy extends nothing and therefore it's impossible for it to be depracted as it's a self made class ;)

 

I can also assure you that they work in 1.6.X just like they did in 1.5 and 1.4 :)

 

Deprecated has nothing to do with it extending anything or being a "self made class", it simply means it's been superceded or replaced. The process of using CommonProxy has been superceded by the process of not using CommonProxy.

 

Deprecation is a status applied to a computer software feature, characteristic, or practice indicating it should be avoided, typically because of it being superseded

 

As I linked a few posts above, Wuppy explains in a 1.5.1 video that they're not necessary. I don't use them and haven't run into any issues with my 1.5.2 mod.

Posted

Proxies are helper classes, they were never compulsory. Thus can't be deprecated unless Mojang provides a better system.

If you know how to check for client side on your own, you don't need them anyway.

 

And you never needed CommonProxy for Gui handling. IGuiHandler is an interface.

Posted

Proxies are helper classes, they were never compulsory. Thus can't be deprecated unless Mojang provides a better system.

 

I guess it's a matter of opinion then. When most of the earlier 1.3.x and 1.4.x tutorials go through great lengths explaining proxies and how to set them up, it feels a bit compulsory. None that I saw in that generation ever said "don't bother with proxies, they're not necessary".

 

Naturally when several 1.5.x tutorials arrive and tell you not to bother with proxies, it feels a bit deprecated, as in "not necessary".

Posted

Well what is "necessary" is usually a subjective definition :P

 

I certainly never needed to have a common and client proxy, not in 1.6 and not in 1.3 but hey they made my code become so much cleaner and simpler so for me they where "necessary" ;)

 

In any case, they can be used and there's no reason to avoid using them nor do you have to use them and therefore they aren't deprecated.

 

So I guess it's settled then as is the question of GUI tutorials ? :D

 

If you guys dont get it.. then well ya.. try harder...

Posted

Well what is "necessary" is usually a subjective definition :P

 

I certainly never needed to have a common and client proxy, not in 1.6 and not in 1.3 but hey they made my code become so much cleaner and simpler so for me they where "necessary" ;)

 

In any case, they can be used and there's no reason to avoid using them nor do you have to use them and therefore they aren't deprecated.

 

So I guess it's settled then as is the question of GUI tutorials ? :D

 

I always use my CommonProxy class as my GuiHandler... I am not entirely sure why though. Oh well...

 

Everyone has their own coding style, this is even shown in simple things like whether or not they use the proxies. I learnt modding with proxies, so I am sticking with just because that is the way I know how to do it, and it is the way I do it. Everyone is different like I above stated. And yes Mazetar, the way the OP described deprecated was a bit... Lacking in actual definition. And as you pointed out, it cannot actually be deprecated. Thanks for clearing that, it was making me worried xD

I am Mew. The Legendary Psychic. I behave oddly and am always playing practical jokes.

 

I have also found that I really love making extremely long and extremely but sometimes not so descriptive variables. Sort of like what I just did there xD

Posted

So I guess it's settled then as is the question of GUI tutorials ? :D

 

Well not really. I still haven't found a GUI tutorial that deals with a simple GUI that itsn't a container. Basically all I want to have is a textbox where the player enters a number and a checkbox. These values get written to the TileEntity as "lightValue" and "isLit", respectively.

 

So far the tutorials I've seen extend GuiContainer. I'm pretty sure I all I need is GuiScreen but still looking into it.

 

PS:

 

Not to beat a dead horse but I posted a definition of deprecated so I don't see how you could say it lacked actual definition. So far it seems nobody subscribes to that definition: the method of coding with proxies has been superceded by the method of coding without them. That is a valid application of the word deprecated.

 

Even the 1.5.2 examples in the wiki don't use them anymore.

Posted

So I guess it's settled then as is the question of GUI tutorials ? :D

 

Well not really. I still haven't found a GUI tutorial that deals with a simple GUI that itsn't a container. Basically all I want to have is a textbox where the player enters a number and a checkbox. These values get written to the TileEntity as "lightValue" and "isLit", respectively.

 

So far the tutorials I've seen extend GuiContainer. I'm pretty sure I all I need is GuiScreen but still looking into it.

 

PS:

 

Not to beat a dead horse but I posted a definition of deprecated so I don't see how you could say it lacked actual definition. So far it seems nobody subscribes to that definition: the method of coding with proxies has been superceded by the method of coding without them. That is a valid application of the word deprecated.

 

Even the 1.5.2 examples in the wiki don't use them anymore.

 

I am sorry if I didn't fully explain myself. I was meaning it in a literal sense. The fact that the Common/Client proxy classes are made by the user means that they CANNOT be actually deprecated...

I am Mew. The Legendary Psychic. I behave oddly and am always playing practical jokes.

 

I have also found that I really love making extremely long and extremely but sometimes not so descriptive variables. Sort of like what I just did there xD

Posted

I'll put this in a spoiler so we can all move on:

 

 

dep·re·cate  (dpr-kt)

tr.v. de·pre·cat·ed, de·pre·cat·ing, de·pre·cates

1. To express disapproval of; deplore.

2. To belittle; depreciate.

3. Computer Science To mark (a component of a software standard) as obsolete to warn against its use in the future so that it may be phased out.

 

su·per·sede  (spr-sd)

tr.v. su·per·sed·ed, su·per·sed·ing, su·per·sedes

1. To take the place of; replace.

2. To cause to be set aside, especially to displace as inferior or antiquated. See Synonyms at replace.

 

Since Common/ClientProxy still work and will continue to work for the foreseeable future as one of several methods to accomplish the same things, it's not really correct to say they've been replaced with something 'new' unless they were absolutely required in earlier versions, but now are optional and planned on being discarded at some point in the future. From what I understand, they were always optional, as they are just user-defined classes, and you can use them or not as Mazetar pointed out. It's all a matter of personal preference.

 

 

 

So anyway, how is your Gui coming along? I know this has been mentioned, but GuiEditSign and TileEntitySign should both contain loads of useful information for you, as that's an example of a non-Container-based Gui that edits a text field.

Posted

I'll put this in a spoiler so we can all move on:

 

 

dep·re·cate  (dpr-kt)

tr.v. de·pre·cat·ed, de·pre·cat·ing, de·pre·cates

1. To express disapproval of; deplore.

2. To belittle; depreciate.

3. Computer Science To mark (a component of a software standard) as obsolete to warn against its use in the future so that it may be phased out.

 

su·per·sede  (spr-sd)

tr.v. su·per·sed·ed, su·per·sed·ing, su·per·sedes

1. To take the place of; replace.

2. To cause to be set aside, especially to displace as inferior or antiquated. See Synonyms at replace.

 

Since Common/ClientProxy still work and will continue to work for the foreseeable future as one of several methods to accomplish the same things, it's not really correct to say they've been replaced with something 'new' unless they were absolutely required in earlier versions, but now are optional and planned on being discarded at some point in the future. From what I understand, they were always optional, as they are just user-defined classes, and you can use them or not as Mazetar pointed out. It's all a matter of personal preference.

 

 

 

Thank you for that... :D

I am Mew. The Legendary Psychic. I behave oddly and am always playing practical jokes.

 

I have also found that I really love making extremely long and extremely but sometimes not so descriptive variables. Sort of like what I just did there xD

Posted
So far the tutorials I've seen extend GuiContainer. I'm pretty sure I all I need is GuiScreen but still looking into it.

 

For what you are trying to do it's the same logic regardless of it being a guiContainer or guiScreen :)

If you guys dont get it.. then well ya.. try harder...

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



  • Recently Browsing

    • No registered users viewing this page.
  • Posts

    • I need to know what mod is doing this crash, i mean the mod xenon is doing the crash but i want to know who mod is incompatible with xenon, but please i need to know a solution if i need to replace xenon, i cant use optifine anymore and all the other mods i tried(sodium, lithium, vulkan, etc) doesn't work, it crash the game.
    • I have been trying to solve a consistent crashing issue on my brother's computer where it will crash during the "Scanning Mod Candidates" phase of the loading process that starts when you click the play button on the Minecraft launcher. The issue seems to stem from a missing library that it mentions in the log file I provide below. I might I'm missing the bigger issue here for a smaller one but hopefully someone can find what I'm missing. Here's all of the stuff that I've been able to figure out so far: 1. It has nothing to do with mods, the crash happened with a real modpack, and even when I made a custom modpack and launched it without putting ANY mods into it (That is where the log file comes from by the way). 2. I have tried to find this class like a file in the Minecraft folders, but I've had no luck finding it (I don't think it works like that, but since I really don't understand how it works, I just figured I'd try). 3. I haven't seen anyone else have this issue before. 4. I know that my modpack (with mods) does work since I've run it on my computer, and it works fantastic. For some reason my brother's computer can't seem to run anything through curseforge. 5. This is for Minecraft version 1.20.1, Minecraft launcher version 3.4.50-2.1.3, forge 47.3.0, and curseforge app version 1.256.0.21056 6. My brother is using a Dell laptop from 6 years ago running Windows 10 (If you think more info on this would help, please ask as I do have it. I'm just choosing not to put it here for now). 7. I have reinstalled the curseforge app and installed Minecraft version 1.20.1. I have not reinstalled Minecraft or forge 47.3.0 but I didn't know if that would help. 8. I had an error code of 1 Please let me know if there is anything else that I am missing that you would like me to add to this post/add in a comment! Lastly, many thanks in advance to whoever can help! ------------- LOG FILE (latest.log) ------------- (from /Users/<NAME OF USER>/cursforge/minecraft/Instances/<THE NAME OF MY EMPTY MODPACK>/logs/latest.log) (This was made after running an empty modpack with same versions for all apps) ("[REDACTED]" is not the actual text from the log, it is me replacing text I figured wouldn't be necessary for fixing and would hurt my privacy) https://pastebin.com/hxXvGGEK ------------- DEBUG.LOG (I realized that I should have put this here first after I had done all of the work on putting latest.log in) -------------------- (again, "[REDACTED]" is not the actual text from the log, it is me replacing text I figured wouldn't be necessary for fixing and would hurt my privacy) https://pastebin.com/Fmh8GHYs
    • Pastebin... https://pastebin.com/Y3iZ85L5   Brand new profile, does not point to a mod as far as I can tell, my fatal message just has something about mixins. Don't know much about reading logs like this, but am genuinely stuck, please help. Java updated, pc restarted.
    • I was playing minecraft, forge 47.3.0 and 1.20.1, but when i tried to play minecraft now only crashes, i need help please. here is the crash report: https://securelogger.net/files/e6640a4f-9ed0-4acc-8d06-2e500c77aaaf.txt
  • Topics

×
×
  • Create New...

Important Information

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