MenuService
General Description
MenuService is a plugin and API which allows plugins to create and use complex menu systems.
Status Update
It's been a long time since an update. I'm sorry for keeping everyone in the dark. With the start of the fall semester, I've been really busy with all of my classes. I've made some large updates to the plugin and have just released a new Beta version. Note that this version is still a beta; there are probably plenty of errors and missing features. Please give it a try and let me know what you find.
MenuService is open source. you can see the source on Github. https://github.com/m0pt0pmatt/MenuService
You can get a 1.6.2 version of the latest jar here: MenuService v0.8 for 1.6.2 For developers, you can get a 1.6.2 version of the latest API here: MenuService API v0.8 for 1.6.2
If you want to see the planned features, check out this Google Document. See what work is being done!
Permissions
Commands
Documentation
I'm working on making some simple tutorials. An example of a menu config file can be found here. Check out this tutorial for beginners: Check it out! Check out this tutorial for developers: Check it out!
@H2NCH2COOH
I'm waiting for a better API and a little api tutorial to create a XP Storage Plugin with menus, can't wait for this :P
@mig4ng
Thank you
I'm sorry that it has been a long time since I last updated. But I'm suffering a bad flu. I believe once I get over it, I'll update ASAP.
Some Suggestions: Add custom size menu like 9x1, 9x2, 9x3, 9x4, 9x5 and 9x6 Add custom color for name and lore
The rest is perfect :P And of course if you want add a video creating a menu using api for the newbies to learn it ;)
After all you've created one of the most useful plugins on bukkit ;)
@keensta
Thank you. However I do have a reason creating this plugin/API thing: think about two different plugins showing two different menus to the same player at the same time. By putting all the work inside a single plugin, such conflict can be avoided.
Very nice idea you have going I would use this api if I hadn't all ready created my own menu code. Just some suggestions add some more options to your event. Like the ability to get the lore they set and so on.
Could Someone Make A Tutorial? I'm Not Very Good At Java But I REALLY Wanna Put This On My Server...
@kcaps
About the command thing.... just letting you know that I've been working on something similar to that! dev.bukkit.org/server-mods/commandgui
That would be awesome. Thanks!
@kcaps
Thank you very much as you have pushed this beyond my initial intention. All of your suggestions are great and I'll try to implement them.
I've made the change that menus will adjust its number of rows to fit the options. But I think maybe I'll need to add all those features before the next version will come out.
And thank you again.
BTW, would you mind me setting you Contributor of this project?
I love this idea. I think what mossman may mean is improved external command integration and a more friendly interface for non-coders. Each button (menu item) can be paired up with a command from another plugin, which can be executed through the player, the player as op, or the console. These commands may then also feature variables like %player (player who sent it) or %loc (location of the sender), to name a few possibilities. To make this more accessible to the general population, creation of these menus would likely be done through a YAML config file. Even better would be in game menu editing. For example, when a player types /menu create <name> an inventory opens up where they can place the item the want to represent the command. Then by clicking the item they would exit the menu and the chat would then request: Please enter the command, and the player could simply type in what they wanted to happen when the item was clicked. Various function of in game menu editing could be incorporated, like a separate command for rearranging items inside of the inventory, changing the name and lore of each item, and editing the command of each item, and finish with /menu save. Perhaps even, for a cleaner feel to some shorter menus, it may become possible to decrease the number of rows the chest-menu has. Anyways, thank you for putting forth this plugin, as I believe it has enormous potential.
- kcaps
@mossman50
However, I do understand how other plugins can utilize this, it's quite unclear how non-plugins will use this plugin. So please tell me your exact requirement so I can code it into the plugin.
@Corrado117
Yeah!
@Corrado117
yes please make this or some other way for people like me who owns a server but has no clue about java code.
@BrvtvsC
Thanks! I'll update the API
This is a very nice idea. I suggest including a version of the makeOption() method that takes a String array to set the lore of the menu item, to allow for more detailed options.
@Corrado117
Thank you for comment. Very nice point, I'll try to add it
This looks incredibly cool, but PLEASE add commands as well to create menus. It would make things way easier to use and allow non-Java programming server owners able to use this as well.