铁箱子插件(Iron Chest Plugin)
基本信息
| 属性 | 值 |
|---|---|
| 插件 uid | ironchest(IronChestPlugin.java:10) |
| 依赖 modid | ironchest(@WDMlaPlugin(dependencies = "ironchest"),IronChestPlugin.java:10) |
| 注册调用 | 服务端 1 次 / 客户端 0 次 |
| 生效侧 | 仅服务端 |
| 注册的类 | cpw.mods.ironchest.BlockIronChest |
功能
把通用的物品存储视图挂到 Iron Chest 2 的箱子上。与多数插件不同,它完全复用 通用插件 的 ItemStorageProvider.Extension,自身不含任何 provider 类——整个插件只有 7 行注册代码。
因为不需要自己画提示,客户端侧无需任何 registerBlockComponent:通用插件注册的 ItemStorageProvider.getBlock()(目标类 Block)已经覆盖了它。
注册内容
服务端(IronChestPlugin.register),全部内容:
| 方法 | 目标类 | provider |
|---|---|---|
registerItemStorage |
BlockIronChest |
ItemStorageProvider.Extension.INSTANCE |
没有 registerClient 方法——IWDMlaPlugin 接口允许只实现服务端侧。
数值
本插件不新增任何配置字段,显示项数由 universal.itemstorage.normalamount(默认 9)等共享配置决定。
本插件是唯一一个不会在 plugins_autogen 里写语言键的集成插件:语言键是在各插件的 registerClient() 末段调 setLanguageKey 写入的(见 通用插件 与 Minecraft 插件 的对应代码),而本插件没有 registerClient。因此 plugins_autogen.ironchest 分类若被生成,界面上将没有对应的可读分类名——这是插件结构的直接结果,不是遗漏。
en_US.lang / zh_CN.lang 中确实不存在 provider.wdmla.ironchest.category 这一行(可用 grep '^provider\.wdmla\..*\.category' 在两份语言文件中复核:返回 11 行,缺 ironchest)。
交互
PluginScanner 用 Loader.isModLoaded("ironchest") 门控。仓库坐标为 com.github.GTNewHorizons:ironchest:6.1.12:dev,与 modid 同为小写。