OpenComputers 卡片
基本信息
| 属性 | 值 |
|---|---|
| 物品 | computronics.ocParts,meta 3 / 4 / 5 / 6 / 8 / 9 |
| 环境类 | pl.asie.computronics.oc.driver.DriverCard* |
| 槽位 | 全部为 OC Slot.Card(ItemOpenComputers.java:186-200) |
| 开关 | 各自独立,见下表 |
变体一览
| meta | 卡片 | 类 | @Callback 方法 |
|---|---|---|---|
| 3 | 粒子特效升级 | DriverCardFX |
spawn |
| 4 | 欺骗卡 | DriverCardSpoof |
send、broadcast |
| 5 | 鸣笛升级 | DriverCardBeep |
getBeepCount、beep |
| 6 | 自毁卡片 | DriverCardBoom |
start、time |
| 8 | 噪音升级 | DriverCardNoise |
channel_count、getMode、setMode、modes、add、clear、process、getActiveChannels、isReady、play |
| 9 | 声卡 | DriverCardSound |
modes、channel_count、setTotalVolume、clear、open、close、setWave、setFrequency、setLFSR、delay、setFM、resetFM、setAM、resetAM、setADSR、resetEnvelope、setVolume、process |
方法名由 @Callback 注解扫描得出(逐文件提取 pl/asie/computronics/oc/driver/DriverCard*.java)。类继承关系:
DriverCardBeep/DriverCardNoise继承DriverCardSoundBase(后者无自己的@Callback,只提供ManagedEnvironment+DeviceInfo基座)DriverCardBoom继承ManagedEnvironmentWithComponentConnectorDriverCardSpoof直接继承 OC 的NetworkCardDriverCardSound继承ManagedEnvironmentWithComponentConnector并实现IAudioSource
功能
| 卡片 | 作用 | 实现要点 |
|---|---|---|
| 粒子特效 | 在指定坐标发射粒子 | spawn(name, x, y, z [, defaultVelo]);受 particles.particleRange 限制(默认 256,-1 = 无限,Config.java:391-397),每粒子耗 FX_ENERGY_COST |
| 欺骗卡 | 以任意源地址发网络包 | 继承 NetworkCard,send(targetaddress, [sourceaddress,] port, data…) 与 broadcast([sourceaddress,] port, data…);每条消息耗 SPOOFING_ENERGY_COST |
| 鸣笛 | 播放蜂鸣声 | beep() 触发一次,getBeepCount() 读当前蜂鸣数;每秒耗 BEEP_ENERGY_COST |
| 自毁卡 | 倒计时后自毁计算机 | start([time]) 开始倒计时,time() 读剩余秒数;机器自毁状态由 BoomHandler 维护 |
| 噪音 | 合成白噪声/指定模式 | 9 个方法;按 channel 分通道,modes 返回双向表 |
| 声卡 | 完整音频合成 | 17 个方法:波形选择、频率、LFSR、FM/AM 调制、ADSR 包络、延时、音量;按 channel 分通道 |
声卡与噪音卡的独立配置(Config.java:198-220):声卡有独立的 SoundCardPlaybackManager(IntegrationOpenComputers.java:147-151)与 SoundCardPacket(CommonProxy.java:57-58),客户端还注册 DriverCardSound.SyncHandler(IntegrationOpenComputers.java:335-337)。因此 ocSoundCardMaxDelay / ocSoundCardQueueSize / ocSoundCardChannelCount 三项只在声卡启用时才读入。
数值
| 数值名 | 值 | 范围 | 来源 |
|---|---|---|---|
enable.opencomputers.particleCard |
true |
布尔 | Config.java:183 |
enable.opencomputers.spoofingCard |
true |
布尔 | Config.java:184 |
enable.opencomputers.beepCard |
true |
布尔 | Config.java:185 |
enable.opencomputers.boomCard |
true |
布尔 | Config.java:186 |
enable.opencomputers.noiseCard |
true |
布尔 | Config.java:188 |
enable.opencomputers.soundCard |
true |
布尔 | Config.java:189 |
power.ocParticleCardCostPerParticle |
2 RF | 0–10000 | Config.java:223-230 |
power.ocSpoofingCardCostPerMessage |
2 RF | 0–10000 | Config.java:232-239 |
power.ocBeepCardCostPerSound |
10 RF | 0–10000 | Config.java:241-248 |
power.ocSoundCardCostPerSecond |
10 RF | 0–10000 | Config.java:250-257 |
sound.ocSoundCardMaxDelay |
5000 ms | 0–Integer.MAX_VALUE |
Config.java:199-205 |
sound.ocSoundCardQueueSize |
1024 | 0–Integer.MAX_VALUE |
Config.java:206-212 |
sound.ocSoundCardChannelCount |
8 | 1–65536 | Config.java:213-219 |
ocParticleCardCostPerParticle 会被再乘以到目标的距离(Config.java:229-230)。
交互
| 变体 | 宿主限制 |
|---|---|
| meta 3 / 5 / 8 / 9 | 不能装在 Adapter 上 |
| meta 4 欺骗卡 | 不能装在 Tablet / Drone / Microcontroller 上(ItemOpenComputers.java:100-105) |
| meta 6 自毁卡 | 不能装在 Tablet / Drone 上(ItemOpenComputers.java:106-109) |
合成配方
见 OpenComputers 零件。⚠️ 在 GTNH 中不由 Computronics 注册(IntegrationOpenComputers.java:412、:427、:446、:463、:497、:517)。
相关条目
- OpenComputers 零件 - 15 个 meta 的完整属性表
- OpenComputers 机架板卡 - meta 10–13,其中自毁板继承本条的
DriverCardBoom - 设置:OpenComputers - 开关与能耗