TileMultipart
[!INFO] Git Commit:
7808254| Updated: 2026-10-02
| 属性 | 值 |
|---|---|
| 类名 | codechicken.multipart.TileMultipart |
| 类型 | class extends TileEntity with IChunkLoadTile,820 行,本 mod 最大方块实体类(全仓最大文件是 ASMMixinCompiler.scala,873 行) |
| 启用版本 | Minecraft 1.7.10 |
整个 ForgeMultipart 的中心方块实体。一个格子 = 一个 TileMultipart + 0…N 个 |
|
TMultiPart 部件。提供 71 个方法,覆盖部件增删、碰撞、掉落、红石、同步与序列化。 |
关键点
- 部件表按部件 id 索引存放,槽位归属由各部件 trait 决定。
addPart_impl/addPart_do是实际写入路径;公开的addPart会先过MultipartGenerator的结构校验(TileMultipart.scala:729-735)。clearParts触发所有部件的onRemoved,是拆方块时的统一清理点。getOrConvertTile/getOrConvertTile2负责把旧的单体方块实体平滑转换成TileMultipart,这是让既有 mod 无痛接入的关键路径。- 实现
IChunkLoadTile,区块载入时把格位登记进TileCache。
相关条目
- Part API - 部件根接口
TMultiPart - MultipartGenerator - 部件组合结构的校验与字节码生成
- TileCache - 区块加载期的格位缓存
- TickScheduler - 部件级随机刻调度