GTSU 储存单元物品形态
基本信息
| 属性 | 值 |
|---|---|
| 物品类 | eu.usrv.gtsu.blocks.itemblocks.ItemBlockGTSU(ItemBlock 子类) |
| 注册名 | GTSU:GTSU_Tier_0 … GTSU:GTSU_Tier_7(由 registerBlock(..., ItemBlockGTSU.class, ...) 附带注册,与方块同名) |
| 最大堆叠 | 64(ItemBlock 默认,未覆写 setMaxStackSize) |
| 附魔适用 | 物品形态无附魔相关覆写 |
| 耐久 | 无 |
| 创造标签 | 随方块,位于 IC2.tabIC2 |
| 消失 | 否(getSubBlocks 提供的满仓变体可重复合成) |
GTSU 模组不单独注册物品:GTSUMod 只调用 GameRegistry.registerBlock(new GTSUBlock(i), ItemBlockGTSU.class, ...),
物品形态由 Forge 依据第二个参数自动创建。ItemBlockGTSU 没有覆写任何交互方法(无 onItemUse / onRightClick 等),
放置行为完全继承自 ItemBlock 与 GTSUBlock.onBlockPlacedBy。
功能
物品形态的唯一自定义行为是 tooltip 显示(addInformation)与保留电量的放置。
addInformation 仅在物品带有 NBT 时才输出内容(if (stack.hasTagCompound())),
按 IC2 的本地化键组装两行:
| 行 | 格式 | 数据来源 |
|---|---|---|
| 第 1 行 | <ic2.item.tooltip.Output> <V[tier]>EU/t <ic2.item.tooltip.Capacity> <容量> |
V[tier] = TierHelper.V[tier];容量 = TierHelper.getMaxStorageForTier(tier) |
| 第 2 行 | <ic2.item.tooltip.Store> <已储存能量> |
NBT 的 energy 键(long) |
容量与已储存能量都经 NumberPrettifier.getPrettifiedNumber 缩写为 kilo/mega/giga/tera/peta/exa EU(两位小数)。
数值(各阶 tooltip 显示)
| 阶 | 输出 | 容量 | 满仓变体的 Store 行 |
|---|---|---|---|
| GTSU Tier 1 (MV) | 128EU/t | 2.10 mega EU | 2.10 mega EU |
| GTSU Tier 2 (HV) | 512EU/t | 134.22 mega EU | 134.22 mega EU |
| GTSU Tier 3 (EV) | 2048EU/t | 8.59 giga EU | 8.59 giga EU |
| GTSU Tier 4 (IV) | 8192EU/t | 549.76 giga EU | 549.76 giga EU |
| GTSU Tier 5 (LuV) | 32768EU/t | 35.18 tera EU | 35.18 tera EU |
| GTSU Tier 6 (ZPM) | 131072EU/t | 2.25 peta EU | 2.25 peta EU |
| GTSU Tier 7 (UV) | 524288EU/t | 144.12 peta EU | 144.12 peta EU |
| GTSU Tier 8 (MAX) | 2097152EU/t | 9.22 exa EU | 9.22 exa EU |
缩写由
NumberPrettifier的单位表决定,最大单位只到exa EU(1e18),因此 Tier 8 的Long.MAX_VALUE - 1落在 exa 档,tooltip 显示为9.22 exa EU而非9223.37 peta EU。
NBT
| 键 | 类型 | 用途 |
|---|---|---|
tier |
int | 供 addInformation 读取 tier,以及放置时写入 TileEntity 的 mTier |
energy |
long | 已储存能量;addInformation 读取,放置时写入 TileEntity 的 mEnergy |
创造标签变体
GTSUBlock.getSubBlocks 为每阶生成两个物品形态(见GTSU 能量储存单元的变体表),
均为空/满两种电量的展示用变体,可自由取用与放置。
放置行为
GTSUBlock.onBlockPlacedBy 读取物品 NBT 的 energy 与 tier 写入 TileEntity,
因此拆下再放回可以保留电量与阶数(朝向按放置时的玩家朝向重新计算)。
合成配方
GTSU 模组未注册任何合成配方。物品形态只能通过创造标签获取, 或在游戏中用扳手拆除已放置的方块取得掉落物。
相关条目
- GTSU 能量储存单元 - 对应的方块,含 8 阶数值对照表
- 红石模式 - 放置后可用的红石输出模式