From 9360f9d3a8d7ddd6079341f48a3464ccff06deaa Mon Sep 17 00:00:00 2001 From: makamys Date: Wed, 16 Jun 2021 16:13:45 +0200 Subject: Fix mod breaking when travelling between dimensions --- src/main/java/makamys/lodmod/renderer/LODRenderer.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'src/main/java/makamys/lodmod/renderer') diff --git a/src/main/java/makamys/lodmod/renderer/LODRenderer.java b/src/main/java/makamys/lodmod/renderer/LODRenderer.java index fd04dcc..2d08bfb 100644 --- a/src/main/java/makamys/lodmod/renderer/LODRenderer.java +++ b/src/main/java/makamys/lodmod/renderer/LODRenderer.java @@ -74,6 +74,8 @@ public class LODRenderer { private boolean hasServerInited = false; private Map loadedRegionsMap = new HashMap<>(); + public World world; + // TODO make these packets to make this work on dedicated servers Queue farChunks = new ConcurrentLinkedQueue<>(); @@ -93,8 +95,9 @@ public class LODRenderer { private boolean freezeMeshes; public boolean disableChunkMeshes = true; - public LODRenderer(){ + public LODRenderer(World world){ hasInited = init(); + this.world = world; } public void preRenderSortedRenderers(int renderPass, double alpha, WorldRenderer[] sortedWorldRenderers) { @@ -497,7 +500,7 @@ public class LODRenderer { int chunkLoadsRemaining = LODMod.chunkLoadsPerTick; while(!serverChunkLoadQueue.isEmpty() && chunkLoadsRemaining-- > 0) { ChunkCoordIntPair coords = serverChunkLoadQueue.remove(0); - ChunkProviderServer chunkProviderServer = Minecraft.getMinecraft().getIntegratedServer().worldServers[0].theChunkProviderServer; + ChunkProviderServer chunkProviderServer = Minecraft.getMinecraft().getIntegratedServer().worldServerForDimension(world.provider.dimensionId).theChunkProviderServer; Chunk chunk = chunkProviderServer.currentChunkProvider.provideChunk(coords.chunkXPos, coords.chunkZPos); SimpleChunkMesh.prepareFarChunkOnServer(chunk); farChunks.add(chunk); -- cgit