ChestShop
ChestShop 是箱子商店模块。它和前面的菜单型商店不同,既有 GUI,也有箱子、告示牌、库存和数量档位这些线下交互逻辑。
当前版本中,ChestShop 不使用 shops/*.yml 作为入口层,货币也只支持模块级配置。
默认文件
ChestShop/settings.ymlChestShop/signs.ymlChestShop/ui/create.ymlChestShop/ui/edit.ymlChestShop/ui/history.ymlChestShop/ui/shop.ymlChestShop/ui/stock.yml
ChestShop/settings.yml
Enabled: true
Bindings:
Commands:
Bindings:
- 'chestshop'
- 'cshop'
Register: true
Show-In-Help: true
Priority: 60
Condition: 'perm matrixshop.chestshop.use'
Entry:
Open-GUI-On:
- SIGN_RIGHT_CLICK
- CHEST_RIGHT_CLICK
Direct-Trade-On: []
Stock:
Double-Chest-Mode: expand_only
Trade:
Tax:
Enabled: false
Mode: percent
Value: 3.0
Currency:
Key: vault
字段解释:
| 字段 | 说明 |
|---|---|
Enabled | 是否启用箱子商店。 |
Bindings.Commands.Bindings | 默认命令关键字。 |
Register | 直接注册独立命令。 |
Priority | 别名优先级。 |
Condition | 默认权限节点。 |
Entry.Open-GUI-On | 哪些交互动作会直接打开 GUI。 |
Entry.Direct-Trade-On | 哪些交互动作会走直接交易。默认是空列表。 |
Stock.Double-Chest-Mode | 双箱库存处理方式,示例是 expand_only。 |
Trade.Tax | 箱子商店税配置。玩家购买时税从店主收入中扣除,玩家出售时税从玩家收入中扣除。 |
Currency.Key | 箱子商店统一使用的货币 key。 |
ChestShop/signs.yml
Formats:
BUY:
- '&8[ChestShop]'
- '&aBUY'
- '&f{item} x{amount}'
- '&e{buy-price}'
SELL:
- '&8[ChestShop]'
- '&6SELL'
- '&f{item} x{amount}'
- '&e{sell-price}'
DUAL:
- '&8[ChestShop]'
- '&bDUAL'
- '&f{item} x{amount}'
- '&a{buy-price} &7/ &6{sell-price}'
字段解释:
| 字段 | 说明 |
|---|---|
Formats.BUY | 纯买入商店的四行告示牌格式。 |
Formats.SELL | 纯卖出商店的格式。 |
Formats.DUAL | 双向商店的格式。 |
{item} / {amount} / {buy-price} / {sell-price} | 运行时替换的占位符。 |
使用建议
- 想改玩家打开箱店后的布局:改
ui/shop.yml、ui/edit.yml、ui/create.yml。 - 想改告示牌显示样式:改
signs.yml。 - 想改变“右键箱子”“右键告示牌”的行为:改
Entry.Open-GUI-On和Direct-Trade-On。
当前货币优先级
ChestShop 当前不走商店级或商品级货币配置,直接使用:
ChestShop/settings.yml -> Currency.Key- 默认回退
vault