Bee Nugget

基本信息

属性 值
注册名 MagicBees:beeNugget
类 ItemNugget(1 个物品,8 种 meta)
类型数 8(NuggetType,实测去重后 8)

来源:magicbees/main/Config.java:462-478、magicbees/item/types/NuggetType.java。

8 种蜂用矿粒

枚举 矿粒 矿物词典
IRON 铁粒 nuggetIron
COPPER 铜粒 nuggetCopper
TIN 锡粒 nuggetTin
SILVER 银粒 nuggetSilver
LEAD 铅粒 nuggetLead
DIAMOND 钻石粒 nuggetDiamond
EMERALD 绿宝石粒 nuggetEmerald
APATITE 磷灰石粒 nuggetApatite

来源:Config.java:489-496(逐个 OreDictionary.registerOre("nugget<Metal>", ...))。

⚠️ 运行时动态禁用(重要)

setupNuggets()(Config.java:462-478)在注册前逐个检查该金属是否有对应矿物:

if (OreDictionary.getOres("ingot" + item).size() <= 0) {
    if (OreDictionary.getOres("nugget" + item).size() <= 0) {
        LogHelper.info("Disabled nugget " + type.toString());
        type.setInactive();
    }
}

若 ingot<Metal> 和 nugget<Metal> 都不存在,该矿粒被 setInactive() 标记为禁用。

⚠️ 这意味着实际可用的矿粒数取决于同时安装的模组。裸装 MagicBees 时,铜/锡/银/铅/磷灰石很可能被禁用(取决于 Forestry 与 IE 生态)。「8 种」是枚举总数,不是运行时保证可用数。 这是本条目最容易被误写成「8 种全部可用」的地方。

被禁用的项不会出现在创造栏——ItemNugget.getSubItems 显式过滤:

for (NuggetType type : NuggetType.VALUES) {
    if (type.isActive()) list.add(new ItemStack(item, 1, type.ordinal()));
}

(magicbees/item/ItemNugget.java:39-45)但 OreDictionary.registerOre 是无条件调用的(Config.java:489-496),即被禁用的矿粒仍会注册进矿物词典。

相关条目