BloodMagic

Blood Magic 集成插件

基本信息

属性 值
路径 com.github.lunatrius.ingameinfo.integration.bloodmagic.BloodMagic
行数 24
父类 Plugin
依赖的 modid AWWayofTime
提供的 tag 见下

⚠️ 源码带 @SuppressWarnings("UnusedDeclaration") —— 因为该类只被 PluginLoader 用字符串反射实例化 (PluginLoader.java:26-30 的字符串数组), 没有任何静态引用,编译器会报「未使用的声明」。

⚠️ 依赖声明为 compileOnly('com.github.GTNewHorizons:BloodMagic:1.9.4:dev')({transitive = false})

modid 实测与陷阱

modid AWWayofTime(“A whence of Time”)与模组名 Blood Magic 完全无关 —— 这是 1.7.10 Blood Magic 的实际 modid。Wiki 分类名 bloodmagic 与 modid 不同,不要把分类名当 modid 用。

对应 Wiki 分类 bloodmagic(已登记未成文,前向引用)。

三个覆写

方法 返回
getDependency() Names.Mods.*_MODID = AWWayofTime
getDependencyName() Names.Mods.*_NAME = Blood Magic
load() TagBloodMagic.register()

⚠️ getDependency() 与 getDependencyName() 分别读 Names 的 Mods 段的两个不同常量 —— modid 与显示名分开定义。modid 的异常(如 Blood Magic 的 AWWayofTime) 无法从显示名推断,只能看 Names 或 Loader.isModLoaded 的实参。

load

public void load() { TagBloodMagic.register(); }

由 PluginLoader.postInit(:60-69)在 preInit 筛出 canLoad() 为真的插件后调用。

⚠️ load() 只注册 tag,不注册任何事件、命令或渲染钩子。 本 mod 对第三方模组的全部介入都是「读它们的值,显示到 HUD」—— 不修改对方任何状态。

相关