Quiver
基本信息
| 属性 | 值 |
|---|---|
| 注册名 | battlegear2:quiver |
| 类 | mods.battlegear2.items.ItemQuiver |
| 继承 | net.minecraft.item.Item |
| 接口 | IArrowContainer2、IDyable、IBaubleExpanded(@Optional.Interface) |
| 注册方式 | BattlegearConfig 反射循环(见下) |
| 箭槽数 | 4(ItemQuiver.java:93-95) |
| 堆叠上限 | 1(ItemQuiver.java:48) |
| 贴图 | battlegear2:quiver/quiver-details、battlegear2:quiver/quiver-arrows(ItemQuiver.java:86-90) |
功能
箭袋是 4 槽的箭容器,可装在副手或作为 Baubles Expanded 饰品使用。
核心特性:
- 射箭:作为箭袋容器向
QuiverArrowRegistry注册(BattlegearConfig.java:223),并注册弹射器行为DispenseQuiverArrow(Items.bow, 1.0F)(BattlegearConfig.java:223) - 弹射器兼容:箭袋物品注册进
BlockDispenser.dispenseBehaviorRegistry(BattlegearConfig.java:223) - 一键取箭:潜行右键把所有槽位内的箭吐回地面;若箭袋在副手上则不触发(
ItemQuiver.java:67) - Baubles Expanded:未潜行右键时转交
BaubleItemHelper.onBaubleRightClick(ItemQuiver.java:64-66) - 选中槽位:NBT 键
current记录当前选中的箭槽(ItemQuiver.java:98-105) - 槽位存储:每个槽位以 NBT 键
Slot<索引>保存(ItemQuiver.java:108-115)
注册方式说明
ItemQuiver 的构造函数不调用 GameRegistry.registerItem。它作为 BattlegearConfig 的标量 Item 字段 quiver,由 getConfig 末尾的反射循环统一注册(BattlegearConfig.java:293-306)。该循环只匹配 Item.class.isAssignableFrom(f.getType()) 的标量字段,因此 dagger / warAxe / mace / spear / shield / knightArmor 这些数组字段不在其列 —— 它们各自在构造函数内注册。
数值
| 数值 | 值 | 来源 |
|---|---|---|
| 槽位数 | 4 | ItemQuiver.java:93-95 |
| 堆叠上限 | 1 | ItemQuiver.java:48 |
| 弹射器行为 | DispenseQuiverArrow,使用 Items.bow 作为弓,系数 1.0F |
BattlegearConfig.java:223 |
| 初始选中槽 | 0(新建 NBT 时写入 current = 0) |
ItemQuiver.java:53-55 |
交互
| 触发 | 行为 |
|---|---|
| 右键(未潜行) | 若加载 Baubles Expanded,转交饰品交互(ItemQuiver.java:63-66) |
| 右键(潜行,且不在副手) | 把 4 个槽位中的箭全部吐回地面并清空槽位(ItemQuiver.java:67-79) |
| 右键(潜行,且在副手) | 无吐箭行为(ItemQuiver.java:67) |
| 弹射器发射 | 通过 DispenseQuiverArrow 按选中槽位射箭(BattlegearConfig.java:223) |
提示文本:Shift + right click to retrieve all arrows.(en_US.lang 的 attribute.quiver.tooltip.retrieve)。
合成配方
| 配方 | 形状 | 字符 | 来源 |
|---|---|---|---|
| 箭袋本体 | X X/X X/XXX |
X = Items.leather(皮革) |
BattlegearConfig.java:339-340 |
| 装箭 | QuiverRecipie2,无序,after:minecraft:shapeless |
箭袋 + 箭 | BattlegearConfig.java:342-347 |
相关条目
- MB Arrow - 9 种本模组自制箭矢,与箭袋的射箭流程绑定
- Baubles Expanded 集成 - 箭袋可作为饰品,槽位分配在 preInit 阶段完成
- Backhand 集成 - 箭袋在副手时的行为差异来源