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, 避免与这些渲染补丁重复注入。
相关条目
- TargetedMod -
addRequiredMod/addExcludedMod的参数 - BugTorchConfig -
setApplyIf读取的配置字段 - 未注册 Mixin 类 - 3 个死代码类
- BugTorchEarlyMixins - EARLY 阶段挂载