Ender Backpack
基本信息
| 属性 | 值 |
|---|---|
| 注册名 | betterstorage:enderBackpack |
| 物品注册名 | betterstorage:enderBackpack(ItemEnderBackpack) |
| 类 | net.mcft.betterstorage.tile.TileEnderBackpack(继承 TileBackpack) |
| TileEntity | net.mcft.betterstorage.tile.entity.TileEntityBackpack(与普通背包共用,TileEnderBackpack.java:39) |
| 材质 | 继承 Material.cloth |
| 硬度 | 3.0 |
来源:src/main/java/net/mcft/betterstorage/tile/TileEnderBackpack.java:26-29, 39;物品注册见 src/main/java/net/mcft/betterstorage/content/BetterStorageItems.java:66。
功能
末影背包是 背包 的传送变体,继承其全部容器行为(共用 TileEntityBackpack),核心差异是右键时的传送逻辑:
teleportRandomly(World, x, y, z, ...):把背包的物品传送到附近随机坐标的另一个背包(TileEnderBackpack.java:48),目标位置通过WorldUtils.get(world, x, y, z, TileEntityBackpack.class)查找(TileEnderBackpack.java:73)- 找不到目标背包时不消耗源背包
- 客户端封包为
PacketBackpackTeleport(src/main/java/net/mcft/betterstorage/network/packet/)
末影背包与普通背包共用配置:general.backpackRows 同时决定两者的行数(两者都读 TileEntityBackpack.getRows(),src/main/java/net/mcft/betterstorage/tile/entity/TileEntityBackpack.java:66-68)。
数值
| 数值名 | 值 | 来源 |
|---|---|---|
| 硬度 | 3.0 | TileEnderBackpack.java:29 |
| 行数 | 与普通背包共用 general.backpackRows(默认 4) |
GlobalConfig.java:190 |
| 列数 | 3 | TileEntityContainer.java:41-42 |
| 默认槽位数 | 12 | 3 × 4 |
交互
| 触发 | 行为 |
|---|---|
| 右键(手持物品) | 触发随机传送:在附近寻找另一个背包并把内容传过去(onBlockActivated,TileEnderBackpack.java:81) |
| 装备后右键身体 | 打开背包 GUI(继承 TileBackpack 行为) |
| 传送目标缺失 | 传送失败,物品留在原背包 |
合成配方
无法核实。 src/main/java/net/mcft/betterstorage/misc/Recipes.java 中全文搜索 itemEnderBackpack 0 命中 —— 本仓库的配方注册表没有为末影背包注册合成配方。其物品仅在 BetterStorageItems.java:66 通过 MiscUtils.conditionalNew(ItemEnderBackpack.class, GlobalConfig.enderBackpackEnabled) 初始化。
获取途径无法从源码确证。