OpenComputers 零件

基本信息

属性 值
注册名 computronics.ocParts
物品类 pl.asie.computronics.item.ItemOpenComputers(继承 ItemMultiple)
变体数 15(meta 0–14,ItemOpenComputers.java:62-66)
注册条件 加载 OpenComputers,且下列 15 个配置项至少一个为真(IntegrationOpenComputers.java:113-131)
创造标签 tabComputronics(ItemOpenComputers.java:67)
OC 注册 Driver.add((Item) …) + Driver.add((EnvironmentProvider) …)(IntegrationOpenComputers.java:129-130)
重映射 computronics:computronics.robotUpgrade → 本物品(IntegrationOpenComputers.java:647-653)

这是一个单一注册 ID、15 个 meta 的多用途零件。每个 meta 对应一种 OC 硬件,按 worksWith / slot / tier 三个维度分别约束可安装的宿主与等级。

变体一览

meta 子名 中文名 OC 槽位 tier 稀有度 生效配置 环境类
0 robot_upgrade_camera 摄像升级 Upgrade 1 普通 OC_UPGRADE_CAMERA RobotUpgradeCamera
1 robot_upgrade_chatbox 聊天升级 Upgrade 1 普通 OC_UPGRADE_CHATBOX RobotUpgradeChatBox
2 robot_upgrade_radar 雷达升级 Upgrade 2 稀有 OC_UPGRADE_RADAR RobotUpgradeRadar
3 card_fx 粒子特效升级 Card 1 普通 OC_CARD_FX DriverCardFX
4 card_spoof 欺骗卡 Card 1 普通 OC_CARD_SPOOF DriverCardSpoof
5 card_beep 鸣笛升级 Card 1 普通 OC_CARD_BEEP DriverCardBeep
6 card_boom 自毁卡片 Card 0 普通 OC_CARD_BOOM DriverCardBoom
7 robot_upgrade_colorful 炫彩升级 Upgrade 1 普通 OC_UPGRADE_COLORFUL RobotUpgradeColorful
8 card_noise 噪音升级 Card 1 普通 OC_CARD_NOISE DriverCardNoise
9 card_sound 声卡 Card 1 普通 OC_CARD_SOUND DriverCardSound
10 rack_board_light 灯光卡 RackMountable 0 普通 OC_BOARD_LIGHT DriverBoardLight
11 rack_board_boom 服务器自毁器 RackMountable 0 普通 OC_BOARD_BOOM DriverBoardBoom
12 rack_board_capacitor 架上的电容器 RackMountable 0 普通 OC_BOARD_CAPACITOR DriverBoardCapacitor
13 rack_board_switch 转换器 RackMountable 0 普通 OC_BOARD_SWITCH DriverBoardSwitch
14 robot_upgrade_speech 语音升级 Upgrade 1 普通 OC_UPGRADE_SPEECH RobotUpgradeSpeech

来源:ItemOpenComputers.java:62-66(子名数组)、ItemOpenComputers.java:114-166(getEnvironment)、ItemOpenComputers.java:180-232(slot)、ItemOpenComputers.java:238-289(tier)、ItemOpenComputers.java:295-330(getSubItems 的配置过滤)、ItemOpenComputers.java:236-257(getDocumentationName)。中文名取自 zh_CN.lang。

功能

三类槽位对应三种 OC 硬件:

  • Upgrade(meta 0、1、2、7、14)——机器人升级。worksWith 对 meta 7 额外要求宿主是 Robot(ItemOpenComputers.java:97-99)。
  • Card(meta 3、4、5、6、8、9)——电脑/无人机上的扩展卡。meta 4(欺骗卡)不能装在 Tablet / Drone / Microcontroller 上(ItemOpenComputers.java:100-105);meta 6(自毁卡)不能装在 Tablet / Drone 上(ItemOpenComputers.java:106-109)。
  • RackMountable(meta 10–13)——只能装在机架 Rack 上(ItemOpenComputers.java:110-113),且 createEnvironment 再次用 container instanceof Rack 兜底(ItemOpenComputers.java:172-180)。

所有变体一律不能装在适配器 Adapter 上(ItemOpenComputers.java:93)。

meta 7(炫彩升级)有特殊渲染:需要 3 个渲染通道(getRenderPasses 对 meta 7 返回 3,ItemOpenComputers.java:337-343),其中 pass 1 是 robot_upgrade_colorful_canvas、pass 2 是 robot_upgrade_colorful_top(ItemOpenComputers.java:357-363)。未设置 computronics:color NBT 时,pass 1 用 HSB 循环生成彩虹色(ItemOpenComputers.java:365-390)。

