Entity Registry
基本信息
| 属性 | 值 |
|---|---|
| 注册类 | net.mcft.betterstorage.content.BetterStorageEntities |
| 注册方法 | BetterStorageEntities.register() |
| 调用时机 | preInit,src/main/java/net/mcft/betterstorage/BetterStorage.java:73 |
| 已注册数量 | 2 |
来源:src/main/java/net/mcft/betterstorage/content/BetterStorageEntities.java:16-27。
功能
本 mod 注册 2 个实体变种。两者均不受任何配置开关控制,只要 mod 加载就一定注册。
注册表
EntityRegistry.registerModEntity(EntityFrienderman.class, "Frienderman", 1, BetterStorage.instance, 64, 4, true);
EntityRegistry.registerModEntity(EntityCluckington.class, "Cluckington", 2, BetterStorage.instance, 64, 4, true);
来源:src/main/java/net/mcft/betterstorage/content/BetterStorageEntities.java:18-23。
| # | 实体类 | 注册名 | ID | 追踪范围 | 更新频率 | 发送恶魂 | 基类 |
|---|---|---|---|---|---|---|---|
| 1 | entity.EntityFrienderman |
Frienderman |
1 | 64 | 4 | 是 | EntityEnderman |
| 2 | entity.EntityCluckington |
Cluckington |
2 | 64 | 4 | 是 | EntityChicken |
registerModEntity 的参数顺序为:实体类、注册名(英文名)、实体 ID、所属 mod 实例、追踪范围、更新频率、是否发送恶魂。
注册末尾调用 Addon.registerEntitesAll()(BetterStorageEntities.java:24),为附属保留追加位——但本仓库的 4 个内置附属中没有任何一个注册实体。
实体源码目录
src/main/java/net/mcft/betterstorage/entity/ 共 2 个文件:
| 类 | 内容 |
|---|---|
EntityFrienderman |
友好末影人变种,40 血,只偷末影箱,不主动攻击玩家 |
EntityCluckington |
迷你 Boss 鸡,30 血 2 攻,自愈,攻击玩家与僵尸 |
英文名
Frienderman 的显示名在语言文件中定义为 Enderman(src/main/resources/assets/betterstorage/lang/en_US.lang 的 entity.betterstorage.Frienderman.name)——即它在游戏内显示为「Enderman」,与原版末影人同名。
Cluckington 的名字由代码硬编码返回(src/main/java/net/mcft/betterstorage/entity/EntityCluckington.java:54-56),不在语言文件中。
与战利品的关系
Cluckington 虽为 Boss 级实体,但源码中没有为它注册战利品表(DungeonLoot 中的战利品属于地牢生成,不属于实体掉落)。
地牢战利品见 Drinking Helmet 的战利品表(src/main/java/net/mcft/betterstorage/misc/DungeonLoot.java:23-46)。
相关条目
- Frienderman - 友好末影人
- Cluckington - 迷你 Boss 鸡
- TileEntity 注册表 - 另一张注册表(10 + 2 项)
- 背包 - 与末影箱交互的容器