运行时集成

基本信息

属性 值
加载检查数 18
检测 API cpw.mods.fml.common.Loader.isModLoaded(String)
分布位置 AlchemicalWizardry.java 的 load()(2 处)、postInit()(13 处)、blacklistAccelerators()(2 处)、blacklistDemons()(2 处);proxy.registerEntities 间接调用 initiateRegistry()

18 个检查点全部实测存在(grep -rho 'Loader.isModLoaded("[^"]*")' 去重后为 18 个不同字符串),无重复、无遗漏。

全部 18 个检查点

检测的 modid 位置 触发的动作 是否新增注册内容
Waila :743 BloodMagicWailaPlugin.init() 否(注册 Waila 插件)
NotEnoughItems :3234 IMCForNEI.IMCSender() 否(发 IMC 隐藏物品)
gregtech_nh :3242 置 isGregTech5UnofficialNewHorizonsLoaded 否
endlessids :3243 置 isEndlessIdsLoaded 否
Thaumcraft :3245 注册 4 件 sanguine 装备 + 4 条绑定配方 + Aspect 是
guideapi :3299 RecipeHolder.init() + 注册 itemMailCatalogue 物品 + BloodMagicGuide.registerGuide() 是(1 个物品)
harvestcraft :3319 PamHarvestCompatRegistry.registerPamHandlers() 否
MineTweaker3 :3324 MineTweakerIntegration.register() 否
AgriCraft :3329 HarvestRegistry.registerHarvestHandler(new AgriCraftCropHarvestHandler()) 否
Botania :3334 置 isBotaniaLoaded 否
PneumaticCraft :3335 置 isPneumaticCraftLoaded 否
ForgeMultipart :3336 置 isFMPLoaded 否
chisel :3337 置 isChiselLoaded 否
structurelib :3339 CompatStructureLib.init() 否
Torcherino :3361 向 Torcherino 拉黑 TEAltar、TEMasterStone 否
ChromatiCraft :3365 反射调用 AcceleratorBlacklist.addBlacklist 拉黑 2 个 TE 否
MineFactoryReloaded :3394 向 MFR 发送 24 个实体的 AutoSpawner + Grinder 拉黑 否
EnderIO :3422 向 EnderIO 发送 24 个实体的 poweredSpawner 拉黑 否

两个会注册物品的可选依赖

18 个检查中只有 2 个会向游戏注册表写入物品:

依赖 新增物品 注册位置
Thaumcraft 4 件 sanguine* 装备 AlchemicalWizardry.java:3254-3257
guideapi 1 件 itemMailCatalogue(物品邮购目录) AlchemicalWizardry.java:3306-3307

itemMailCatalogue 还有一个无序合成配方(:3308-3314):书 + 黑色染料 + 羽毛 + 玻璃 ×2(玻璃用 OreDictionary.WILDCARD_VALUE)。

只置标志的 4 个依赖

gregtech_nh、endlessids、Botania、PneumaticCraft、ForgeMultipart、chisel 这 6 个分支体只有一行 isXxxLoaded = Loader.isModLoaded(...),不产生其他副作用。它们的标志在 client/ 侧的 proxy 中被读取用于渲染开关,本次未逐处核实,故不做进一步断言。

compat 包

WayofTime.alchemicalWizardry.compat 包只有 4 个文件:

文件 作用
BloodMagicWailaPlugin.java Waila 插件入口
BloodMagicWailaProvider.java Waila 数据提供者实现
IBloodMagicWailaProvider.java 提供者接口(跨模组 API)
structurelib/ StructureLib 兼容(CompatStructureLib)

收割(Harvest)系统

initHarvestRegistry()(:4334-4338)无条件注册 3 个 handler:

Handler 目标
BloodMagicHarvestHandler 本模组作物
GourdHarvestHandler 葫芦
CactusReedHarvestHandler 仙人掌

若 HarvestCraft 存在则额外注册 Pam 系 handler;若 AgriCraft 存在则注册 AgriCraftCropHarvestHandler。源码中 common/items/... 下还有 GenericItemStackHarvestHandler、GenericSeededHarvestHandler、GenericPamSeedlessFruitHarvestHandler 三个 handler 类,但未在上述两处注册点出现,本条目不将其计入已注册数量。

数值

数值名 值
加载检查点总数 18
会注册物品的可选依赖 2(Thaumcraft 4 件、guideapi 1 件)
只置标志的依赖 6
拉黑类集成 4(Torcherino、ChromatiCraft、MFR、EnderIO)
无条件注册的 Harvest handler 3
compat 包文件数 4

相关条目