配方总览

基本信息

属性 值
配方来源 纯代码注册,无 .json 配方文件
注册源 com.fouristhenumber.utilitiesinexcess.common.recipe.RecipeLoader
注册调用 CommonProxy.preInit 末尾 RecipeLoader.run()(CommonProxy.java:136)
配方总数 147(跨验证,见下)
开关总数 72(RecipeConfig),默认全部 true

功能

本模组的 147 条配方全部在 RecipeLoader 中以 Java 代码写死,通过 GameRegistry.addShapedRecipe / addShapelessRecipe / addFurnaceRecipe 注册。src/main/resources 下没有任何 recipe JSON。

配方辅助方法 addShapedRecipe / addShapelessRecipe / addFurnaceRecipe(RecipeLoader.java:1748-1757)都是对 DisableableItemStack 静态方法的转发。后者会在注册前检查产物与所有材料是否 isEnabled(),任一被配置关闭则整条配方跳过(DisableableItemStack.java:26-47)。因此关掉某个方块/物品会自动移除所有依赖它的配方,无需手工清理。

数值

配方类型 数量 统计口径
有序合成 addShapedRecipe 111 出现 112 次,减 1 处方法声明(RecipeLoader.java:1748)
无序合成 addShapelessRecipe 13 出现 14 次,减 1 处方法声明(RecipeLoader.java:1752)
熔炉 addFurnaceRecipe 4 出现 5 次,减 1 处方法声明(RecipeLoader.java:1756)
自定义 IRecipe 实例 6 见下
末影莲祭坛配方(独立注册表) 13 EnderLocusRegistry.instance().addRecipe
合计 147

6 个自定义 IRecipe

这些不是有序/无序配方,而是自定义 IRecipe 实现,在 RecipeLoader 中直接 new 并 GameRegistry.addRecipe:

类 实例数 位置 用途
RecipePaintRollerToPaint 2 RecipeLoader.java:1287, 1296 油漆滚筒染色(1:1 与 1:16 两种)
RecipeInvertedIngot 1 RecipeLoader.java:1338 反转锭的动态转换
RecipeGlove 1 RecipeLoader.java:1488 手套合成
PeacefulRecipe 2 RecipeLoader.java:1725, 1738 仅在和平难度可用的配方

common/recipe/ 包内共 6 个文件:RecipeLoader(主注册器)+ 上述 4 个自定义配方类 + DisableableItemStack(开关过滤器)。

13 条末影莲祭坛配方

EnderLocus 方块拥有自己的一套配方注册表,与工作台配方完全独立:EnderLocusRegistry.instance().addRecipe(new EnderLocusRecipe(...)) 在 RecipeLoader 中被调用 13 次。祭坛配方消耗的是祭坛方块内的物品,而非工作台九宫格。

交互 — 开关机制

项目 数值
RecipeConfig 布尔开关总数 72
其中默认 true 72
默认 false 0
在 RecipeLoader 中被引用的开关数 72(无死开关)

唯一不受任何配方开关控制的是真绿幕:RecipeLoader.java:539-549 直接无条件调用 addShapedRecipe(ModBlocks.TRUE_GREENSCREEN, ...),外层没有 if (RecipeConfig.…) 判断。这与同文件其余所有配方都带开关的写法不一致,是一个可核实的不一致。但即使该配方无条件注册,若 BlockConfig.enableTrueGreenscreen 为假,产物方块不存在,DisableableItemStack.isEnabled() 仍会拦截它(DisableableItemStack.java:27)。

交互 — 分组开关

RecipeLoader.run() 把 147 条配方按功能分组,每组一个总开关。已核实的组:

配方组 开关 状态
发电机 enableGeneratorRecipes 默认 true
压缩方块 enableCompressedBlockRecipes 默认 true
垃圾箱 enableTrashCan{Item,Fluid,Energy}Recipe 默认 true
箱子三档 enable{MarginallyMaximised,SignificantlyShrunk,RadicallyReduced}ChestRecipe 默认 true
传送门 enableUnderworldPortalRecipe / enableEndOfTimePortalRecipe 默认 true
文件柜 enableFilingCabinetRecipes / enableFilingCabinetUpgradeRecipe 默认 true
虚空采掘场 enableVoidQuarryRecipe / enableVoidMarkerRecipe / enableVoidQuarryUpgradeRecipes 默认 true
智能泵 enableSmartPumpRecipe 默认 true
反转工具 enableInvertedToolRecipes 默认 true
洒水壶 enableWateringCanRecipe 默认 true
反转物品 enableReversionSigilRecipe / enableInvertedIngotRecipe 默认 true
末影莲矿石 enableEnderLocusOreRecipes 默认 true

全部 72 个开关的逐条名称本条目未完整抄录——RecipeConfig.java 含 72 个 @Config.DefaultBoolean(true) 字段,完整清单可查该文件。

相关条目