ThaumicHorizonsCompatHandler

基本信息

属性 值
类名 com.gtnewhorizons.angelicacompat.asm.handlers.ThaumicHorizonsCompatHandler
实现接口 CompatHandler
启用条件 PatchesConfig.patchThaumicHorizons == true
注册枚举 CompatHandlers.THAUMIC_HORIZONS
启用版本 Minecraft 1.7.10(仅客户端)

功能

把 Thaumic Horizons 的客户端 HUD overlay 方法加入 Angelica HUDCaching 的早退目标:

类 方法
com.kentington.thaumichorizons.client.lib.RenderEventHandler renderOverlay

→ 由 HUDCachingEarlyReturnTransformer 读取并在方法开头插入:

if (HUDCaching.shouldReturnEarly()) return;
// ... 原方法体 ...

实现要点

仅覆写 getHUDCachingEarlyReturn():

return ImmutableMap.of("com.kentington.thaumichorizons.client.lib.RenderEventHandler", ImmutableList.of("renderOverlay"));

其它 getFieldLevelTessellator/getTileEntityNullGuard/getThreadSafeISBRHAnnotations/extraTransformers 均返回 null。

与 ThaumcraftCompatHandler 完全平行——一个针对原版 Thaumcraft,一个针对其分支 Thaumic Horizons。两个 handler 同时启用则 Angelica HUDCaching 缓存命中时两份 HUD 都被跳过。

输出与调试

注入日志(来自 HUDCachingEarlyReturnTransformer):

[AngelicaTweaker] Injecting HUDCaching Conditional Return: com.kentington.thaumichorizons.client.lib.RenderEventHandler#renderOverlay

详见 AngelicaCompatCore — DUMP_CLASSES 模式下输出改写后字节码。

数值

数值 默认 含义
注册目标方法数 1 RenderEventHandler#renderOverlay
触发开关 PatchesConfig.patchThaumicHorizons 配置关闭则 handler 不装载
联动开关 AngelicaConfig.enableHudCaching HUD 缓存未启用时 transformer 也不会装载

限制

  • 同 ThaumcraftCompatHandler:TH 升级到 renderOverlay 改名 / 改返回值时本 handler 静默失效。
  • 仅跳过 renderOverlay;TH 自定义 HUD 的其他绘制方法不会被跳过。

第三方 mod 集成

仅针对 com.kentington.thaumichorizons (Thaumic Horizons) mod。

相关条目