From 04b1bb1adee25555479ed009f6d86ab5038cb042 Mon Sep 17 00:00:00 2001 From: TendoArisu <165495758+XUANHLGG@users.noreply.github.com> Date: Tue, 6 Jan 2026 18:17:38 +0800 Subject: [PATCH] fix: Resolve client disconnect when opening containers in Spectator mode due to null packet buffer --- .../registration/impl/ContainerTypeDeferredRegister.java | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/main/java/moze_intel/projecte/gameObjs/registration/impl/ContainerTypeDeferredRegister.java b/src/main/java/moze_intel/projecte/gameObjs/registration/impl/ContainerTypeDeferredRegister.java index 9857cd1ce..2cee5c5bd 100644 --- a/src/main/java/moze_intel/projecte/gameObjs/registration/impl/ContainerTypeDeferredRegister.java +++ b/src/main/java/moze_intel/projecte/gameObjs/registration/impl/ContainerTypeDeferredRegister.java @@ -41,6 +41,14 @@ public ContainerTypeRegistryObject BE getBlockEntityFromBuf(FriendlyByteBuf buf, Class type) { if (buf == null) { + net.minecraft.world.phys.HitResult hit = Minecraft.getInstance().hitResult; + if (hit instanceof net.minecraft.world.phys.BlockHitResult blockHit) { + BlockPos pos = blockHit.getBlockPos(); + BE blockEntity = WorldHelper.getBlockEntity(type, Minecraft.getInstance().level, pos); + if (blockEntity != null) { + return blockEntity; + } + } throw new IllegalArgumentException("Null packet buffer"); } else if (FMLEnvironment.dist.isDedicatedServer()) { throw new UnsupportedOperationException("This method is only supported on the client.");