Adventure Backpack

基本信息

属性 值
注册名 adventurebackpack:blockBackpack
方块类 BlockAdventureBackpack (extends BlockContainer)
TileEntity TileAdventureBackpack
材料 BackpackMaterial(自定材质:不可被草蔓延/不可燃/不可替换/冒险模式豁免)
硬度 1.0
抗爆炸 2000
声音类别 cloth
朝向 4 朝向(meta 0~3,附加 4/8 bit 表示 GLOWSTONE/REDSTONE 皮肤)
透明 是(isOpaqueCube=false)

功能

放置型 Adventures Backpack 方块,拥有 70+ 套皮肤;每套皮肤的 BackpackTypes 决定 TileEntity 的特殊行为:

  • STANDARD / 颜色型(BLACK, BLUE, BROWN, CYAN, GOLD, GREEN, …):纯装饰,仅渲染
  • BOOKSHELF:邻近附魔台时发射附魔粒子;增加 getEnchantPowerBonus = 10,强化附魔(需 BlockEnchantingTable 2 格范围内)
  • GLOWSTONE:发亮度 15;普通方块等级;如背部有发光液体则展示流体亮度 getLuminosity()
  • REDSTONE:方向 meta | 8,发射 15 级弱供电,并允许红石线连接 (canConnectRedstone=true)
  • CACTUS:碰撞中按 1.0 伤害击中实体(仿仙人掌);同时 Tile 形态时根据雨水自动灌水
  • MELON:Tile 形态时根据雨水/雷雨自动灌入 MelonJuice
  • SPIDER:穿戴中允许右键骑乘一个 Friendly Spider
  • WITHER_SKELETON、SKELETON 等:通过反射 BackpackAbilities.itemXxx 提供能力

摆放要求

  • 仅允许朝 UP 面放置(canPlaceBlockOnSide 仅允许 UP 朝向)
  • 物理碰撞箱根据方向 meta 决定:朝向 0/2(南/北)使用 X 占满 1×0.6 的"竖立半方块"框,朝向 1/3 同理

数值

数值名 值
主物品栏槽位 48(INVENTORY_MAIN_SIZE)
总物品栏槽位 54(INVENTORY_SIZE = 主 + 工具×2 + 桶×4)
左流体槽容量 4000 mB(BUCKET × 4 = BASIC_TANK_CAPACITY)
右流体槽容量 4000 mB
TileTick 间隔 20 tick(更新 luminosity 与 sleepingBagDeployed 状态)
抗爆炸 2000(基本免疫)

交互

触发 行为
左键占用 默认无(玩家破坏方块)
右键点击 打开对应 ItemStack 类型皮肤 + 物品栏的 GUI(GuiHandler.BACKPACK_TILE),仅服务端执行;维度黑名单时拒绝
普通玩家破坏 弹出穿戴包(shift)或掉落背包(无 shift)并将方块删除
生物/玩家碰撞(CACTUS) 触发 1.0 点 cactus 伤害

TileEntity

参考 TileAdventureBackpack 内部类:保存 type / inventory / 双槽流体 / extendedProperties / disableCycling / disableNVision / sleepingBagDeployed / sbx,sby,sbz,sbdir / luminosity。每 tick 通过 BackpackAbilities.backpackAbilities.executeTileAbility 调用对应 tileXxx 方法(仅 TILE 属性皮肤激活),并根据流体 getLuminosity() 动态调整光照。

相关条目