Description of the problem / Suggestion
Currently, Jobs Reborn does not offer a way to customize the GUI windows for job browsing (/jobs browse) and daily quests (/jobs quests). The built-in GUIs are hardcoded and cannot be modified by server administrators.
Many server owners (including myself) would like to be able to:
Customize the Job Browser GUI (/jobs browse): Change which job icons appear, their position (slots), display names, lore, and colors. Currently, this is not possible without using external plugins like DeluxeMenus, which is not ideal.
Add custom buttons to the Daily Quests GUI (/jobs quests): Allow administrators to add functional buttons (e.g., "Close", "Back to Main Menu", custom shop items) to the quest GUI.
Proposed Solution
I suggest implementing a GUI configuration system similar to what many modern plugins use, where the GUI layout is defined in YAML files.
Example structure:
plugins/Jobs/GUI/JobsBrowser.yml (for /jobs browse)
plugins/Jobs/GUI/QuestsGUI.yml (for /jobs quests)
This approach would:
Allow full control over the GUI layout (slot positions, rows, title).
Enable server owners to add their own buttons (close, back, info, shop, etc.).
Maintain compatibility by allowing the plugin to dynamically place quest items into a reserved range of slots.
Description of the problem / Suggestion
Currently, Jobs Reborn does not offer a way to customize the GUI windows for job browsing (/jobs browse) and daily quests (/jobs quests). The built-in GUIs are hardcoded and cannot be modified by server administrators.
Many server owners (including myself) would like to be able to:
Customize the Job Browser GUI (/jobs browse): Change which job icons appear, their position (slots), display names, lore, and colors. Currently, this is not possible without using external plugins like DeluxeMenus, which is not ideal.
Add custom buttons to the Daily Quests GUI (/jobs quests): Allow administrators to add functional buttons (e.g., "Close", "Back to Main Menu", custom shop items) to the quest GUI.
Proposed Solution
I suggest implementing a GUI configuration system similar to what many modern plugins use, where the GUI layout is defined in YAML files.
Example structure:
plugins/Jobs/GUI/JobsBrowser.yml (for /jobs browse)
plugins/Jobs/GUI/QuestsGUI.yml (for /jobs quests)
This approach would:
Allow full control over the GUI layout (slot positions, rows, title).
Enable server owners to add their own buttons (close, back, info, shop, etc.).
Maintain compatibility by allowing the plugin to dynamically place quest items into a reserved range of slots.