便携式磁带驱动器

基本信息

属性 值
注册名 computronics.portableTapeDrive
物品类 pl.asie.computronics.item.ItemPortableTapeDrive
GUI GuiProviderPortableTapeDrive,注册于 Computronics.java:299-300
开启配置 enable.portableTapeDrive,默认 true(Computronics.java:296)
生命期 服务器停止时清理:PortableDriveManager.INSTANCE.onServerStop()(Computronics.java:448)

功能

磁带机的物品形态——不占地方,可塞进背包随身播放录音带。核心差异是按物品而非按方块管理磁带数据。

实现方式:每个 ItemStack 通过 NBT 的 tid 字段引用 PortableDriveManager 中的一条记录(ItemPortableTapeDrive.java:61、:82、:113、:132)。因此掉落的驱动器仍指向原磁带数据,除非管理器记录被清理。

配套事件处理器 TapeStorageEventHandler 仅在磁带机或便携驱动器任一存在时注册(Computronics.java:347-350);PortableDriveManager 自身在便携驱动器存在时注册到 FMLCommonHandler 总线(Computronics.java:352-354)。

数值

数值名 值 范围 来源
tapedrive.portable.hearingDistance 8 0–64 Config.java:420-426
Config.PORTABLE_TAPEDRIVE_DISTANCE 字段初值 8 — Config.java:21

可听距离默认只有磁带机的 1/3(8 vs 24)。

交互

触发 行为
右击 打开 GuiProviderPortableTapeDrive,GUI 与磁带机同构(GuiProviderPortableTapeDrive.java:35-46:读取/切换状态并经封包回传)
掉落 磁带数据保留在 PortableDriveManager 中

⚠️ 该 GUI 的状态封包同样走 GuiProviderTapeDrive 风格的 try/catch,失败路径不写日志。

合成配方

无 OC 配方(ModRecipes.java:186-205):

sgs
sas
srs
字符 物品
s 石砖 minecraft:stonebrick
r 红石粉 dustRedstone
g 玻璃 blockGlassColorless
a 磁带机 → 铁音符盒 → 音符盒(依次回退)

OC 配方(ModRecipes.java:473-492):

sgs
tab
srs
字符 物品
s oc:chamelium
r oc:materialCircuitBoardPrinted
g 玻璃 blockGlassColorless
t oc:materialTransistor
b 铁栅栏 minecraft:iron_bars
a 磁带机 → 铁音符盒 → 音符盒(依次回退)

相关条目