插件变量
LyGemReload 提供 PlaceholderAPI 扩展,变量标识为 lgr。插件启动时仅在检测到 PlaceholderAPI 已启用后注册扩展;未安装或未启用 PlaceholderAPI 时,LyGemReload 不会注册以下变量。
依赖要求
| 依赖 | 说明 |
|---|---|
| PlaceholderAPI | 必须安装并成功启用,LyGemReload 才会注册 lgr 变量。 |
LyGemReload 变量
| 变量 | 说明 |
|---|---|
%lgr_message_<消息节点>% | 读取 LyGemReload config.yml 中 message.<消息节点> 的内容,并将 & 颜色符号转换为 Minecraft 颜色代码。 |
<消息节点> 对应 config.yml 的 message 配置项名称,例如 inlay-success、out-success。
如果玩家对象为空,变量返回空字符串。除 message_ 前缀外,未登记的 lgr 变量也返回空字符串。
使用方式
变量可以放入支持 PlaceholderAPI 的文本、指令或其它配置中。LyGemReload 自身会在以下位置调用 PlaceholderAPI:
- 读取
config.yml的消息变量。 - 计算宝石
chance中的变量和公式。 - 判断宝石
condition中的papi:{...}条件。 - 判断
placeholder-inlay中的papi:{...}条件。 - 处理宝石的成功指令、失败指令和全服消息。
- 计算宝石属性、宝石展示 lore 和额外道具结果中的变量。
示例:
text
%lgr_message_inlay-success%该变量会读取以下配置:
yaml
message:
inlay-success: '&a镶嵌成功!'变量最终返回替换后的消息内容。
可用消息节点
以下节点来自默认 config.yml。变量读取的是当前配置文件中的键,因此也可以读取管理员自行添加的其它消息节点。
| 消息节点 | 默认用途 | 支持的消息占位符 |
|---|---|---|
out-success | 宝石拆卸成功提示。 | 无 |
out-failed | 宝石拆卸失败提示。 | 无 |
out-item-error | 拆卸工具不正确提示。 | 无 |
out-not-isassembled | 宝石不可拆卸提示。 | 无 |
inlay-equip-error | 装备不正确提示。 | 无 |
inlay-gem-error | 宝石不正确提示。 | 无 |
inlay-gem-not-to-item | 宝石无法镶嵌到当前装备提示。 | 无 |
inlay-buff-error | 额外道具不正确提示。 | 无 |
inlay-condition-error | 不满足镶嵌条件提示。 | 无 |
inlay-eco-error | 金币不足提示。 | 无 |
inlay-success | 宝石镶嵌成功提示。 | 无 |
inlay-failed | 宝石镶嵌失败提示。 | 无 |
slot-success | 开孔成功提示。 | {now}、{max} |
slot-failed | 开孔失败提示。 | 无 |
slot-max | 开孔次数达到上限提示。 | {now}、{max} |
placeholder-inlay | 达到变量镶嵌上限提示。 | {max} |
the-gem-exist-lore-prevent-inlay | 宝石包含禁止镶嵌 lore 时的提示。 | 无 |
the-item-exist-lore-prevent-inlay | 装备包含禁止镶嵌 lore 时的提示。 | 无 |
这些是消息配置中的普通占位符,不属于 PlaceholderAPI 变量。使用时应直接保留在对应消息文本中,例如:
yaml
message:
slot-success: '&a开孔成功, 该开孔道具已对该装备使用{now}/{max}次!'配置中的 PlaceholderAPI 用法
宝石条件
宝石配置的 condition 支持 papi:{...} 条件。条件内容会先经过 PlaceholderAPI 替换,再进行逻辑判断。
yaml
condition:
- 'papi:{%player_level% > 0}'支持的比较和逻辑形式由插件条件解析器处理,包括:
- 数值比较:
>、>=、<、<=、==、!= - 逻辑与:
&& - 逻辑或:
|| - 布尔值:
true、false - 字符串相等或不等比较
变量镶嵌条件
启用 config.yml 的 placeholder-inlay-enable 后,placeholder-inlay 下的条件也支持 PlaceholderAPI:
yaml
placeholder-inlay-enable: true
placeholder-inlay:
大于100级:
max-inlay: 10
condition:
- 'papi:{%player_level% > 100}'插件按照 placeholder-inlay 的配置顺序判断条件,并使用第一个满足全部条件的配置。条件为空的配置可以作为默认项。
宝石成功率
宝石配置中的 chance 会先替换 PlaceholderAPI 变量,再计算四则运算公式:
yaml
chance: '%player_level%*0.01'宝石属性与文本
宝石的 attribute、show-lore,以及部分额外道具结果支持 PlaceholderAPI 变量。变量替换完成后,插件还会处理随机数值和四则运算表达式。
yaml
attribute:
- '&6等级神力 +{%player_level%*2-%player_level%*5-%.0f}'指令和全服消息
宝石的 success-command、fail-command、server-message,以及拆卸工具的 success-command 支持 PlaceholderAPI 变量。
yaml
success-command:
- '[console]tell %player_name% 你镶嵌了一颗{gem}成功.'其中 {gem}、{item} 等为 LyGemReload 自身处理的文本占位符,不属于 PlaceholderAPI 变量;%player_name% 等变量由 PlaceholderAPI 处理。
注意事项
- 消息节点名称必须与
config.yml中message下的键完全一致。 - 消息节点不存在时,
%lgr_message_<消息节点>%返回空字符串。 - 变量内容中的
&会被替换为 Minecraft 颜色代码§。 - 该扩展只提供
message_开头的变量;其它未登记的lgr变量返回空字符串。 - 变量解析需要 PlaceholderAPI 已安装并成功启用。
papi:{...}条件、宝石成功率、属性文本和指令中的 PlaceholderAPI 变量同样需要 PlaceholderAPI 正常工作。- 如果使用依赖 MySQL 的其它配套功能,必须安装 LyMySQLCore 并成功连接数据库后相关功能才会生效;本页面列出的 PlaceholderAPI 变量本身不读取 MySQL 数据。