TileMachineHeater
基本信息
| 属性 | 值 |
|---|---|
| 类名 | remoteio.common.tile.TileMachineHeater |
| 所属方块 | BlockMachine 的 meta 1(heater) |
| 能力 | IC2 IHeatSource |
功能
加热器。用岩浆产出热量单位(HU),供 IC2 机器消费;也可被远程 IO 按热量类型抽取。
实现要点
- 核心字段
public int heatUsed = 0(TileMachineHeater.java:24),记录本 tick 已产出的热量。 requestHeat(ForgeDirection, int requestedHeat)的实现(:95-98)是:
即每 tick 产出上限为 RemoteIO 的配置项int used = Math.min(RemoteIO.heatProvided - heatUsed, requestedHeat); heatUsed += used;
heatProvided。heatUsed在TileMachineHeater.java:39每 tick 开头重置为 0(heatUsed = 0)。maxrequestHeatTick(ForgeDirection)返回本 tick 的最大可供热量。filled字段同样被 BlockMachine 的getIcon用于切换纹理。
[!WARNING]
heatProvided有两个不同的默认值: RemoteIO 的字段初值是 100(RemoteIO.java:49), 而配置默认值是 1000(RemoteIO.java:92)。实际生效值是配置值 1000, 因为preInit必然执行并覆盖字段。写文档 / 计算产热时必须用 1000。
相关条目
- BlockMachine - 所属方块
- TileMachineReservoir - 同一方块的 meta 0
- RemoteIO -
heatProvided配置项 - IC2TransferHelper - IC2 侧热量换算