TileBuilder

事实基准:/Users/evlos/a/mirror/BuildCraft(master,minecraftVersion = 1.7.10)逐行读源码。

注册信息

属性 值 来源
TileEntity 注册名 net.minecraft.src.builders.TileBuilder BuildCraftBuilders.java:630
注册类 buildcraft.builders.TileBuilder 同上
所属 modid BuildCraft|Builders BuildCraftBuilders.java:144 @Mod
关联方块 Builder BuildCraftBuilders.java:630 同块
父类 TileAbstractBuilder builders/TileBuilder.java:66
是否配置门控 否(无条件注册) BuildCraftBuilders.java:630

槽位数量与布局

builders/TileBuilder.java:82:

private final SimpleInventory inv = new SimpleInventory(28, "Builder", 64);

即 28 槽,单槽上限 64,内部名 "Builder"。

槽位 用途
0–26 蓝图 / 建材(27 = 3×9 一整板)
27 额外建材槽(供机器自动补充)

能量与激活阈值

  • POWER_ACTIVATION = 500(builders/TileBuilder.java:69):低于此能量不启动。
  • 实际施工能耗走 api/blueprints/BuilderAPI.java 的常量: BREAK_ENERGY = 160(:14)、BUILD_ENERGY = 240(:15)。 每次拆除一个方块扣 BREAK_ENERGY,每次放置一个方块扣 BUILD_ENERGY。
  • 电池容量不在本类设置——TileBuilder 未见 setBattery 调用,容量由 TileBuildCraft 基类默认与引擎供能共同决定,本条目不断言具体数值。

处理速率 / 耗时

没有「N tick 造一个方块」的固定节拍。Builder 每次 updateEntity() 按预算尽量多施工, 单 tick 的施工量受剩余能量与 BuilderAPI 预算限制。 TileAbstractBuilder 层的具体调度不在本类内,不写死数字。

GUI / Container 配对

GUI 类 Container 类 配对处
buildcraft.builders.gui.GuiBuilder buildcraft.builders.gui.ContainerBuilder builders/BuildersGuiHandler.java:51

Blueprint / 载具

Builder 依赖**蓝图(blueprint)**驱动施工。蓝图作为物品放入槽位后即开始按蓝图放置方块; 未放蓝图时处于空闲。蓝图体系在 Builders 模块中由 SchematicRegistry 管理 (BuildCraftBuilders.java:646 SchematicRegistry.INSTANCE.readConfiguration(...))。

网络封包

TileAbstractBuilder / TileBuildCraft 层提供默认 NBT 同步。 Builder 另实现了进度相关字段随 NBT 落盘;无独立的 BuildCraft 网络封包 ID。

相关条目