Mixins

基本信息

属性 值
类名 jss.bugtorch.mixins.Mixins
实现 com.gtnewhorizon.gtnhmixins.builders.IMixins 枚举
条目数 82(EARLY 69 + LATE 13)
覆盖类 89 个类字符串 → 88 个源文件 + 1 个内部类

功能

全 mod 的 Mixin 注册表。每个枚举条目用 MixinBuilder 声明:目标 mod 条件、 注入的类、setApplyIf 开关条件、以及 EARLY / LATE 阶段。

规模

指标 数量
枚举条目 82
EARLY 条目 69
LATE 条目 13
带 addRequiredMod 的条目 17
带 addExcludedMod 的条目 19
登记的类字符串 89(其中 1 个是内部类 MixinStructureMineshaftPieces$Room)
仓库中实际的 @Mixin 类 92

[!WARNING] 3 个 @Mixin 类已实现但从未注册(死代码,见 未注册 Mixin 类)。实际 92 个类中有 89 个被本枚举登记。

实现要点

  • 阶段决定注入包的解析根:EARLY → jss.bugtorch.mixins.early.*, LATE → jss.bugtorch.mixins.late.*。因此同名类可以有两个版本 (如 MixinEntity 同时存在于 early/minecraft/fastrandom/ 与 early/minecraft/logcleanup/)。
  • MC_MERGE_ITEM_STACK_* 是一个开关两条互斥路线:装了 CoFHCore 走 cofhcore/fix/MixinInventoryHelper,没装则走 minecraft/fix/MixinContainer (用 addExcludedMod 与 addRequiredMod 表达互斥)。
  • L_LIBRARY_MALFORMED_JSON_CRASH 的条件是 fixLLibraryMalformedJsonCrash && !proxyLLibraryPastebin, 与 L_LIBRARY_PROXY_PASTEBIN 显式互斥,且指向同名不同包的两个 MixinWebUtils。
  • 多个渲染 / 优化条目用 addExcludedMod 排除 Angelica、NotFine、OptiFine、Hodgepodge、LWJGL3ify, 避免与这些渲染补丁重复注入。

相关条目