LateMixinOrchestrationMixin

基本信息

属性 值
全名 com.gtnewhorizon.gtnhmixins.mixins.LateMixinOrchestrationMixin
文件 module-gtnhmixins/src/main/java/…/mixins/LateMixinOrchestrationMixin.java
行数 125
目标 LoadController
所属配置 mixins.gtnhmixins.json
启用版本 Minecraft 1.7.10

注入点

@Mixin(value = LoadController.class, remap = false)
public class LateMixinOrchestrationMixin {
    @Inject(method = "distributeStateMessage(Lcpw/mods/fml/common/LoaderState;[Ljava/lang/Object;)V",
            at = @At(value = "HEAD"))
项 值
目标类 LoadController
remap false
注入方法 distributeStateMessage
描述符 (Lcpw/mods/fml/common/LoaderState;[Ljava/lang/Object;)V
at HEAD

功能

晚期(Late)mixin 的编排。在 FML 每次分发加载状态消息时, 扫描并调用所有带 @LateMixin 注解且实现 ILateMixinLoader 的类。

⚠️ required: true 但无 plugin 兜底

所属配置 mixins.gtnhmixins.json 的 required 为 true, 且没有 plugin 字段 —— 即没有 shouldApplyMixin 钩子。

但这不构成「缺第三方 mod 则启动即崩」的缺陷: 目标类 LoadController 是 module-mixinbooterlegacy 自带的 MixinBooter 内部类,不是外部 mod 的类, 由本仓自己提供。

⚠️ 真正的风险点在于两个配置争抢同一注入点: 本 mixin 与 LoadControllerMixin 都注入 distributeStateMessage 的 HEAD。 若两者同时生效且 distributeStateMessage 签名在某个 MixinBooter 版本中变化, 会因 required: true 直接中止启动。

minVersion 要求最严

mixins.gtnhmixins.json 要求 0.8.3-GTNH —— 是本仓 4 个配置中唯一要求 GTNH 特制 Mixin 版本的一个 (其余为 0.8 / 0.8.3 / 0.6)。 用非 GTNH 版 Mixin 会因版本不满足而拒绝加载本 mixin。

相关条目