diff --git a/build.gradle b/build.gradle index 2395d73..9687e17 100644 --- a/build.gradle +++ b/build.gradle @@ -125,19 +125,6 @@ neoForge { // Include resources generated by data generators. sourceSets.main.resources { srcDir 'src/generated/resources' } -// 暂时排除缺少依赖的可选联动源码,待补齐依赖后再启用 -sourceSets.main.java { - // 编译期引入 ExtendedAE 源码(仅作编译期引用,运行期由依赖提供) - srcDir 'othermods/ExtendedAE-1.21-2.2.21-neoforge/src/main/java' - - // 解封本模组全部源码;仅排除非 accessor 的 mixin 实现,放通 accessor 包用于编译期引用 - include 'com/extendedae_plus/**' - // 允许 accessor - include 'com/extendedae_plus/mixin/**/accessor/**' - // 放开此前被排除的 mixin 源码,便于完整移植功能;是否实际注入由 mixins.json 决定 - // 注意:可选联动(如 ae2WTlib)未在 mixins.json 注册时不会注入,避免运行期崩溃 -} - configurations { runtimeClasspath.extendsFrom localRuntime } diff --git a/src/main/java/com/extendedae_plus/ExtendedAEPlus.java b/src/main/java/com/extendedae_plus/ExtendedAEPlus.java index a923b8f..aaf641c 100644 --- a/src/main/java/com/extendedae_plus/ExtendedAEPlus.java +++ b/src/main/java/com/extendedae_plus/ExtendedAEPlus.java @@ -9,6 +9,7 @@ import com.extendedae_plus.init.ModBlockEntities; import com.extendedae_plus.init.ModCreativeTabs; import com.extendedae_plus.init.ModItems; import com.extendedae_plus.init.ModMenuTypes; +import com.extendedae_plus.init.ModCapabilities; import com.extendedae_plus.network.ModNetwork; import net.minecraft.resources.ResourceLocation; @@ -49,6 +50,8 @@ public class ExtendedAEPlus { modEventBus.addListener(this::commonSetup); // 注册网络负载处理器(NeoForge 1.21 新式 Payload API) modEventBus.addListener(ModNetwork::registerPayloadHandlers); + // 注册能力:让 AE2 电缆识别我们的 In-World Grid Node Host + modEventBus.addListener(ModCapabilities::onRegisterCapabilities); // 注册本模组方块/物品/创造物品栏 ModBlocks.BLOCKS.register(modEventBus); diff --git a/src/main/java/com/extendedae_plus/mixin/extendedae/client/HighlightButtonMixin.java b/src/main/java/com/extendedae_plus/mixin/extendedae/client/HighlightButtonMixin.java index 7699fdb..a95ea62 100644 --- a/src/main/java/com/extendedae_plus/mixin/extendedae/client/HighlightButtonMixin.java +++ b/src/main/java/com/extendedae_plus/mixin/extendedae/client/HighlightButtonMixin.java @@ -55,10 +55,7 @@ public abstract class HighlightButtonMixin { boolean posEqual = Objects.equals(btnPos, infoPos); boolean faceEqual = (btnFace == null && infoFace == null) || Objects.equals(btnFace, infoFace); if (posEqual && faceEqual) { - long serverId = entry.getKey(); - var setMethod = terminal.getClass().getMethod("setCurrentlyChoicePatternProvider", long.class); - setMethod.setAccessible(true); - setMethod.invoke(terminal, serverId); + // 当前仅执行高亮和坐标提示功能,避免反射调用不存在的方法导致告警。 break; } } @@ -68,4 +65,5 @@ public abstract class HighlightButtonMixin { } } } -} \ No newline at end of file +} + \ No newline at end of file diff --git a/src/main/resources/extendedae_plus.mixins.json b/src/main/resources/extendedae_plus.mixins.json index bb813ba..670382c 100644 --- a/src/main/resources/extendedae_plus.mixins.json +++ b/src/main/resources/extendedae_plus.mixins.json @@ -39,6 +39,8 @@ "ae2.client.gui.SlotGridLayoutMixin", "jei.EncodePatternTransferHandlerMixin", "jei.AE2JeiEncodePatternTransferHandlerMixin", + "jei.EncodingHelperMixin", + "jei.accessor.BookmarkOverlayAccessor", "ae2.accessor.AEBaseScreenAccessor", "ae2.accessor.MEStorageScreenAccessor", "accessor.AbstractContainerScreenAccessor",