Parkour

Parkour

570k Downloads

Course Settings GUI

A5H73Y opened this issue ยท 2 comments

commented

Utilising the inventorygui library and some nice Java 8 features, a menu could be created that allows for most Course setting to be modified using a GUI.
Some settings are toggleable on and off, which will be indicated by a Green item for an enabled setting, Red for disabled.
Settings that require string or numeric input will require a new Conversation to start with the sole purpose of taking in user input and feeding it into the same path they would take if they entered the command. This will mean that all the same validation applies.
Each Item will require a heading and a description for what will happen once clicked.
This will obviously have to be limited to Admins, but it should make maintaining courses more straightforward without the need to look up commands each time.
There are some commands which require too many additional arguments, which will be unable to be added to the GUI.

Prototype image:
Prototype

commented

The Course Settings GUI can be opened by Admins using "/pa settings [course]". The available functions will be performed to change most of the Course attributes. These include:

  • Toggling Course Options (e.g. reward once status)
  • Single value input Conversation (these will match the command input, meaning validation is still executed)
  • Start a Parkour Converation (e.g. Course prize)

The Appearance of the GUI can be modified in the strings.yml, allowing for reordering the options or removing some entries altogether.

commented

IMO, having signs for user input in GUIs provides a more seamless experience. Although in many cases stuff won't fit onto a sign. Another small QOL would be that in material prize, provide an option to put an item into the GUI as the prize. This could also be an easy way to get item NBT data.