箱子类型开关(enable*Chests)

基本信息

配置项全部位于 config/ironchest.cfg 的 general 段,由 IronChest.preInit 读取(IronChest.java:85-100)。

键名 类型 默认值 对应枚举 字段
enableSteelChests boolean true STEEL IronChest.ENABLE_STEEL_CHESTS
enableSilverChests boolean false SILVER IronChest.ENABLE_SILVER_CHESTS
enableDarkSteelChests boolean isGTNHLoaded DARKSTEEL IronChest.ENABLE_DARK_STEEL_CHESTS
enableNetheriteChests boolean !isGTNHLoaded NETHERITE IronChest.ENABLE_NETHERITE_CHESTS

其中 isGTNHLoaded = Loader.isModLoaded("dreamcraft")(IronChest.java:56),即装了 DreamCraft(GTNH)时为 true。

[!IMPORTANT] ENABLE_STEEL_CHESTS / ENABLE_SILVER_CHESTS 的字段初始值(IronChest.java:47-48)与 cfg.get(...) 的默认值一致(true / false),但 ENABLE_DARK_STEEL_CHESTS / ENABLE_NETHERITE_CHESTS 的字段初始值(false / true)与 cfg.get 的默认值(isGTNHLoaded / !isGTNHLoaded)不一致。只有在 cfg.load() 抛出异常提前中断时才会用到字段初始值。

GTNH 上的默认值

配置项 非 GTNH GTNH(装了 DreamCraft)
enableSteelChests true true
enableSilverChests false false
enableDarkSteelChests false true
enableNetheriteChests true false

因此在 GTNH 上,135 格档只有玄钢箱子存在,下界合金箱子不存在。

影响面

isEnabled()(IronChestType.java:121)只对 STEEL / SILVER / DARKSTEEL / NETHERITE 四个类型返回配置值,其余 8 个常量恒返回 true。因此这 4 个开关无法关闭 Iron Chest、Copper Chest、Gold Chest、Diamond Chest、Crystal Chest、Obsidian Chest、Dirt Chest 9000 里的任何一个。

关闭某个类型会同时导致三件事:

  1. 方块物品不注册:registerBlocksAndRecipes 里 if (typ.isEnabled()) 跳过 → 该类型不进 registredChests 缓存,也不 GameRegistry.registerCustomItemStack。
  2. 不进创造模式物品栏:getSubBlocks 里 if (type.isEnabled()) 跳过。
  3. 相关升级器物品不注册:ChestChangerType.buildItems 要求 type.source.isEnabled() && type.target.isEnabled(),任一端关闭则该升级器整体消失。

[!NOTE] registerBlockIcons 里的 IronChestType.makeIcons 只判 isValidForCreativeMode(),不判 isEnabled()。所以被关闭的箱子图标仍会被注册,只是没有物品/方块能用到它。

连带影响:配方与存档重映射

受影响者 连带效果
IRON 的 recipeUpgradeOneTier 若 STEEL 关闭则 tier 3 只剩 SILVER,8 铁锭围铁箱子的配方少一条(SILVER 也关则一条都没有)
GOLD 的 recipeUpgradeOneTier 同理,tier 3 候选按开关增减
DIAMOND / CRYSTAL 的 recipeDirect tier 5 候选固定为 3 个(都不受开关控制),不受影响
DARKSTEEL 的 recipeUpgradeOneTier tier 5 候选固定 3 个(钻石/水晶/黑曜石都不受开关控制),不受影响
NETHERITE 的 recipeUpgradeOneTier tier 5 且 resistance >= 1 → 只有黑曜石,不受开关控制
missingMapping 旧名重映射 STEEL / DARKSTEEL / NETHERITE 三个开关直接决定走哪条重映射分支

各开关对应的升级器

关闭的箱子 连带消失的升级器
STEEL Copper to Steel Chest Upgrade、Iron to Steel Chest Upgrade、Steel to Gold Chest Upgrade
SILVER Copper to Silver Chest Upgrade、Iron to Silver Chest Upgrade、Silver to Gold Chest Upgrade
DARKSTEEL Diamond to Dark Steel Chest Upgrade、Crystal to Dark Steel Chest Upgrade、Obsidian to Dark Steel Chest Upgrade
NETHERITE Obsidian to Netherite Chest Upgrade

[!WARNING] IRON 与 WOOD 之间、COPPER 与 WOOD 之间等不含这四种箱子的升级器不受影响,永远存在。

数值

数值 默认值 说明
可配置关闭的箱子数 4 / 11 仅 steel / silver / darksteel / netherite
恒存在的箱子数 7 / 11 iron / gold / copper / diamond / crystal / obsidian / dirtchest9000

相关条目