简体中文
PlaceholderAPI 占位符
EmakiStorage 注册到 PlaceholderAPI 的占位符及其计算口径如下, 可直接复制到计分板, 菜单等模板中使用
前置条件: 已安装 PlaceholderAPI. 满足后 EmakiStorage 注册扩展, 标识符为 emakistorage. 这些占位符可以用在计分板, 菜单, 聊天格式, BossBar, ActionBar 以及支持 PlaceholderAPI 的其他插件文本模板里
PlaceholderAPI 未安装时, EmakiStorage 本体仍然可以正常运行, 只是不会注册 %emakistorage_*% 这些外部占位符
占位符列表
| 占位符 | 说明 |
|---|---|
%emakistorage_used_slots% | 已经占用的槽位数量 |
%emakistorage_total_slots% | 有效槽位的总数 |
%emakistorage_free_slots% | 还空着多少槽位 |
%emakistorage_purchased_slots% | 已经购买了多少槽位 |
%emakistorage_granted_slots% | 授予了多少槽位 |
%emakistorage_pages% | 总共多少页 |
%emakistorage_stack_limit% | 当前生效的玩家级单槽上限 |
%emakistorage_sort_mode% | 当前排序模式的 id |
%emakistorage_total_amount% | 所有条目数量加在一起的总和, 溢出时停在上限 Long.MAX_VALUE |
%emakistorage_count_<token>% | 指定 ItemSource token 的库存量, 没有这条条目时为 0 |
求值线程与未载入数据
线程约束: 所有占位符读的都是在线玩家在内存里的数据, 不会去读磁盘, PlaceholderAPI 在哪个线程调用就在哪个线程上计算, 因为这种地方不能做会让线程卡住的磁盘读写. 异常处理: 玩家数据还没载入时返回 0, 认不出来的占位符返回空字符串
匹配规则: 占位符名不区分大小写, 计算前统一转成小写, 所以 %emakistorage_USED_SLOTS% 和全小写是一样的. count_ 前缀会先于其他名字去匹配, 它后面的部分按 CoreLib ItemSource token 解析 (同样先转小写), 解析不出来的 token 返回 0. 所有结果都按十进制字符串返回, 整数不加千分位分隔
异常处理: 玩家参数为空时 (比如在控制台里, 或者求值时没有玩家上下文) 返回空字符串, 而不是 0