Skip to content

Base Configuration

Each GUI configuration is stored in its own JSON file within the guis folder inside the main /config/skiesguis/ folder.

  • Directoryconfig
    • Directoryskiesguis
      • Directoryguis
        • example_gui.json
        • second_gui.json

Every GUI can have a base set of configuration options defined. Most importantly, the "title", "size", and "items" options are necessary for most use cases. Additional options can be defined for added functionality.

{
"title": "<dark_gray>Example GUI",
"size": 3,
"alias_commands": [],
"alias_permission": "",
"open_actions": {},
"close_actions": {},
"open_requirements": {},
"items": {}
}

The message displayed at the top of the GUI. Uses MiniMessage formatting!

"title": "<dark_gray>Example Title"

The number of rows the GUI should contain. Integer value between 1 and 6.

"size": 3

A MAP of items to display. Each entry needs its unique string identifier. See the Items page for more information.

"items": {}

A list of commands that can be used to access this GUI. Each entry is a new command, which should only be one word and unused by another mod. A restart is required to register commands!

"alias_commands": [
"example"
]

The permission node required to use any of the Alias Commands. If undefined, the default skiesguis.open.<gui_id> permission will be used. Set to "" to set no permission requirement.

"alias_permission": "skiesguis.open.example"

A list of Actions that are executed when the GUI is opened. Any Open Requirements must succeed before any actions are executed. Each action can have Requirements defined that must also succeed before each actions is executed. See Actions for more information.

"open_actions": {
"action_1": {
"type": "COMMAND_CONSOLE",
"click": "ANY",
"commands": ["give %player% diamond 1"]
},
"action_2": {
"type": "MESSAGE",
"click": "ANY",
"message": ["<blue>Thanks for opening my menu!"]
}
}

A list of Actions that are executed when the GUI is closed. Each action can have Requirements defined that must also succeed before each actions is executed. See Actions for more information.

"close_actions": {
"action_1": {
"type": "COMMAND_CONSOLE",
"click": "ANY",
"commands": ["give %player% diamond_sword 1"]
},
"action_2": {
"type": "MESSAGE",
"click": "ANY",
"message": ["<red>Sad to see you go. Take this for the road!"]
}
}

Define requirements that must be met before a GUI can be opened. Optionally, Actions can be defined to execute when the requirements have failed or succeeded. See Requirements for more information on requirements.

"view_requirements": {
"requirements": {
"example_requirement_1": {
"type": "PERMISSION",
"permission": "test.permission"
}
},
"deny_actions": {
"deny_action_1": {
"type": "MESSAGE",
"message": ["<red>You do not have permission!"]
}
},
"success_actions": {
"success_action_1": {
"type": "MESSAGE",
"message": ["<green>You do have permission!"]
}
}
},