Описание
# ShopDonutSMP
ShopDonutSMP is a Paper plugin that recreates the DonutSMP shop experience with a clean categories GUI, per-shop menus, and a quantity selector. It is buy-only and supports Vault and PlayerPoints per item.
Built for server owners who want a fast, customizable shop layout with a main categories file and separate shop files.
## Why ShopDonutSMP
- DonutSMP-style categories menu
- Per-shop config files for clean organization
- Buy-only flow (no selling)
- Quantity selector with increment/decrement buttons
- Per-item currency selection (VAULT or PLAYERPOINTS)
- Safe purchase checks for balance and inventory space
- Reload configs without restarting
## Features
- Categories GUI with configurable size, title, slots, and border
- Unlimited shop files in shops/.yml
- Price and currency shown in item lore
- Gray glass border filler for the DonutSMP look
- Soft-depend on Vault and PlayerPoints (missing currency disables items)
## Commands
- /shop
- /shop reload
## Permissions
- shop.use
- shop.admin
## Config Structure
The plugin uses three types of files:
- config.yml for messages and the quantity selector GUI
- categories.yml for the main menu layout and category slots
- shops/.yml for each shop menu
Example categories.yml:
```yml
gui:
title: "&8Categories"
size: 27
border:
material: GRAY_STAINED_GLASS_PANE
name: " "
slots:
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26]
fill-empty: true
categories:
end:
material: END_STONE
name: "&eEnd"
lore:
- "&7Blocks and items from the End."
slot: 11
```
Example shops/.yml:
```yml
gui:
title: "&8End Shop"
size: 54
border:
material: GRAY_STAINED_GLASS_PANE
name: " "
slots: []
fill-empty: true
items:
end_stone:
material: END_STONE
name: "&eEnd Stone"
price: 5
currency: VAULT
slot: 10
```
Currency values:
- VAULT
- PLAYERPOINTS
## Messages
All user-facing text is editable in config.yml under messages, including:
- no-permission
- reloaded
- not-enough-funds
- not-enough-space
- purchase-success
## Compatibility
- Server software: Paper
- Minecraft API target: 1.21.x
- Java: 17
## Install
1. Build or download the release jar.
2. Place it in your server plugins folder.
3. Install Vault and PlayerPoints if you want those currencies.
4. Start the server once to generate config files.
5. Edit config.yml, categories.yml, and shops/.yml.
6. Run /shop reload.