饥饿机制调整插件(Hunger Overhaul Plugin)
基本信息
| 属性 | 值 |
|---|---|
| 插件 uid | hungeroverhaul(HungerOverhaulPlugin.java:18) |
| 依赖 modid | HungerOverhaul(@WDMlaPlugin(dependencies = "HungerOverhaul"),HungerOverhaulPlugin.java:18) |
| 资源命名空间 | hungeroverhaul(HungerOverhaulPlugin.path()) |
| 配置分类 | plugins_autogen.hungeroverhaul |
| 注册调用 | 服务端 1 次 / 客户端 5 次 |
| 生效侧 | 两侧 |
| 显示名 | 英文 “Hunger Overhaul”,中文「饥饿机制调整」(en_US.lang:263、zh_CN.lang:263) |
功能
为 Hunger Overhaul(饥饿机制调整)补充四类状态:锄地结果、奶牛挤奶冷却、动物缓慢效果、鸡的减速。
MilkCooldownProvider 是唯一同时在两侧注册的 provider——服务端提供挤奶冷却数据,客户端绘制倒计时。锄地结果 HoeResultProvider 挂到 BlockGrass 与 BlockDirt 两个方块类。
注册内容
服务端(HungerOverhaulPlugin.register):
| 方法 | 目标类 | provider |
|---|---|---|
registerEntityDataProvider |
EntityCow |
MilkCooldownProvider.INSTANCE |
客户端(HungerOverhaulPlugin.registerClient):
| 方法 | 目标类 | provider |
|---|---|---|
registerBlockComponent |
BlockGrass |
HoeResultProvider.INSTANCE |
registerBlockComponent |
BlockDirt |
HoeResultProvider.INSTANCE |
registerEntityComponent |
EntityChicken |
SlowChickenProvider.INSTANCE |
registerEntityComponent |
EntityAnimal |
SlowAnimalProvider.INSTANCE |
registerEntityComponent |
EntityCow |
MilkCooldownProvider.INSTANCE |
SlowAnimalProvider 注册到 EntityAnimal 基类,覆盖所有动物;SlowChickenProvider 单独注册到 EntityChicken,两者叠加时由 provider 优先级决定显示顺序。
数值
本插件不新增任何配置字段。倒计时与进度显示复用 通用插件 的 ProgressProvider 体系,计时格式受 plugins_autogen 分类下 option.wdmla.autogen.time.format 控制(仅当 provider 实现 ITimeFormatConfigurable 时生成该项,见 自动生成配置)。
分类语言键由 registerClient 末段写入 provider.wdmla.hungeroverhaul.category。
交互
PluginScanner 用 Loader.isModLoaded("HungerOverhaul") 门控。注意 modid 与仓库坐标不同:dependencies.gradle 中声明为 Curse Maven 坐标 curse.maven:hunger-overhaul-224476:2332505(slug 为连字符小写 hunger-overhaul),而 modid 是驼峰 HungerOverhaul。Loader.isModLoaded 只认后者。