From 14bb0ac8a8b0ff291dd119ce75d9f58e2488d357 Mon Sep 17 00:00:00 2001 From: 17146 <1714673995@qq.com> Date: Tue, 14 May 2024 20:42:33 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=8F=AF=E8=83=BD=E4=B8=BAnu?= =?UTF-8?q?ll=E7=9A=84=E6=96=B9=E6=B3=95=E8=B0=83=E7=94=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../target/network/TargetModVariables.java | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/src/main/java/net/mcreator/target/network/TargetModVariables.java b/src/main/java/net/mcreator/target/network/TargetModVariables.java index 9168bfe28..8ee2563d6 100644 --- a/src/main/java/net/mcreator/target/network/TargetModVariables.java +++ b/src/main/java/net/mcreator/target/network/TargetModVariables.java @@ -166,8 +166,12 @@ public class TargetModVariables { } public static MapVariables get(LevelAccessor world) { - if (world instanceof ServerLevelAccessor serverLevelAcc) - return serverLevelAcc.getLevel().getServer().getLevel(Level.OVERWORLD).getDataStorage().computeIfAbsent(MapVariables::load, MapVariables::new, DATA_NAME); + if (world instanceof ServerLevelAccessor serverLevelAcc) { + var level = serverLevelAcc.getLevel().getServer().getLevel(Level.OVERWORLD); + if (level != null) { + return level.getDataStorage().computeIfAbsent(MapVariables::load, MapVariables::new, DATA_NAME); + } + } return clientSide; } @@ -358,10 +362,16 @@ public class TargetModVariables { NetworkEvent.Context context = contextSupplier.get(); context.enqueueWork(() -> { context.setPacketHandled(true); - if (context.getDirection().getReceptionSide().isServer() || Minecraft.getInstance().player == null) + if (context.getDirection().getReceptionSide().isServer() || Minecraft.getInstance().player == null) { return; + } - PlayerVariables variables = Minecraft.getInstance().player.level().getEntity(message.target).getCapability(PLAYER_VARIABLES_CAPABILITY, null).orElse(new PlayerVariables()); + var entity = Minecraft.getInstance().player.level().getEntity(message.target); + if (entity == null) { + return; + } + + PlayerVariables variables = entity.getCapability(PLAYER_VARIABLES_CAPABILITY, null).orElse(new PlayerVariables()); variables.zoom = message.data.zoom; variables.zooming = message.data.zooming; variables.recoil = message.data.recoil;