电力计数器 / 平均电力计数器
基本信息
| 属性 | 电力计数器 | 平均电力计数器 |
|---|---|---|
| metadata | 6(DAMAGE_ENERGY_COUNTER,BlockDamages.java:13) |
7(DAMAGE_AVERAGE_COUNTER,BlockDamages.java:14) |
| 子方块类 | blocks/subblocks/EnergyCounter.java |
blocks/subblocks/AverageCounter.java |
| TileEntity | TileEntityEnergyCounter(IC2NCEnergyCounter) |
TileEntityAverageCounter(IC2NCAverageCounter) |
| TE 注册名来源 | CommonProxy.java:40 |
CommonProxy.java:41 |
| 中文名 | 电力计数器(zh_CN.lang:47) |
平均电力计数器(zh_CN.lang:48) |
| 需依附方块 | 否(EnergyCounter.java:45-47) |
否(AverageCounter.java:45-47) |
| 碰撞箱 | 0,0,0 → 1,1,1 |
0,0,0 → 1,1,1 |
| GUI | ContainerEnergyCounter + GuiEnergyCounter |
ContainerAverageCounter + GuiAverageCounter |
| 贴图索引常量 | I_INPUT=0、I_OUTPUT=1(EnergyCounter.java:20-21) |
同左(AverageCounter.java:20-21) |
功能
两个方块都是串在电网中的能量计量表:TileEntityEnergyCounter 实现 IC2 的 IEnergyConductor,即自身可导电,通过与相邻导线/机器的连接测量流经的 EU 数量(tileentities/TileEntityEnergyCounter.java:35-36)。
- 电力计数器(meta 6):直接显示累计流过的 EU 量
- 平均电力计数器(meta 7):显示一段时间窗口内的平均 EU 速率
两者共用 crossRF 提供的 TileEntity 单例(EnergyCounter.java:38-41、AverageCounter.java:38-41),因此在 RF 类能源环境下共享同一份计量数据源。
数值
| 数值名 | 值 | 引用 |
|---|---|---|
| 累计量字段 | double counter |
TileEntityEnergyCounter.java:46 |
| 供电模式字段 | byte powerType |
TileEntityEnergyCounter.java:53 |
| 数据包大小字段 | int packetSize |
TileEntityEnergyCounter.java:55 |
| 贴图索引 | 输入 0 / 输出 1 | EnergyCounter.java:20-21 |
| 刷新节奏 | 由 crossRF 供应方决定 |
updateEntity,TileEntityEnergyCounter.java:114 |
RF 兼容
在 RF 能源模组(Thermal Expansion / Ender IO / BuildCraft 等)环境下,计数使用 Forge 能量接口的实现 RFTileEntityEnergyCounter,它继承 TileEntityEnergyCounter 并实现 IEnergyHandler(crossmod/RF/RFTileEntityEnergyCounter.java:12),提供 receiveEnergy / extractEnergy / getEnergyStored / getMaxEnergyStored / sendMaxTo(RFTileEntityEnergyCounter.java:41,48,55,61,117)。
交互:红石输出
计数器类方块不输出红石。BlockNuclearControlMain.isProvidingStrongPower 开头的守卫只放行 TileEntityThermo 与 TileEntityRangeTrigger 两类 TileEntity,其余一律 return 0(BlockNuclearControlMain.java:472-473),计数器不在其中。
合成配方
| 产物 | 形状 | 材料 | 引用 |
|---|---|---|---|
| 电力计数器 (6) | IAI / FTF |
A=circuitAdvanced, F=IC2 goldCableItem, T=IC2 mvTransformer, I=plateIron |
RecipesNew.java:160-163 |
| 平均电力计数器 (7) | LAL / FTF |
A=circuitAdvanced, F=IC2 goldCableItem, T=IC2 mvTransformer, L=plateLead |
RecipesNew.java:169-172 |
两者配方形状相同,仅四角材料不同(电力计数器用铁板 I,平均电力计数器用铅板 L)。