跳到正文
烈焰甘蔗Wiki

ExtraBees 杂项物品

基本信息

属性 值
注册名 ExtraBees:misc(只有一个注册名)
变种方式 ItemStack 的 damage 值 = 枚举 ordinal()(0-29)
数量 30 种

⚠️ 已订正(重大:注册名机制写错):原文把 ironDust、goldDust、dyeRed、diamondShard 等 30 个字符串当成各自的注册名,并单列一节声称「所有染料通过 OreDictionary 注册为 dyeRed, dyeYellow 等」。前半句错:它们是枚举构造参数 name,只用于 i18n 键与图标路径。binnie/core/item/ItemMisc.java:20-27 只注册一次:

setUnlocalizedName("misc");
registerItem(this, getUnlocalizedName().substring(5));   // → "misc"

30 个变种共用一个 Item,靠 damage = ordinal() 区分(ItemMisc.java:47-49)。游戏内不存在 ExtraBees:ironDust 这个资源名,/give @p ExtraBees:ironDust 无效。

✅ 原文 30 个枚举名、name 串、分类归属与顺序经逐条复核全部正确(extrabees/core/ExtraBeeItems.java:22-53),包括易错的 UraniumDust("radioactiveDust")(枚举名与 name 串不同名,原文抓对了)。

30 种变种(damage = ordinal())

金属/矿物粉尘(16 种,damage 6-21)

damage 枚举名 name
6-21 IronDust … CyaniteDust ironDust, goldDust, silverDust, platinumDust, copperDust, tinDust, nickelDust, leadDust, zincDust, titaniumDust, tungstenDust, radioactiveDust(UraniumDust), coalDust, yelloriumDust, blutoniumDust, cyaniteDust

宝石碎片(5 种,damage 1-5)

DiamondShard(diamondShard)、EmeraldShard(emeraldShard)、RubyShard(rubyShard)、SapphireShard(sapphireShard)、LapisShard(lapisShard)

染料 / 粘土粉(8 种,damage 22-29)

RedDye(dyeRed)、YellowDye(dyeYellow)、BlueDye(dyeBlue)、GreenDye(dyeGreen)、WhiteDye(dyeWhite)、BlackDye(dyeBlack)、BrownDye(dyeBrown)、ClayDust(clayDust)

  • 特殊(1 种,damage 0) ScentedGear(scentedGear)

❌ 已订正(删除编造配方):原文断言「香氛齿轮: 蜜蜂匠人工作台配方(蜂蜜+蜂蜡+花粉+齿轮)」。全 Binnie 源码(803 个 java 文件)内 scentedGear / ScentedGear 只在枚举声明 ExtraBeeItems.java:25 出现 1 次,不存在任何配方注册。原文的配方描述是凭空捏造的,已删除。

已复核的原文断言

  • ✅ 合成配方正确:postInit()(ExtraBeeItems.java:100+)对每个 metalString != null 的粉尘注册「4 个 dust<Metal> → 1 个本粉尘」的无序配方;PlatinumDust 特殊处理,还接受 dustPlatinumMetallicPowder ×2 补足(:112-117)。原文「4 个粉尘 → 1 个对应锭或 1 个煤/钻石等」方向正确(准确说是产出本粉尘)。
  • ✅ 青金石碎片 → 青金石染料正确:postInit() 注册 4 × LapisShard → Items.dye(1, 4)(ExtraBeeItems.java:102-103)。原文「9 个青金石碎片 → 1 个青金石染料」的数量 9 是错的,应为 4。
  • ✅ OreDictionary 断言基本正确,但有 2 处偏差(原文写在 init() 里,不在构造函数,容易漏看):ExtraBeeItems.init()(:91-99)确实注册了 dyeRed/dyeYellow/dyeBlue/dyeGreen/dyeBlack/dyeWhite/dyeBrown。但——
    1. 只有 7 种染料,原文写「所有染料」会让人以为含 ClayDust(clayDust 未注册进任何 dye*)。
    2. 注册的物品是 ItemStack(ExtraBees.misc, 1, ordinal()),不是独立资源名 ExtraBees:dyeRed。

创造栏可见性(原文未写)

isActive()(ExtraBeeItems.java:190-195)对 16 种粉尘做条件判定:只有当 OreDictionary 里存在 ingot<Metal> 或 dust<Metal> 时才显示在创造栏;CoalDust 例外恒显示。宝石碎片与染料无此限制。故「30 种全部可见」不成立——实际可见数取决于已装 mod 提供的金属。

统一注册

  • i18n 键格式:extrabees.item.<name>(无 .name 后缀,ExtraBeeItems.java:216-218)——与 Botany/Genetics 的格式不一致,见 ExtraTrees 杂项物品 的说明
  • 取得物品:ExtraBeeItems.X.get(n) → new ItemStack(ExtraBees.misc, n, X.ordinal())

源码引用

  • 枚举:binnie/extrabees/core/ExtraBeeItems.java
  • 注册机制:binnie/core/item/ItemMisc.java
  • 实现接口:IItemMisc
浏览全部模组