文件柜 (Open File Cabinet)
基本信息
| 属性 |
值 |
| 注册名 |
openprinter:filecabinet |
| TileEntity |
pcl.openprinter.tileentity.FileCabinetTE |
| ItemBlock |
ItemBlockFileCabinet(放置时把 NBT display.Name 写入 name) |
| 硬度 |
0.5 |
| 材质 |
Material.iron |
功能
文件柜是一个 30 槽(1 输入 + 18 输出 + 11 备用)的简单存储方块,专门存放 PrintedPage(打印页)与 Items.book(书)。NBT 可保存自定义显示名 name。这是 OpenPrinter 三件套(打印→存储→销毁)中的存储角色。
摆放要求
- 元数据 0-3 基础朝向,放置时 meta =
(yaw_segment + 1) & 0x3
- 使用铁砧改名后放置,名称会写入 TileEntity(
ItemBlockFileCabinet.placeBlockAt)
数值
| 数值名 |
值 |
| GUI ID |
5 |
| 槽位数 |
30(0: 输入, 1-18: 输出×18, 19-29: 备用) |
| 侧面槽位访问 |
顶面=输出, 底面=输入, 侧面=输出 |
| 自定义名称 |
TileEntity name 字段,NBT 键 "name" |
交互
| 触发 |
行为 |
| 左键 |
无效果 |
| 右键(未潜行) |
打开 File Cabinet GUI(ID 5) |
| 右键(潜行) |
阻止打开 GUI |
| 破坏 |
掉落全部内容物 |
输入校验(isItemValidForSlot)
- 槽位 0 仅接受
PrintedPage 或 Items.book
自定义名称机制
- TileEntity
writeToNBT / readFromNBT 持久化 name 字符串
placeBlockAt 在放置时从 ItemStack.tag.display.Name 读取名称
hasDisplayName() / getDisplayName() 提供判断与读取
合成配方
无(文件柜不能合成,必须通过创造模式物品栏或 NEI 获取)
相关条目