HarvestCraft 集成(Pam’s Fruit)

PluginHarvestcraft 是本 mod 中最小的一个插件:只挂钩 HarvestCraft 的一种方块,在提示栏加一行成熟度百分比。不采集任何 NBT,也不注册任何功能开关。

基本信息

属性 值
插件类 tterrag.wailaplugins.plugins.PluginHarvestcraft
目标 mod HarvestCraft(modid harvestcraft,全小写)
@Plugin 注解 name = "Pam's Fruit", deps = "harvestcraft",order 未设置(默认 0)
注册类型 仅 Body provider,目标类 com.pam.harvestcraft.BlockPamFruit
默认启用 是([plugins] 段与 WAILA [modules] 段默认均为 true)
挂钩的 API com.pam.harvestcraft.BlockPamFruit(仅用到方块类本身)

判定逻辑

getBody 里只有一段实质代码,判据是 accessor.getBlock() instanceof BlockPamFruit:

float growthValue = (accessor.getMetadata() / 2.0F) * 100.0F;

成熟度直接由方块 metadata 换算,步进为 2:metadata 除以 2 再乘 100,即 metadata 每加 2 成熟度增加 100%。

显示内容

条件 显示
growthValue < 100 <生长标签> : N %(%.0f,四舍五入为整数百分比)
growthValue >= 100 <生长标签> : <成熟标签>

两处标签都不是本 mod 自己的语言键,而是借用 WAILA 自带的语言条目,经 StatCollector.translateToLocal 取得:

用途 WAILA 语言键
生长标签 hud.msg.growth
成熟标签 hud.msg.mature

因此本插件不占用 wp.* 命名空间下的任何条目。

WAILA 元数据键

无。 本插件没有覆写 getNBTData,也从未调用 registerNBT——成熟度完全靠客户端可读的 metadata 得到,不需要服务端下发数据。

配置开关

本插件没有注册任何功能开关。 load() 中只有一句 registerBody(BlockPamFruit.class),没有 addConfig 调用;语言文件中也不存在 wp.config.Pam's Fruit.* 键。

它只受插件级总开关 Pam's Fruit(由 PluginBase.enabled() 读取)控制。由于没有功能开关,插件一旦启用就必定显示那一行成熟度,玩家无法单独隐藏它——想关只能关掉整个插件。

相关条目