GUI Customization
GUI Structure
All GUIs are defined in YAML files located in /plugins/SimpleClaimSystem/guis/. Each GUI has the following base properties:
# Example: banned players GUI
gui-title: "gui-banned-title" # language file key
rows: 3 # 1-6 rows (slots = rows × 9)
slots: [0,1,2,3,4,5,6,7,8] # positions for list items
slots-sound: "minecraft:ui.button.click"
- gui-title — references a key in your language file (e.g.
en_US.yml) - rows — number of rows (1 to 6), total slots = rows × 9
- slots — array of slot positions where list items will be displayed
- slots-sound — sound played when clicking a list slot
Item Properties
Each item in a GUI supports the following properties:
| Property | Description |
|---|---|
slot | Position(s) in the GUI grid — supports single value or array (e.g. [1,2,3]) |
material | Minecraft material type (e.g. DIAMOND_SWORD) |
custom_model_data_value | Custom model data number (for resource packs / ItemsAdder) |
item_model_key | Resource pack item model identifier |
target-title | Display name — language file key |
target-lore | Item description — language file key |
target-button-on | Button state text when active |
target-button-off | Button state text when inactive |
sound | Click sound effect (e.g. minecraft:ui.button.click) |
permission | Required permission to see/use this item (optional) |
Click Actions
Four click types are supported: left, right, shift_left, shift_right.
Three action types are available:
| Action | Syntax | Description |
|---|---|---|
close | LEFT:CLOSE | Close the GUI |
msg | LEFT:MSG:Hello! | Send a message to the player |
cmd | LEFT:CMD:PLAYER:command | Execute a command (PLAYER or CONSOLE) |
Multiple actions can be chained for the same click type:
# Example item with actions
MyButton:
slot: 22
material: EMERALD
target-title: "custom-button-title"
target-lore: "custom-button-lore"
sound: "minecraft:entity.experience_orb.pickup"
actions:
left:
- "CMD:PLAYER:gamemode creative"
- "MSG:&aMode changed!"
- "CLOSE"
right:
- "CMD:CONSOLE:give %player% diamond 1"
Reserved items like BackPage, NextPage, Filter, etc. have predefined functions.