**meta 9(声卡)**额外要求客户端注册 DriverCardSound.SyncHandler 到 MinecraftForge.EVENT_BUS(IntegrationOpenComputers.java:335-337),并创建独立的 SoundCardPlaybackManager(IntegrationOpenComputers.java:147-151)。

数值

数值名 值 范围 来源
enable.opencomputers.* 15 项 全部 true 布尔 Config.java:180-196
sound.ocSoundCardMaxDelay 5000 ms 0–Integer.MAX_VALUE Config.java:199-205
sound.ocSoundCardQueueSize 1024 0–Integer.MAX_VALUE Config.java:206-212
sound.ocSoundCardQueueCount(SOUND_CARD_CHANNEL_COUNT) 8 1–65536 Config.java:213-219
power.ocSoundCardCostPerSecond 10 RF 0–10000 Config.java:250-257

后三个 sound.* 项只在 OC_CARD_SOUND 为真时才从配置读入(Config.java:198-220),此时才有实际意义。 15 个 enable.opencomputers.* 项与全部 power.* 项都位于 if (Mods.isLoaded(Mods.OpenComputers)) 分支内(Config.java:153 起)。

交互

变体组 宿主限制
全部 不能装在 Adapter 上
meta 4 不能装在 Tablet / Drone / Microcontroller
meta 6 不能装在 Tablet / Drone
meta 7 只能装在 Robot
meta 10–13 只能装在 Rack

合成配方

⚠️ 在 GTNH 中这些配方不会由 Computronics 注册。IntegrationOpenComputers.postInit 里 15 个配方全部包在 if (!Computronics.isGTNHLoaded) 内(IntegrationOpenComputers.java:344、:367、:390、:412、:427、:446、:463、:478、:497、:517、:536、:555、:576、:597、:617),而 isGTNHLoaded = Loader.isModLoaded("dreamcraft")(Computronics.java:206)。GTNH 带 dreamcraft,故这些配方交由整合包自身的配方/任务提供。

无 GTNH 时的配方形状(均出自 IntegrationOpenComputers.postInit):

meta 形状 关键材料
0 摄像升级 idi / mcm / ibi c=摄像头方块,d=oc:materialTransistor,m=oc:circuitChip2,i=铁锭,b=oc:materialCircuitBoardPrinted
1 聊天升级 idi / mcm / ibi c=聊天盒方块,其余同 meta 0
2 雷达升级 idi / rmr / ibi d=oc:materialInterweb,m=oc:circuitChip3,i=金锭
3 粒子特效 mf / b m=oc:circuitChip2,f=minecraft:firework_charge,b=oc:materialCard
4 欺骗卡 mfl / pb / m=oc:ram2,f=oc:circuitChip2,b=oc:lanCard,p=oc:materialCircuitBoardPrinted,l=砖块
5 鸣笛卡 l / mb / f m=oc:circuitChip1,f=扩音器→铁音符盒→音符盒,b=oc:materialCard,l=oc:materialCU
6 自毁卡 mf / fb m=oc:materialCU,f=minecraft:tnt,b=oc:redstoneCard1
7 炫彩升级 fdf / mcm / fbf c=彩灯方块(未启用时 glowstone),d=oc:materialTransistor,m=oc:circuitChip2,f=oc:chamelium
8 噪音卡 l / mbn / f m=oc:ram1,f=oc:materialALU,b=meta 5(未启用时退为音源方块),l=oc:circuitChip2,n=gemQuartz
9 声卡 l / mb / f m=oc:ram5,f=oc:cpu1,b=meta 8 / meta 5 / 音源方块(逐级回退),l=oc:circuitChip2
10 灯光卡 oso / gcg / opo s=paneGlassColorless,g=oc:circuitChip1,c=彩灯方块(未启用时 glowstone),o=黑曜石,p=oc:materialCircuitBoardPrinted
11 服务器自毁器 lsl / gcg / opo l=火药,s=oc:circuitChip1,g=meta 6(未启用时烈焰粉),c=minecraft:tnt,o=黑曜石
12 架上电容器 lsl / gcg / opo l=铁锭,s=oc:circuitChip1,g=金粒,c=oc:capacitor,o=黑曜石
13 转换器 oso / gcg / opo s=paneGlassColorless,g=oc:circuitChip1,c=oc:materialButtonGroup,o=黑曜石
14 语音升级 idi / mcm / ibi c=语音盒方块,其余同 meta 0

相关条目