CommandGUI
Customizable Command GUI for Spigot/Paper
Quick challenge
How far can you run before the mobs catch you?
Minecraft check
Confirm your run
Complete the quick check to get your code.
CommandGUI
CommandGUI Plugin
Overview
CommandGUI is a Minecraft Spigot plugin that provides players with a custom GUI to execute commands as the player interacting with the GUI. The GUI is fully configurable, allowing you to define items, commands, and layout. Players can also receive a custom item that opens the GUI when used.
---
Features
- Command Reload: A player-friendly interface to execute commands with a click. - Command Reload: Define items, their appearance, and the commands they execute in the GUI via the configuration file. - Command Reload: Automatically adjusts the GUI size based on the number of items. - Command Reload: Players can use a custom tool to open the GUI. - Command Reload: Easily reload the plugin's configuration with `/commandgui reload`.
---
Commands
`/commandgui`
- Aliases: Opens the Command GUI for the player. - Aliases: `/cg`
`/commandgui tool`
- Aliases: Gives the player a tool that opens the Command GUI when used. - Aliases: `/cg tool`
`/commandgui give <player>`
- Aliases: Gives the specified player the Command GUI Tool. - Aliases: `/cg give <player>`
`/commandgui help`
- Aliases: Displays all the plugin's commands. - Aliases: `/cg help`
`/commandgui reload`
- Aliases: Reloads the plugin's configuration. - Aliases: `/cg reload`
---
Permissions
| Permission | Description | Default | |---------------------|--------------------------------------|---------| | `commandgui.use` | Allows player to open the GUI. | OP | | `commandgui.bypass` | Allows player to bypass cooldowns. | OP | | `commandgui.tool` | Gives player a tool to open the GUI. | OP | | `commandgui.give` | Gives another player the GUI Tool. | OP | | `commandgui.reload` | Allows reloading the plugin config. | OP |
---
Installation
1. Download the CommandGUI plugin `.jar` file. 2. Place the `.jar` file in your server's `plugins` directory. 3. Start the server to generate the default configuration file. 4. Configure the plugin by editing `plugins/CommandGUI/config.yml`. 5. Reload the plugin with `/commandgui reload` or restart the server.
---
Configuration
The `config.yml` file allows you to customize the items in the GUI.
```yaml
General settings
language-file: "en_us.yml" # Default language file. Changing languages will break existing CommandGUI tools! verbose-mode: false # Set to true to enable verbose messages globally for all items (default fallback) gui-size-mode: "dynamic" # Options: "dynamic", "fixed" gui-tool: "COMPASS" # This is the item used to open the GUI given by "/cg tool"
gui-items: - slot: 0 name: "&aGo to Spawn" command: "spawn" item: "COMPASS" run-as-player: true cooldown: 0 # No cooldown verbose: true # Always log interaction for this item lore: - "&7Click to teleport to spawn"
- slot: 1 name: "&cHeal" command: "heal" item: "GOLDEN_APPLE" run-as-player: true cooldown: 30 # 30 seconds cooldown verbose: false # Never log interaction for this item lore: - "&7Click to heal yourself"
- slot: 2 name: "&bDiamonds" command: "give %player% diamond 1" item: "DIAMOND" run-as-player: false cooldown: 60 # 60 seconds cooldown
No verbose field; falls back to global verbose-mode
lore: - "&bReceive a diamond!" - "&3This is a server reward." ```
Configuration Options
General Settings
- `gui-tool`: The language file to use (default: `en_us.yml`). - `gui-tool`: If `true`, displays verbose messages for item interactions globally (default: `false`). - `gui-tool`: Determines the size of the GUI. Options: - `"dynamic"`: Adjusts the inventory size based on the number of items. - `"fixed"`: Sets the GUI size to a fixed double chest (54 slots). - `gui-tool`: Sets the tool used to open the GUI.
GUI Items
Each item in the GUI has the following options:
- `verbose`: The display name of the item in the GUI, with color codes supported (e.g., `&aGo to Spawn`). - `verbose`: The command executed when the item is clicked (e.g., `spawn` or `give %player% diamond 1`). - `verbose`: The item's material (e.g., `DIAMOND`, `GOLDEN_APPLE`, `COMPASS`). - `verbose`: The inventory slot for the item (optional, auto-increment if not provided). - `verbose`: A list of text lines displayed as the item's lore (optional, supports color codes). - `verbose`: If `true`, the command will run as the player. If `false`, the command will run as the console (default: `false`). - `verbose`: The cooldown in seconds before the item can be used again (default: `0` for no cooldown). - `verbose`: If `true`, overrides the global `verbose-mode` and enables verbose logging for this item (optional).
---
Usage
1. Opening the GUI: - Use the `/commandgui` command to open the GUI. - Alternatively, use the tool provided with `/commandgui tool`.
2. Adding Items: - Edit the `config.yml` file to add or modify items in the GUI. - Reload the configuration with `/commandgui reload`.
---
Contributing
Contributions are welcome! Please fork the repository, make your changes, and submit a pull request.
---
License
This plugin is licensed under the Apache License 2.0.
---