仓库配置
仓库写在 warehouse: 节点下。每个子节点就是一个仓库 ID,玩家指令和按钮动作都会使用这个 ID。
基础结构
yaml
warehouse:
"仓库1":
main-id: "54:0"
main-name: "&6随身仓库1 {status}"
main-lore:
- "&7这是一个随身仓库"
- "&a[点击解锁/打开]"
title: "&6随身仓库"
size: 5
open-condition: []
unlock-condition:
- "eco:{10}"
button:
1:
item: "54:0"
name: "&6一键存入"
lore:
- "&a将背包物品尽可能存入本仓库"
handle:
- "dislodge"仓库字段
| 字段 | 说明 |
|---|---|
main-id | 总览界面中显示的物品 |
main-name | 总览界面中的仓库名称,支持 {status} |
main-lore | 总览界面中的仓库说明 |
title | 打开仓库后的 GUI 标题 |
size | 仓库行数,每行 9 格 |
open-condition | 已解锁后打开仓库时额外检查的条件 |
unlock-condition | 解锁仓库需要满足的条件 |
button | 底部 9 个按钮槽位,槽位范围 0-8 |
解锁条件
| 写法 | 说明 |
|---|---|
unlock:{仓库ID} | 必须已解锁指定仓库 |
eco:{数量} | 扣除 Vault 金币 |
point:{数量} | 扣除 PlayerPoints 点券 |
item:{物品名#数量} | 扣除背包内指定名称物品 |
papi:{条件} | 变量条件判断,支持 >、>=、==、<、<= |
permission:{权限} | 需要拥有权限 |
nopermission:{权限} | 需要没有权限 |
打开条件
open-condition 支持 papi、permission、nopermission。该条件只在仓库已解锁后打开时判断。
yaml
open-condition:
- "papi:{%player_level% >= 10}"
- "permission:{warehouse.open.vip}"按钮动作
button 每个槽位可配置多个 handle,按顺序执行。
| 动作 | 说明 |
|---|---|
dislodge | 将玩家背包内可存物品尽可能存入当前仓库 |
sort:排序组ID | 按 sort-button 中的分组排序 |
message:文本 | 给玩家发送提示 |
open:仓库ID | 打开指定仓库 |
fj:仓库ID | 进入指定仓库分解模式 |
sell:仓库ID | 进入指定仓库出售模式 |
remove:仓库ID | 进入指定仓库删除模式 |
delay:秒数 | 延迟执行后续动作 |
command:指令 | 后台执行指令 |
close | 关闭界面 |
警告
remove 是删除模式,建议只给管理员或确认型菜单使用,避免玩家误删高价值物品。