diff --git a/fabric/src/main/java/com/seibel/distanthorizons/fabric/mixins/client/MixinClientPacketListener.java b/fabric/src/main/java/com/seibel/distanthorizons/fabric/mixins/client/MixinClientPacketListener.java index dd8c8a66f..0bb0bdbef 100644 --- a/fabric/src/main/java/com/seibel/distanthorizons/fabric/mixins/client/MixinClientPacketListener.java +++ b/fabric/src/main/java/com/seibel/distanthorizons/fabric/mixins/client/MixinClientPacketListener.java @@ -60,13 +60,11 @@ public class MixinClientPacketListener return; } - + // Important to get the level from the chunk because the client level might be different if Immersive Portals is present. + ClientLevel level = (ClientLevel) chunk.getLevel(); executor.execute(() -> { - // When Immersive Portals is present we might load a chunk from another level. - // This might cause LODs from another dimension to overwrite the LODs in the current dimension, which is generally undesirable. - if (chunk.getLevel() != this.level) return; - IClientLevelWrapper clientLevel = ClientLevelWrapper.getWrapper((ClientLevel) this.level); + IClientLevelWrapper clientLevel = ClientLevelWrapper.getWrapper(level); SharedApi.INSTANCE.applyChunkUpdate(new ChunkWrapper(chunk, clientLevel), clientLevel); }); }