Mantle
基本信息
| 属性 | 值 |
|---|---|
| 类名 | mantle.Mantle |
| 类型 | class,4 个 public 方法 |
| modid | Mantle(首字母大写;CoreRepo.java:15 的字面量是构建期占位符) |
| 加载注解 | @Mod(modid, name, version, dependencies = "required-after:Forge@[10.13,)"),Mantle.java:35 |
| 硬依赖 | 仅 Forge ≥ 10.13 |
| 注册内容 | 1 物品 / 0 方块 / 0 实体 |
| 启用版本 | 1.7.10 |
功能
@Mod 主类,把 4 个 FML 生命周期事件转发给静态代理。构造器里
第一件事就是跑 EnvironmentChecks.verifyEnvironmentSanity(),
以便 preinit 之前发生的崩溃也能带上环境信息。
实现要点
- 唯一的注册发生在
preInit:Mantle.java:71-72用new Manual()造出mantleBook并GameRegistry.registerItem(mantleBook, "mantleBook")。全仓仅此一处注册。 - 本 mod 不是披风 mod,也没有任何方块/实体注册;它是一个「共享代码库 + 书籍框架」。
postInit(Mantle.java:96-108)会往BookDataStore塞一本测试书(unlocalized nameitem.mantle.manual.test),随后mantleBook.updateManual()把这本测试书绑到物品上。@Instance("Mantle")(第 39 行)与@SidedProxy(第 42 行)都使用字符串常量而非modId字段,与@Mod的modid = modId混用两种风格。
相关条目
- CoreRepo - modid / 名称 / 版本常量与 logger
- CoreConfig - 7 个配置项的读写
- Manual - 唯一被注册的物品
- MProxyCommon - 公共端代理与 GUI handler
- MProxyClient - 客户端代理与页面类型注册
- BookDataStore - 书籍全局注册表
- Migration - 缺映射迁移工具