Mixins

基本信息

属性 值
类名 com.slprime.chromatictooltipscompat.mixins.Mixins
文件 src/main/java/com/slprime/chromatictooltipscompat/mixins/Mixins.java
类型 enum(35 个常量)
继承 —
实现 IMixins
启用版本 Minecraft 1.7.10

功能

本 mod 的核心。枚举形式声明全部 Mixin 组: 目标 mod、门控条件、注入的类名、执行阶段。

实现要点

  • Mixin 组:35 个枚举常量,每个对应一个目标 mod 的补丁集合
  • 门控:34 个组有 setApplyIf(() -> CompatConfig.xxx);WAILA 组是唯一没有门控的(Mixins.java:67-69)
  • 异常门控:APPLIED_ENERGISTICS_AMOUNT 需要两个开关同时为真(:104)
  • 一mod多组:WAILA(2 组)、APPLIED_ENERGISTICS_2(2 组)、GREGTECH(2 组,early + late)
  • EARLY 阶段:仅 1 个:GREGTECH_EARLY(:137-140),其余 34 个都是 LATE
  • 命名缺陷:SCIENCE_NOT_LEISURE 的显示名写成 "GT Not Leisure"(:182)——应为 “Science Not Leisure”
  • Mixin 数:addClientMixins 声明的类名共 60 个,与磁盘上的 60 个 @Mixin 文件逐一对应