From 65db30c1a29c9b3aa487bfc2e54acca96c1ecda8 Mon Sep 17 00:00:00 2001 From: GaLicn <133291877+GaLicn@users.noreply.github.com> Date: Sun, 7 Sep 2025 12:54:36 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=BA=E6=96=B9=E5=9D=97=E6=B3=A8=E5=86=8CIN?= =?UTF-8?q?=5FWORLD=5FGRID=5FNODE=5FHOST=E8=83=BD=E5=8A=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../extendedae_plus/init/ModCapabilities.java | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 src/main/java/com/extendedae_plus/init/ModCapabilities.java diff --git a/src/main/java/com/extendedae_plus/init/ModCapabilities.java b/src/main/java/com/extendedae_plus/init/ModCapabilities.java new file mode 100644 index 0000000..363f1aa --- /dev/null +++ b/src/main/java/com/extendedae_plus/init/ModCapabilities.java @@ -0,0 +1,31 @@ +package com.extendedae_plus.init; + +import appeng.api.AECapabilities; +import appeng.api.networking.IInWorldGridNodeHost; +import net.neoforged.neoforge.capabilities.RegisterCapabilitiesEvent; + +/** + * 注册 AE2 能力给本模组的方块实体,确保 AE 电缆能识别并连接到我们的 In-World Grid Node。 + */ +public final class ModCapabilities { + private ModCapabilities() {} + + public static void onRegisterCapabilities(RegisterCapabilitiesEvent event) { + // 为实现了 IInWorldGridNodeHost 的自定义方块实体注册 AE2 的 IN_WORLD_GRID_NODE_HOST 能力 + event.registerBlockEntity( + AECapabilities.IN_WORLD_GRID_NODE_HOST, + ModBlockEntities.WIRELESS_TRANSCEIVER_BE.get(), + (be, ctx) -> (IInWorldGridNodeHost) be + ); + + // 供应器状态控制器(实现了 IInWorldGridNodeHost) + event.registerBlockEntity( + AECapabilities.IN_WORLD_GRID_NODE_HOST, + ModBlockEntities.NETWORK_PATTERN_CONTROLLER_BE.get(), + (be, ctx) -> (IInWorldGridNodeHost) be + ); + + // 如果还有其他实现了 IInWorldGridNodeHost 的方块实体,也在这里一并注册 + // event.registerBlockEntity(AECapabilities.IN_WORLD_GRID_NODE_HOST, ModBlockEntities.NETWORK_PATTERN_CONTROLLER_BE.get(), (be, ctx) -> (IInWorldGridNodeHost) be); + } +}