信息屏体系

基本信息

属性 值
方块 全部为主方块 IC2NuclearControl:blockNuclearControlMain 的不同 metadata
metadata 4 工业信息屏(DAMAGE_INFO_PANEL)
metadata 5 工业信息屏扩展(DAMAGE_INFO_PANEL_EXTENDER)
metadata 9 高级工业信息屏(DAMAGE_ADVANCED_PANEL)
metadata 10 高级工业信息屏扩展(DAMAGE_ADVANCED_EXTENDER)
常量来源 utils/BlockDamages.java:11-12,16-17
中文名 zh_CN.lang:39-40,41-42
需依附方块 全部否(InfoPanel.java:54-56、InfoPanelExtender.java:33-35、AdvancedInfoPanel.java:44-46、AdvancedInfoPanelExtender.java:42-44)

功能

信息屏是本模组的核心输出设备:把插入的传感卡片数据渲染成屏幕上的一行行文字。整套体系由「面板(Panel)+ 扩展(Extender)」两类方块构成。

  • 面板(metadata 4 / 9):自带屏幕,插入卡片,渲染数据
  • 扩展(metadata 5 / 10):无屏幕(hasGui() 返回 false),仅作为面板的延伸部分扩大显示面积,必须依附在面板上并共享同一 Screen

扩展方块的 coreX/coreY/coreZ 指向所属面板;它通过 getScreen() 从核心面板取得同一个 Screen 实例(TileEntityInfoPanelExtender.java:121-123),因此面板与扩展渲染的是同一张连续画面。ScreenManager 负责在服务端维护所有已注册的屏幕(panel/ScreenManager.java:21),提供 registerInfoPanel / registerInfoPanelExtender / unregisterScreenPart / clearWorld 等生命周期方法(ScreenManager.java:165,188,206,256)。

对照表

属性 工业信息屏 (4) 扩展 (5) 高级工业信息屏 (9) 高级扩展 (10)
TileEntity TileEntityInfoPanel TileEntityInfoPanelExtender TileEntityAdvancedInfoPanel TileEntityAdvancedInfoPanelExtender
TE 注册名 IC2NCInfoPanel IC2NCInfoPanelExtender IC2NCAdvancedInfoPanel IC2NCAdvancedInfoPanelExtender
卡片槽位数 3 0 3 0
有 GUI 是 否 是 否
屏幕 有 无(借用核心) 有 无(借用核心)

TE 注册名来自 CommonProxy.java:36-39。工业信息屏库存 3 格 —— 「卡片 + 范围升级 + 颜色/网页升级」(TileEntityInfoPanel.java:356-358),槽位常量 SLOT_CARD=0、SLOT_UPGRADE_RANGE=1、SLOT_UPGRADE_COLOR=2、SLOT_UPGRADE_WEB=2(TileEntityInfoPanel.java:64-67)。高级信息屏库存 4 格,注释为「3 cards + range/web upgrade」(TileEntityAdvancedInfoPanel.java:80-81),卡片槽 SLOT_CARD1/2/3 = 0/1/2(TileEntityAdvancedInfoPanel.java:30-32)。

数值

数值名 值 引用
面板定位范围 8 LOCATION_RANGE(TileEntityInfoPanel.java:67)
高级屏默认厚度 16 thickness = 16(TileEntityAdvancedInfoPanel.java:83)
高级屏默认着色 开启 colored = true(TileEntityAdvancedInfoPanel.java:82)
可选文本颜色数 15 COLORS_HEX 数组长度(TileEntityInfoPanel.java:57-58)
高级屏碰撞箱上限 0.98 厚度为 16 时的 bounds[4](AdvancedInfoPanel.java:68-70)
高级屏其他厚度碰撞箱 thickness / 16 bounds[4] = Math.max(thickness, 1) / 16F(AdvancedInfoPanel.java:65-67)
网络同步字段(基础面板) 10 个 powered/facing/rotation/card/showLabels/colorBackground/colorText/colored/screenData/isWeb(TileEntityInfoPanel.java:360-372)

高级信息屏特有控制

高级信息屏(metadata 9)额外实现了客户端点击事件(TileEntityAdvancedInfoPanel.java:36-46):

常量 值 含义
POWER_REDSTONE 0 切换为红石供电
POWER_INVERTED 1 切换为反转红石
POWER_ON 2 常亮
POWER_OFF 3 常灭
TRANSPARENCY_CHANGED 6 透明度切换
ROTATE_LEFT 7 画面左转
ROTATE_RIGHT 8 画面右转
OFFSET_THICKNESS 100 厚度偏移基数
OFFSET_ROTATE_HOR 200 水平旋转偏移基数
OFFSET_ROTATE_VERT 300 垂直旋转偏移基数

交互

触发 行为
右键面板 打开 GuiInfoPanel / GuiAdvancedInfoPanel(InfoPanel.java:70-76、AdvancedInfoPanel.java:77-85)
右键扩展 无 GUI,直接返回(hasGui() 为 false)
扳手 面板支持定向与拆除(实现 IWrenchable,TileEntityInfoPanel.java:56)
红石 实现 IRedstoneConsumer(TileEntityInfoPanel.java:55),setPowered / getPowered(TileEntityInfoPanel.java:163,172)
贴图换色 实现 ITextureHelper(TileEntityInfoPanel.java:55),颜色索引 I_PANEL_BACKGROUND = 6(TileEntityInfoPanel.java:60)

合成配方

产物 形状 材料 引用
工业信息屏 (4) PPP / CMC / IRI P=paneGlassLime, C=circuitBasic, I=dyeBlack, R=dustRedstone, M=IC2 machine RecipesNew.java:83-86
工业信息屏扩展 (5) PPP / WRW / WWW P=paneGlassLime, R=dustRedstone, W=plankWood RecipesNew.java:92-94
高级工业信息屏 (9) PPP / 1I2 / CAC P=paneGlassLime, I=工业信息屏, 1=范围升级, 2=颜色升级, A=circuitAdvanced, C=IC2 carbonPlate RecipesNew.java:100-105
高级工业信息屏扩展 (10) PPP / CEC / CMC P=paneGlassLime, M=IC2 machine, E=信息屏扩展, C=IC2 carbonPlate RecipesNew.java:111-114

相关条目