From fa37427ddaea58129eb1e078192544f1f3a3b18b Mon Sep 17 00:00:00 2001 From: C-H716 <1536152356@qq.com> Date: Mon, 15 Sep 2025 14:50:22 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E8=B0=83=E6=95=B4=E6=97=A0=E7=BA=BF?= =?UTF-8?q?=E6=94=B6=E5=8F=91=E5=99=A8=E7=BB=A7=E6=89=BFAEBaseBlockEntity?= =?UTF-8?q?=E4=BB=A5=E6=94=AF=E6=8C=81ae=E6=96=B9=E5=9D=97=E9=87=8D?= =?UTF-8?q?=E5=91=BD=E5=90=8D=E5=8A=9F=E8=83=BD;=20=E6=B7=BB=E5=8A=A0jade?= =?UTF-8?q?=E4=BB=8E=E8=8A=82=E7=82=B9=E6=96=B9=E5=9D=97=E6=98=BE=E7=A4=BA?= =?UTF-8?q?=E4=B8=BB=E8=8A=82=E7=82=B9=E5=90=8D=E7=A7=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../wireless/WirelessTransceiverBlockEntity.java | 12 ++++++------ .../WirelessTransceiverJadePluginComponents.java | 7 ++++++- .../jade/WirelessTransceiverProvider.java | 3 +++ 3 files changed, 15 insertions(+), 7 deletions(-) diff --git a/src/main/java/com/extendedae_plus/content/wireless/WirelessTransceiverBlockEntity.java b/src/main/java/com/extendedae_plus/content/wireless/WirelessTransceiverBlockEntity.java index 9b2830e..09b843d 100644 --- a/src/main/java/com/extendedae_plus/content/wireless/WirelessTransceiverBlockEntity.java +++ b/src/main/java/com/extendedae_plus/content/wireless/WirelessTransceiverBlockEntity.java @@ -2,6 +2,7 @@ package com.extendedae_plus.content.wireless; import appeng.api.networking.*; import appeng.api.util.AECableType; +import appeng.blockentity.AEBaseBlockEntity; import com.extendedae_plus.init.ModBlockEntities; import com.extendedae_plus.init.ModItems; import com.extendedae_plus.wireless.IWirelessEndpoint; @@ -12,7 +13,6 @@ import net.minecraft.core.Direction; import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.world.level.Level; -import net.minecraft.world.level.block.entity.BlockEntity; import net.minecraft.world.level.block.state.BlockState; import org.jetbrains.annotations.Nullable; @@ -26,7 +26,7 @@ import java.util.Objects; * - 集成 AE2 节点; * - 集成无线主/从逻辑。 */ -public class WirelessTransceiverBlockEntity extends BlockEntity implements IWirelessEndpoint, IInWorldGridNodeHost { +public class WirelessTransceiverBlockEntity extends AEBaseBlockEntity implements IWirelessEndpoint, IInWorldGridNodeHost { private IManagedGridNode managedNode; @@ -187,7 +187,7 @@ public class WirelessTransceiverBlockEntity extends BlockEntity implements IWire /* ===================== NBT ===================== */ @Override - protected void saveAdditional(CompoundTag tag) { + public void saveAdditional(CompoundTag tag) { super.saveAdditional(tag); tag.putLong("frequency", frequency); tag.putBoolean("master", masterMode); @@ -198,15 +198,15 @@ public class WirelessTransceiverBlockEntity extends BlockEntity implements IWire } @Override - public void load(CompoundTag tag) { - super.load(tag); + public void loadTag(CompoundTag tag) { + super.loadTag(tag); this.frequency = tag.getLong("frequency"); this.masterMode = tag.getBoolean("master"); this.locked = tag.getBoolean("locked"); + if (managedNode != null) { managedNode.loadFromNBT(tag); } - // 应用到链接器 if (masterMode) { masterLink.setFrequency(frequency); } else { diff --git a/src/main/java/com/extendedae_plus/integration/jade/WirelessTransceiverJadePluginComponents.java b/src/main/java/com/extendedae_plus/integration/jade/WirelessTransceiverJadePluginComponents.java index 4cd98a9..2505db5 100644 --- a/src/main/java/com/extendedae_plus/integration/jade/WirelessTransceiverJadePluginComponents.java +++ b/src/main/java/com/extendedae_plus/integration/jade/WirelessTransceiverJadePluginComponents.java @@ -37,7 +37,12 @@ public enum WirelessTransceiverJadePluginComponents implements IBlockComponentPr if (data.contains("masterMode") && !data.getBoolean("masterMode") && data.contains("masterPos")) { BlockPos pos = BlockPos.of(data.getLong("masterPos")); String dim = data.contains("masterDim") ? data.getString("masterDim") : ""; - tooltip.add(Component.literal("主节点位置: (" + pos.getX() + ", " + pos.getY() + ", " + pos.getZ() + ")")); + String customName = data.contains("customName") ? data.getString("customName") : null; + if (customName != null) { + tooltip.add(Component.literal("主节点: " + customName + "(" + pos.getX() + ", " + pos.getY() + ", " + pos.getZ() + ")")); + } else { + tooltip.add(Component.literal("主节点位置: (" + pos.getX() + ", " + pos.getY() + ", " + pos.getZ() + ")")); + } if (!dim.isEmpty()) { tooltip.add(Component.literal("维度: " + dim)); } diff --git a/src/main/java/com/extendedae_plus/integration/jade/WirelessTransceiverProvider.java b/src/main/java/com/extendedae_plus/integration/jade/WirelessTransceiverProvider.java index 05e34a8..7786e1c 100644 --- a/src/main/java/com/extendedae_plus/integration/jade/WirelessTransceiverProvider.java +++ b/src/main/java/com/extendedae_plus/integration/jade/WirelessTransceiverProvider.java @@ -46,6 +46,9 @@ public enum WirelessTransceiverProvider implements IServerDataProvider