建筑师工艺插件(ArchitectureCraft Plugin)

基本信息

属性 值
插件 uid architecturecraft(ArchitectureCraftPlugin.java:18)
依赖 modid ArchitectureCraft(@WDMlaPlugin(dependencies = "ArchitectureCraft"),ArchitectureCraftPlugin.java:18)
资源命名空间 architecturecraft(ArchitectureCraftPlugin.path())
配置分类 plugins_autogen.architecturecraft
注册调用 服务端 1 次 / 客户端 2 次
生效侧 两侧

功能

为 Architect’s Palette(建筑师工艺)提供:锯台内的物品存储展示、方块形状提示,以及基于形状的采集判定。

形状信息是本插件的核心增量——BlockShapeProvider 把方块的实际外形轮廓画进提示框,ShapeHarvestHandler 则按该形状而非方块整体判断能否采集。两者都绑定到 BlockShape.class。

注册内容

侧 方法 目标类 provider
服务端 registerItemStorage BlockSawbench ItemStorageProvider.Extension.INSTANCE
客户端 registerBlockComponent BlockShape BlockShapeProvider.INSTANCE
客户端 registerHarvest BlockShape ShapeHarvestHandler.INSTANCE

服务端注册复用的是 通用插件 的 ItemStorageProvider.Extension——即本插件不实现自己的容器遍历,而是复用通用 IInventory 适配。

数值

本插件不新增任何配置字段。它完全依赖 plugins_autogen.architecturecraft 下由 registerClient 写入语言键的分类(ArchitectureCraftPlugin.java,registerClient 末段 setLanguageKey("provider.wdmla.architecturecraft.category"),中文「建筑师工艺」见 zh_CN.lang:287)。

实际生效的开关来自共享的 harvestability 组(ShapeHarvestHandler 实现 HarvestHandler,被 registerHarvest 挂到 BlockShape.class),因此 采集能力插件 的 icon / text / condition 三组选项同样作用于本插件。

交互

插件的启用由 PluginScanner 在 preInit 阶段决定:Loader.isModLoaded("ArchitectureCraft") 为假时直接跳过,并打日志 skipped plugin %s loading: missing dependency(PluginScanner.java:37-40、65-75)。装上模组后无需任何配置即可自动生效。

相关条目