修复可能为null的方法调用
This commit is contained in:
parent
7ef3f2c605
commit
14bb0ac8a8
1 changed files with 14 additions and 4 deletions
|
@ -166,8 +166,12 @@ public class TargetModVariables {
|
||||||
}
|
}
|
||||||
|
|
||||||
public static MapVariables get(LevelAccessor world) {
|
public static MapVariables get(LevelAccessor world) {
|
||||||
if (world instanceof ServerLevelAccessor serverLevelAcc)
|
if (world instanceof ServerLevelAccessor serverLevelAcc) {
|
||||||
return serverLevelAcc.getLevel().getServer().getLevel(Level.OVERWORLD).getDataStorage().computeIfAbsent(MapVariables::load, MapVariables::new, DATA_NAME);
|
var level = serverLevelAcc.getLevel().getServer().getLevel(Level.OVERWORLD);
|
||||||
|
if (level != null) {
|
||||||
|
return level.getDataStorage().computeIfAbsent(MapVariables::load, MapVariables::new, DATA_NAME);
|
||||||
|
}
|
||||||
|
}
|
||||||
return clientSide;
|
return clientSide;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -358,10 +362,16 @@ public class TargetModVariables {
|
||||||
NetworkEvent.Context context = contextSupplier.get();
|
NetworkEvent.Context context = contextSupplier.get();
|
||||||
context.enqueueWork(() -> {
|
context.enqueueWork(() -> {
|
||||||
context.setPacketHandled(true);
|
context.setPacketHandled(true);
|
||||||
if (context.getDirection().getReceptionSide().isServer() || Minecraft.getInstance().player == null)
|
if (context.getDirection().getReceptionSide().isServer() || Minecraft.getInstance().player == null) {
|
||||||
return;
|
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.zoom = message.data.zoom;
|
||||||
variables.zooming = message.data.zooming;
|
variables.zooming = message.data.zooming;
|
||||||
variables.recoil = message.data.recoil;
|
variables.recoil = message.data.recoil;
|
||||||
|
|
Loading…
Add table
Reference in a new issue