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。

相关条目