MB Arrow

基本信息

属性 值
注册名 battlegear2:mb.arrow(单一 Item,9 个 metadata 子类型)
类 mods.battlegear2.items.ItemMBArrow
继承 net.minecraft.item.Item,setHasSubtypes(true)(ItemMBArrow.java:58)
容器物品 Items.arrow(BattlegearConfig.java:228)
子类型数 9(ItemMBArrow.java:32-33)

功能

一个 Item 通过 metadata 承载 9 种箭矢,每种对应一个 AbstractMBArrow 子类实体。

核心特性:

  • 子类型注册:QuiverArrowRegistry 按索引注册 9 种箭(BattlegearConfig.java:229-231)
  • 弹射器兼容:BlockDispenser.dispenseBehaviorRegistry 注册 ItemMBArrow.dispensable(BattlegearConfig.java:232)
  • 两段 Lore:物品提示追加 lore.base.arrow.<name>,开启高级提示时再追加 lore.advanced.arrow.<name>(ItemMBArrow.java:91-101)
  • 合成回环:除 explosive(索引 2)与 ender(索引 3)外,其余箭矢可由箭矢合成回基础材料 —— 源码注释原因是这两者的材料会被「Infinity」弓复制(BattlegearConfig.java:514-518)

数值

9 个子类型由 names 数组定义,索引顺序即 metadata(ItemMBArrow.java:32-38):

metadata 名称 实体类 合成材料 component
0 holy EntityHolyArrow Items.golden_apple(金苹果)
1 ice EntityIceArrow Items.snowball(雪球)
2 explosive EntityExplossiveArrow Items.gunpowder(火药)
3 ender EntityEnderArrow Items.ender_pearl(末影珍珠)
4 flame EntityFlameArrow Items.flint(燧石)
5 piercing EntityPiercingArrow Items.diamond(钻石)
6 poison EntityPoisonArrow Items.nether_star(下界之星)
7 mystery EntityLoveArrow Items.cookie(曲奇)
8 leech EntityLeechArrow Items.ghast_tear(恶魂之泪)

索引 7 名称为 mystery 但实体类是 EntityLoveArrow —— 名称与类名不对应,这是源码中的既有事实(ItemMBArrow.java:32,36)。

各箭矢的具体伤害、效果强度等数值分散在 mods.battlegear2.items.arrows.* 各类中,未在本条目展开核实。

交互

触发 行为
弹射器发射 dispensable 按 itemStack.getItemDamage() 实例化对应箭头实体(ItemMBArrow.java:39-52)
附魔台提示 追加基础 Lore;Ctrl 高级提示追加第二行(ItemMBArrow.java:91-101)

合成配方

每个子类型 2 个配方(BattlegearConfig.java:503-521)。

正向合成:

G
A
字符 物品
G 该类型的 component(见上表)
A Items.arrow(原版箭)

逆向合成(无序),仅索引 0、1、4、5、6、7、8;索引 2(explosive)与 3(ender)没有逆向配方:

输出 原料
该类型的 component 1 个 mb.arrow 且 metadata = 该索引

相关条目