AFSU
基本信息
| 属性 | 值 |
|---|---|
| 注册名 | AFSU:AFSU |
| TileEntity | xbony2.afsu.tileentity.TileEntityAFSU |
| 硬度 | 1.5 |
| 爆炸抗性 | (继承自铁材质,未单独设置) |
| 材质 | Material.iron |
| 脚步声 | soundTypeMetal |
| 实体方块 | 是(hasTileEntity(int) 始终返回 true) |
| 透光 | 否(isNormalCube 返回 false,但 isBlockSolid 返回 true) |
| 实体生成 | 阻止(canCreatureSpawn 永远返回 false) |
| 创造标签 | IC2.tabIC2 |
功能
AFSU(Awesome Five-tier Storage Unit)是 IC2 实验性内容扩展模组的五阶能量存储方块,作为 Tier 5 能量存储设备运行。它继承自 ic2.core.block.wiring.TileEntityElectricBlock,固定为 Tier 5、输出上限 8192 EU/t、容量上限 1,000,000,000 EU(10 亿)。
主要行为:
- 持续向相邻 EU 网络端点(输出侧)输送能量,最大 8192 EU/t
- 通过任意面(输入侧)接收能量
- 自身可作为欧几里得网络上的 EU 生产者/消费者运行
- 玩家右键(未持扳手、未潜行)打开专用 GUI 检视内部电量与充/放电槽
- 玩家右键持扳手 / 电动扳手时不打开 GUI(用于旋转方块朝向)
- 破坏时掉落全部内部物品(包括能量槽内容)
- 红石:当
TileEntityElectricBlock.isEmittingRedstone()为真时输出 15 的弱充能 - 比较器:通过能量比例返回 0–15 的信号
- 创造标签提供"空"与"满"两种变体(
getSubBlocks)
摆放要求
- 朝向:通过 IC2
IWrenchable.setFacing/BlockPistonBase.determineOrientation由玩家放置时自动决定,默认朝下(facing = 1) - 旋转:使用扳手 / 电动扳手时调用
rotateBlock,仅当传入有效轴向时旋转 - 邻接要求:无
- 必须有 TileEntity(
createTileEntity返回新TileEntityAFSU)
数值
| 数值名 | 值 |
|---|---|
| 能量容量 | 1,000,000,000 EU(1B) |
| 最大输出 | 8,192 EU/t |
| Tier | 5 |
| 比较器输出范围 | 0–15(按电量比例线性映射) |
| 红石输出 | 满额 15(由 isEmittingRedstone 决定) |
交互
| 触发 | 行为 |
|---|---|
| 左键 | 无特殊行为 |
| 右键(空手,未潜行) | 打开 AFSU GUI(GUI ID 0) |
| 右键(持 IC2 扳手 / 电动扳手) | 阻止 GUI 打开,用于旋转方块 |
| 右键(潜行) | 阻止 GUI 打开 |
| 任意扳手旋转 | 旋转方块朝向(基于 IWrenchable) |
| 比较器读取 | 返回能量占比 ×15 的整数 |
| 破坏 | 掉落 GUI 槽中的物品(含能量) |
创造标签变体
| 变体 | metadata | 起始能量 |
|---|---|---|
| 空 | 0 | 0 EU |
| 满 | 1 | 1,000,000,000 EU |
合成配方
MGM
IAI
MGM
| 字符 | 物品 |
|---|---|
M |
IC2 MFS Unit(IC2Items.getItem("mfsUnit")) |
G |
IC2 玻璃纤维线缆(IC2Items.getItem("glassFiberCableItem")) |
I |
IC2 铱板(IC2Items.getItem("iridiumPlate")) |
A |
AFB(AFSUMod.ALC) |
注:当
Loader.isModLoaded("dreamcraft")为 true 时,配方注册被跳过,由梦之彼方覆盖。
渲染 / 朝向图标映射
AFSUBlock.getIcon(IBlockAccess, x, y, z, side) 根据 TileEntityBlock.getFacing() 返回不同的面图标:
| Facing | 顶/底面 | 输出面 | 其余面 |
|---|---|---|---|
| 0 (Up) | 顶/底 (north/south) | bottom (0) | input (default) |
| 1 (Down) | 顶/底 (north/south) | top (1) | input |
| 2 (South) | top/bottom | south (2) | input |
| 3 (North) | top/bottom | north (3) | input |
| 4 (East) | top/bottom | east (4) | input |
| 5 (West) | top/bottom | west (5) | input |
手持(无世界)时:top 出现在上/下、output 在北、其余为 input。
纹理通过 ConfigHandler.afsutexture 切换。可选值:default、blue、yellow、black、old、chloe1、chloe2、chloe3、freezy,分别读取 AFSU_top_<val>、AFSU_output_<val>、AFSU_input_<val>。
Tooltip(创造标签 / 物品形态)
由 ItemBlockAFSU.addInformation 输出:
- “Output 8192EU/t Capacity 1b EU”
- 当持有 NBT 时:附加 “Store <energy> EU”,否则 “Store 0 EU”
GUI 布局
GUI 大小默认 176 × 166(可由 ConfigHandler.AFSUxSize/AFSUySize 调整)。包含:
- 4 个玩家装备槽(位于
AFSUArmxDispPosition=152,AFSUUArmyDispPosition=5起,每行 +18) - 充能物品槽(chargeSlot)位于
128,14 - 放电物品槽(dischargeSlot)位于
128,50 - 能量条(
barWidth=176,barHeight=5,位置8,73,纹理偏移0,251) - 顶部信息文本(标题 / 等级 / 能量),位置与颜色均由 ConfigHandler 调整
- 一个 GUI 按钮(默认 ID 0,位于
10,7),可在initGui处进行自定义切换