跳到正文
烈焰甘蔗Wiki

Design Block(设计系统方块基类)

基本信息

属性 值
注册名 不直接注册(public abstract class)
TileEntity TileEntityMetadata
硬度 基类不设置,由各子类决定
爆炸抗性 基类不设置,由各子类决定
亮度 由各子类决定

功能

BlockDesign(binnie/extratrees/carpentry/BlockDesign.java:32,abstract class BlockDesign extends BlockMetadata implements IMultipassBlock)。

⚠️ 已订正(数值):原条目写「硬度 2.0 / 爆炸抗性 5.0」。BlockDesign 构造函数只有一行 super(material); designSystem = system;(BlockDesign.java:39-42),没有 setHardness / setResistance 调用。2.0 / 5.0 只属于 BlockCarpentry 一个子类,其余子类各不相同。原文把子类的数值安到了基类上。

⚠️ 已订正(归属):原条目称「所有木匠/染色玻璃方块都继承此类」并把 Ceramic Patterned 列为其中之一。这在继承关系上成立(Botany:ceramicPattern 的 BlockCeramicPatterned 确实 extends BlockDesign),但它注册在 Botany 而非 ExtraTrees(botany/gardening/ModuleGardening.java:91),归类时需注意。

四个子类与各自数值

子类 注册名 域 构造位置 硬度 爆炸抗性 设计系统 / Material
BlockCarpentry carpentry ExtraTrees extratrees/carpentry/BlockCarpentry.java:15-20 2.0 5.0 DesignSystem.Wood / wood
BlockCarpentryPanel panel ExtraTrees extratrees/carpentry/BlockCarpentryPanel.java:22-26 2.0(继承 BlockCarpentry) 5.0(继承) 同上
BlockStainedDesign stainedglass ExtraTrees extratrees/carpentry/BlockStainedDesign.java:21-22 未设置 未设置 DesignSystem.Glass / glass
BlockCeramicPatterned ceramicPattern Botany botany/ceramic/BlockCeramicPatterned.java:20-26 1.0 5.0 CeramicDesignSystem / rock

核心功能

  • 多通道渲染:IMultipassBlock,走 MultipassBlockRenderer(BinnieCore.java:125)。物品端对应 MultipassItemRenderer(extratrees/carpentry/ModuleCarpentry.java:90,92,94)。
  • 设计编码:ModuleCarpentry.getMetadata(plank1, plank2, design, rotation, facing) 把主色木板、次色木板、设计图案、旋转、朝向压进一个整数(BlockDesign.java:48-50,ModuleCarpentry.java:65-72)。放置时 rotation/facing 固定为 0 / UP,物品形态才带完整编码(ModuleCarpentry.java:74-79)。
  • 锤子切换设计:右键持 Forestry 锤(IToolHammer)循环设计方案(BlockDesign.EventHandler,经 registerHandler() 挂到 Forge 事件总线,BlockDesign.java:44-46)。ModuleCarpentry.java:92 只为 BlockCarpentry 调了 registerHandler(),Panel / StainedDesign / CeramicPatterned 未注册(模组自身不对称)。

数值

见上表。无统一数值。

交互

触发 行为
右键(持锤子) 切换设计方案(仅 BlockCarpentry 生效,见上)
破坏 各子类自行处理;BlockCarpentryPanel 走 BlockMetadata.getBlockDropped(:152)

所属多方块结构

无

相关条目

浏览全部模组