插件变量
LyShopReload 注册的变量前缀为 lshop,需要安装并启用 PlaceholderAPI 后使用。
变量格式如下:
text
%lshop_变量名%变量中的
商店id、商品id、槽位、货币id和标记id必须替换为实际配置值。
限购变量
限购变量用于读取全服或当前玩家的限购标记已购买次数。标记必须先在 config.yml 的 server-tag 或 player-tag 中注册,并在重载后生效。
| 变量 | 返回内容 |
|---|---|
%lshop_servertag_标记id% | 指定全服限购标记已购买次数 |
%lshop_playertag_标记id% | 当前玩家指定个人限购标记已购买次数 |
示例:
| 变量 | 说明 |
|---|---|
%lshop_servertag_全服每周限购标记1% | 返回全服标记 全服每周限购标记1 已使用次数 |
%lshop_playertag_个人每周限购标记1% | 返回当前玩家标记 个人每周限购标记1 已使用次数 |
返回值为数字。标记不存在或当前玩家没有对应记录时,返回 0。
货币变量
货币必须先在 config.yml 的 register-currency 中注册。货币 id 不能使用 vault、point 或 item,以免与内置货币类型冲突。
| 变量 | 返回内容 |
|---|---|
%lshop_currency-货币id% | 当前玩家指定自定义货币余额 |
示例:
text
%lshop_currency-jb%上例读取货币 id 为 jb 的余额。货币不存在或当前玩家数据尚未加载时,返回 0。
商店变量
背包空槽数量
| 变量 | 返回内容 |
|---|---|
%lshop_emtry-slot% | 当前玩家背包空槽数量 |
变量名按插件实际注册保留为 emtry-slot,不要改写为 empty-slot。
该变量可用于商品的购买条件,例如:
yaml
buy-condition:
- '&7需要至少有一个空背包槽<->papi:{%lshop_emtry-slot%} > 0<->&c背包没有空槽,无法购买。'商品可购买状态
| 变量 | 返回内容 |
|---|---|
%lshop_can_buy_商店id_商品id% | 当前玩家是否可以购买指定商品 |
返回值为 true 或 false。
插件会根据指定商店和商品的实际配置进行判断,包括商品显示条件、购买时间、限购标记、购买条件和购买货币等。商店或商品不存在时返回 false。
示例:
text
%lshop_can_buy_示例_商品1%其中:
示例是商店配置中的id。商品1是items下的商品配置键。
商品价格
| 变量 | 返回内容 |
|---|---|
%lshop_price-商店id#槽位#货币类型% | 指定商店指定槽位商品的折后价格 |
示例:
text
%lshop_price-示例#0#vault%该变量读取商店 id 为 示例、槽位为 0 的商品,并返回其 vault 货币价格。
变量参数说明:
| 参数 | 说明 |
|---|---|
商店id | 商店配置中的 id,例如 示例 |
槽位 | 商品配置中的 slot,例如 0 |
货币类型 | 商品 buy-currency 中使用的货币类型,例如 vault、point 或已注册的自定义货币 id |
价格会根据商店折扣和商品折扣计算,并向上取整。指定商店、槽位、货币类型或价格配置不存在时返回 0。
使用注意
- PlaceholderAPI 未安装或未启用时,LyShopReload 不会注册这些变量。
- 变量只读取当前已加载的数据和配置。限购标记、货币和商店配置变更后,需要按插件配置重新加载插件。
- 如果启用了 MySQL 存储,必须安装
LyMySQLCore,并确保数据库连接成功;否则玩家货币、个人限购标记及全服限购标记等相关数据无法正常加载,依赖这些数据的变量也无法正常反映实际状态。