CraftingHandler

基本信息

属性 值
类名 mantle.utils.CraftingHandler
类型 class,4 个 public 方法
源码规模 335 行(本 mod 最大的非客户端类)
触发 Mantle.serverStart(服务端启动时)
启用版本 1.7.10

功能

配方冲突探测器:扫描所有已注册配方,找出「同输入多输出」的冲突配方 并打日志,方便 mod 作者定位自己的配方被谁覆盖。

实现要点

  • 输出由 CoreConfig.dumpRecipeConflicts 开关控制(默认 false)。
  • 入口 logConflicts()(第 29 行)→ getPotentialConflicts()(第 46 行)返回 Map<IRecipe, List<IRecipe>>:key 是先注册的配方,value 是与之冲突的后继配方。
  • areItemStacksEqual / compdamage(第 315、330 行)是它自带的 ItemStack 相等比较——不比较 NBT,也不比较数量。
  • ⚠️ 语义提示:返回的 map 表达的是「同时可用」的候选,不代表某个配方已经失效;Forge 实际取第一个匹配的配方。

相关条目