Locker
基本信息
| 属性 | 值 |
|---|---|
| 注册名 | betterstorage:locker |
| 类 | net.mcft.betterstorage.tile.TileLocker |
| TileEntity | net.mcft.betterstorage.tile.entity.TileEntityLocker(id container.betterstorage.locker) |
| 材质 | Material.wood |
| 硬度 | 2.5 |
| 脚步声 | soundTypeWood |
| 碰撞箱 | (1/16, 1/16, 1/16) → (15/16, 15/16, 15/16) |
| 非实心 | 是(isOpaqueCube() 返回 false,TileLocker.java:35) |
来源:src/main/java/net/mcft/betterstorage/tile/TileLocker.java:19-23, 35;TileEntity 注册见 src/main/java/net/mcft/betterstorage/content/BetterStorageTileEntities.java:30。
功能
储物柜是 强化储物柜 的基础版本,尺寸为单个方块格、9 槽(3 列 × 3 行)。与箱子的区别:
- 碰撞箱 14/16 见方,上下留 1/16 空隙(
TileLocker.java:23) isOpaqueCube()返回 false,可透光观察内部(TileLocker.java:35)isSideSolid仅对上下两面返回实体(TileLocker.java:51)setBlockBoundsBasedOnState会随相邻储物柜数量动态扩大碰撞箱(TileLocker.java:57-77),因此连成一片时渲染为连体柜- 支持锁定(
ILockable),可用钥匙与锁保护
数值
| 数值名 | 值 | 来源 |
|---|---|---|
| 硬度 | 2.5 | TileLocker.java:21 |
| 列数 | 3 | TileEntityContainer.getColumns(),src/main/java/net/mcft/betterstorage/tile/entity/TileEntityContainer.java:41-42 |
| 行数 | 3 | TileEntityContainer.java:46-47 |
| 槽位数 | 9 | 3 × 3 |
注:储物柜不受 general.reinforcedColumns 配置影响——该配置只被 TileEntityReinforcedChest 与 TileEntityReinforcedLocker 读取(src/main/java/net/mcft/betterstorage/tile/entity/TileEntityReinforcedChest.java:38、TileEntityReinforcedLocker.java:39)。
交互
| 触发 | 行为 |
|---|---|
| 右键 | 打开 3×3 GUI |
| 放置相邻储物柜 | 碰撞箱合并,视觉连体 |
| 锁定后右键 | 需持钥匙且 ID 匹配 |
| 重命名 | 支持铁砧改名(customTitle) |
合成配方
两条 ShapedOreRecipe(横向与纵向两种,src/main/java/net/mcft/betterstorage/misc/Recipes.java:78-97):
ooo ooo
o | | o
ooo ooo
| 字符 | 物品 |
|---|---|
o |
木板(物品字典 plankWood) |
| |
陷阱门(Blocks.trapdoor) |