PAPI 货币配置
PAPI 货币配置文件 papi-currencies.yml 用于定义基于 PlaceholderAPI 的自定义货币。
配置位置
plugins/AIOShop/papi-currencies.yml
前置要求
- 安装 PlaceholderAPI 插件
- 安装对应的 PAPI 扩展(如 Vault 扩展)
完整配置示例
yaml
# PAPI 货币定义配置文件
currencies:
# Vault 经济系统
vault_eco:
display-name: "&6&l金币"
placeholder: "vault_eco_balance"
add-command: "eco give {player} {amount}"
take-command: "eco take {player} {amount}"
description: "通过 PAPI 访问的 Vault 经济系统金币"
# PlayerPoints 点券
player_points:
display-name: "&b&l点券"
placeholder: "playerpoints_points"
add-command: "points give {player} {amount}"
take-command: "points take {player} {amount}"
description: "PlayerPoints 点券系统"
# 自定义积分系统
custom_points:
display-name: "&d&l积分"
placeholder: "myplugin_points"
add-command: "mypoints add {player} {amount}"
take-command: "mypoints remove {player} {amount}"
description: "自定义积分系统"配置项说明
| 属性 | 类型 | 必填 | 说明 |
|---|---|---|---|
display-name | 字符串 | ✅ | 货币显示名称,支持颜色代码 |
placeholder | 字符串 | ✅ | PAPI 占位符,不包含 % 符号 |
add-command | 字符串 | ✅ | 增加余额的命令模板 |
take-command | 字符串 | ✅ | 扣除余额的命令模板 |
description | 字符串 | ❌ | 货币描述 |
命令变量
| 变量 | 说明 |
|---|---|
{player} | 玩家名称 |
{amount} | 货币数量 |
在商店中使用
作为购买货币
yaml
items:
vip_item:
display-name: "&a VIP 商品"
buy-price:
amount: 100
currency: "PAPI"
currency-name: "vault_eco" # 对应 papi-currencies.yml 中的键名
buy-rewards:
self:
type: "ITEM"
item: "diamond"
amount: 1作为出售奖励
yaml
sell-rewards:
points:
type: "CURRENCY"
amount: 50
currencyType: "PAPI"
currencyName: "custom_points"常见 PAPI 扩展
Vault 扩展
bash
/papi ecloud download Vault占位符:vault_eco_balance
PlayerPoints 扩展
bash
/papi ecloud download PlayerPoints占位符:playerpoints_points
其他插件
许多插件都提供 PAPI 扩展,可以通过以下方式查找:
bash
# 列出所有已安装的扩展
/papi list
# 搜索可用扩展
/papi ecloud list all
# 下载扩展
/papi ecloud download <扩展名>测试占位符
使用 PAPI 命令测试占位符是否正常工作:
bash
# 解析占位符
/papi parse <玩家> %vault_eco_balance%
# 示例输出
[PAPI] vault_eco_balance: 1000.0注意事项
- 占位符格式:
placeholder字段不需要包含%符号 - 命令权限:
add-command和take-command通过控制台执行,确保命令格式正确 - 数值精度:PAPI 返回的余额可能是字符串,插件会自动转换为数值
- 异步安全:货币操作在主线程执行,确保命令兼容
调试
如果 PAPI 货币不工作:
- 检查 PlaceholderAPI 是否已安装
- 检查对应的 PAPI 扩展是否已安装
- 使用
/papi parse测试占位符 - 检查命令是否可以在控制台执行
- 查看服务器日志中的错误信息
