Описание
# GUI Shop
A fabric server-side mod to create and manage GUI shops.
They can be later opened by using commands, allowing integration with NPC mods like [Taterzens](https://www.curseforge.com/minecraft/mc-mods/taterzens).
The mod supports [LuckPerms](https://www.curseforge.com/minecraft/mc-mods/luckperms) for permissions.
## Installation
Put the .jar file in the "mods" folder
**(Requires [Fabric API](https://www.curseforge.com/minecraft/mc-mods/fabric-api) and [a supported Economy](#supported-economies))**
## Commands and permissions
All commands can be used by admins (permission level 3) or by users/groups with the specific permission
| Description | Command | Permission |
|----------------------------|------------------------------------------------------------------------------------------------------|--------------------------|
| Main command | `/guishop` | `automessage.main` |
| Create a shop | `/guishop create ` | `automessage.create` |
| Delete a shop | `/guishop delete ` | `automessage.delete` |
| Add an item in a shop | `/guishop additem ` | `automessage.additem` |
| Remove an item from a shop | `/guishop removeitem ` | `automessage.removeitem` |
| Open a shop for a player | `/guishop open ` | `automessage.open` |
| List all shops | `/guishop list` | `automessage.list` |
| List all items in a shop | `/guishop list ` | `automessage.list` |
| Force save config | `/guishop forcesave` | `automessage.forcesave` |
| Reload config file | `/automessage reload` | `automessage.reload` |
### Commands examples
Create a shop: `/guishop create "Test shop"`"
Add item in a shop: `/guishop additem "Diamond" "minecraft:diamond" 250.00 100.00 "This is a Diamond\\An expensive diamond\\Shiny" "{}" "1:10:32:64"` *(you can split each description line by using "\\\\", and you can input up to 4 quantities splitted by ":")*
Remove item from shop: `/guishop removeitem "Test shop" "Diamond"`
Open a shop and show it to a specific player: `/guishop open "Test shop" "Steve"`
## Configuration
You can find the config file in `./config/guishop.json`
Both items' names and descriptions support [Simplified Text Format](https://placeholders.pb4.eu/user/text-format/).
You can even add items from the JSON file (check [JSON Example](#json-example)). This can be useful when your `additem` command would be very long, or to easily set a NBT *(remember to reload the mod using `/guishop reload` after editing the config file)*
### JSON example
```json5
{
"shops": [
{
"shopName": "Shop number one",
"items": [
{
"name": "The boat",
"material": "minecraft:acacia_chest_boat",
"description": [
"This is a nice boat",
"Very beautiful"
],
"buyPrice": 50.0,
"sellPrice": 25.0,
"nbt": "{}",
"quantityList": [
1
]
},
{
"name": "BBQ Sword",
"material": "minecraft:diamond_sword",
"description": [],
"buyPrice": 0.0,
"sellPrice": 0.0,
"nbt": "{Damage:0,Enchantments:[{id:\"fire_aspect\",lvl:2},{id:\"sweeping\",lvl:2}],display:{Lore:['[{\"text\":\"Crispy and tasty\",\"italic\":false}]'],Name:'[{\"text\":\"The BBQ\",\"italic\":false}]'}}",
"quantityList": [
1
]
},
{
"name": "Amethyst",
"material": "minecraft:large_amethyst_bud",
"description": [
"Such a spectacular",
"amethyst",
"SHINY"
],
"buyPrice": 200.0,
"sellPrice": 100.0,
"nbt": "{}",
"quantityList": [
1,
40,
64
]
}
]
},
{
"shopName": "A second shop",
"items": []
}
]
}
```
## Supported Economies:
- [Impactor](https://modrinth.com/mod/impactor)
## Showcase


