MultipartGenerator

[!INFO] Git Commit: 7808254 | Updated: 2026-10-02

属性 值
类名 codechicken.multipart.MultipartGenerator
类型 object extends ScratchBitSet,240 行
启用版本 Minecraft 1.7.10
本 mod 的技术核心之一:在运行时为 TileMultipart 生成字节码,实现
"方块实体到多个接口 trait"的动态桥接。这样 TileMultipart 无需编译期依赖
IFluidHandler 等 Forge 接口,也能按需实现。

关键点

  • registerTrait(partClassName, tileClassName) 是主入口,实际调用点在 MultipartProxy.preInit(../core/proxy-multipart)。
  • registerTileClass 预先把方块实体类加入待生成集合。
  • registerPassThroughInterface / interfaceTraitMap 处理接口直通:不生成包装方法, 直接把调用转给某个具名接口方法。
  • addPart 是放置时的结构校验:拒绝会让已有部件失去槽位、或实体碰撞非法的新增。
  • 生成的类名带前缀 heirachy(源码即此拼写)。

相关条目