diff --git a/src/main/java/com/seibel/lod/builders/worldGeneration/LodNodeGenWorker.java b/src/main/java/com/seibel/lod/builders/worldGeneration/LodNodeGenWorker.java index d56637c38..64880f35c 100644 --- a/src/main/java/com/seibel/lod/builders/worldGeneration/LodNodeGenWorker.java +++ b/src/main/java/com/seibel/lod/builders/worldGeneration/LodNodeGenWorker.java @@ -32,7 +32,6 @@ import com.seibel.lod.config.LodConfig; import com.seibel.lod.enums.DistanceGenerationMode; import com.seibel.lod.objects.LodDimension; import com.seibel.lod.proxy.ClientProxy; -import com.seibel.lod.render.LodRenderer; import com.seibel.lod.util.LodThreadFactory; import com.seibel.lod.util.LodUtil; @@ -69,7 +68,7 @@ import net.minecraftforge.common.WorldWorkerManager.IWorker; * This is used to generate a LodChunk at a given ChunkPos. * * @author James Seibel - * @version 8-26-2021 + * @version 9-7-2021 */ public class LodNodeGenWorker implements IWorker { @@ -86,7 +85,7 @@ public class LodNodeGenWorker implements IWorker - public LodNodeGenWorker(ChunkPos newPos, DistanceGenerationMode newGenerationMode, LodRenderer newLodRenderer, + public LodNodeGenWorker(ChunkPos newPos, DistanceGenerationMode newGenerationMode, LodBuilder newLodBuilder, LodDimension newLodDimension, ServerWorld newServerWorld) { @@ -94,9 +93,6 @@ public class LodNodeGenWorker implements IWorker if (newPos == null) throw new IllegalArgumentException("LodChunkGenWorker must have a non-null ChunkPos"); - if (newLodRenderer == null) - throw new IllegalArgumentException("LodChunkGenWorker must have a non-null LodRenderer"); - if (newLodBuilder == null) throw new IllegalArgumentException("LodChunkGenThread requires a non-null LodChunkBuilder"); @@ -108,7 +104,7 @@ public class LodNodeGenWorker implements IWorker - thread = new LodChunkGenThread(newPos, newGenerationMode, newLodRenderer, + thread = new LodChunkGenThread(newPos, newGenerationMode, newLodBuilder, newLodDimension, newServerWorld); } @@ -159,17 +155,15 @@ public class LodNodeGenWorker implements IWorker public final LodDimension lodDim; public final DistanceGenerationMode generationMode; public final LodBuilder lodBuilder; - public final LodRenderer lodRenderer; private ChunkPos pos; - public LodChunkGenThread(ChunkPos newPos, DistanceGenerationMode newGenerationMode, LodRenderer newLodRenderer, + public LodChunkGenThread(ChunkPos newPos, DistanceGenerationMode newGenerationMode, LodBuilder newLodBuilder, LodDimension newLodDimension, ServerWorld newServerWorld) { pos = newPos; generationMode = newGenerationMode; - lodRenderer = newLodRenderer; lodBuilder = newLodBuilder; lodDim = newLodDimension; serverWorld = newServerWorld; diff --git a/src/main/java/com/seibel/lod/builders/worldGeneration/LodWorldGenerator.java b/src/main/java/com/seibel/lod/builders/worldGeneration/LodWorldGenerator.java index 769670b35..6764e8c6a 100644 --- a/src/main/java/com/seibel/lod/builders/worldGeneration/LodWorldGenerator.java +++ b/src/main/java/com/seibel/lod/builders/worldGeneration/LodWorldGenerator.java @@ -6,19 +6,18 @@ import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.atomic.AtomicInteger; -import com.seibel.lod.objects.LevelPosUtil; -import com.seibel.lod.objects.PosToGenerateContainer; - import com.seibel.lod.builders.LodBuilder; import com.seibel.lod.config.LodConfig; import com.seibel.lod.enums.DistanceGenerationMode; +import com.seibel.lod.objects.LevelPosUtil; import com.seibel.lod.objects.LodDimension; +import com.seibel.lod.objects.PosToGenerateContainer; import com.seibel.lod.render.LodRenderer; import com.seibel.lod.util.DetailDistanceUtil; import com.seibel.lod.util.LodThreadFactory; import com.seibel.lod.util.LodUtil; - import com.seibel.lod.wrapper.MinecraftWrapper; + import net.minecraft.util.math.ChunkPos; import net.minecraft.world.server.ServerWorld; import net.minecraftforge.common.WorldWorkerManager; @@ -149,7 +148,7 @@ public class LodWorldGenerator positionWaitingToBeGenerated.add(chunkPos); numberOfChunksWaitingToGenerate.addAndGet(1); - LodNodeGenWorker genWorker = new LodNodeGenWorker(chunkPos, DetailDistanceUtil.getDistanceGenerationMode(detailLevel), renderer, lodBuilder, lodDim, serverWorld); + LodNodeGenWorker genWorker = new LodNodeGenWorker(chunkPos, DetailDistanceUtil.getDistanceGenerationMode(detailLevel), lodBuilder, lodDim, serverWorld); WorldWorkerManager.addWorker(genWorker); } diff --git a/src/main/java/com/seibel/lod/handlers/LodDimensionFileHandler.java b/src/main/java/com/seibel/lod/handlers/LodDimensionFileHandler.java index fce93d44d..c0b080138 100644 --- a/src/main/java/com/seibel/lod/handlers/LodDimensionFileHandler.java +++ b/src/main/java/com/seibel/lod/handlers/LodDimensionFileHandler.java @@ -42,7 +42,7 @@ import com.seibel.lod.util.LodUtil; * to file. * * @author James Seibel - * @version 8-24-2021 + * @version 9-7-2021 */ public class LodDimensionFileHandler { @@ -65,10 +65,6 @@ public class LodDimensionFileHandler * .txt */ private static final String FILE_EXTENSION = ".txt"; - /** - * lod/ - */ - private static final String LOD_FOLDER_NAME = "lod"; /** * detail-# */ diff --git a/src/main/java/com/seibel/lod/objects/LevelContainer.java b/src/main/java/com/seibel/lod/objects/LevelContainer.java index 08517fe43..ffadb459c 100644 --- a/src/main/java/com/seibel/lod/objects/LevelContainer.java +++ b/src/main/java/com/seibel/lod/objects/LevelContainer.java @@ -7,6 +7,9 @@ import com.seibel.lod.util.LodUtil; public class LevelContainer implements Serializable { + /** This is here so that Eclipse doesn't complain */ + private static final long serialVersionUID = -4930855068717998385L; + public static final char DATA_DELIMITER = ','; public final byte detailLevel; diff --git a/src/main/java/com/seibel/lod/objects/LevelPosUtil.java b/src/main/java/com/seibel/lod/objects/LevelPosUtil.java index fe30f5c40..df65d674e 100644 --- a/src/main/java/com/seibel/lod/objects/LevelPosUtil.java +++ b/src/main/java/com/seibel/lod/objects/LevelPosUtil.java @@ -1,9 +1,6 @@ package com.seibel.lod.objects; import com.seibel.lod.util.LodUtil; -import net.minecraft.util.math.ChunkPos; - -import java.util.Comparator; public class LevelPosUtil { diff --git a/src/main/java/com/seibel/lod/objects/LodDimension.java b/src/main/java/com/seibel/lod/objects/LodDimension.java index 2ed33d849..14b5187ad 100644 --- a/src/main/java/com/seibel/lod/objects/LodDimension.java +++ b/src/main/java/com/seibel/lod/objects/LodDimension.java @@ -19,27 +19,21 @@ package com.seibel.lod.objects; import java.io.File; import java.io.IOException; -import java.security.InvalidParameterException; -import java.util.concurrent.ConcurrentMap; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; -import com.seibel.lod.wrapper.MinecraftWrapper; -import org.apache.commons.lang3.mutable.MutableBoolean; - import com.seibel.lod.config.LodConfig; import com.seibel.lod.enums.DistanceGenerationMode; import com.seibel.lod.handlers.LodDimensionFileHandler; import com.seibel.lod.util.DetailDistanceUtil; import com.seibel.lod.util.LodThreadFactory; import com.seibel.lod.util.LodUtil; +import com.seibel.lod.wrapper.MinecraftWrapper; -import net.minecraft.client.Minecraft; import net.minecraft.util.math.ChunkPos; import net.minecraft.world.DimensionType; import net.minecraft.world.server.ServerChunkProvider; import net.minecraft.world.server.ServerWorld; -import org.lwjgl.system.CallbackI; /** @@ -246,8 +240,6 @@ public class LodDimension */ public int getMinMemoryNeeded() { - int regionX; - int regionZ; int count = 0; LodRegion region; diff --git a/src/main/java/com/seibel/lod/objects/PosToRenderContainer.java b/src/main/java/com/seibel/lod/objects/PosToRenderContainer.java index 8e715fd6d..ef056a13d 100644 --- a/src/main/java/com/seibel/lod/objects/PosToRenderContainer.java +++ b/src/main/java/com/seibel/lod/objects/PosToRenderContainer.java @@ -1,7 +1,6 @@ package com.seibel.lod.objects; import com.seibel.lod.util.LodUtil; -import java.util.Arrays; public class PosToRenderContainer { @@ -95,6 +94,7 @@ public class PosToRenderContainer return posToRender[n]; } + @Override public String toString() { diff --git a/src/main/java/com/seibel/lod/render/LodRenderer.java b/src/main/java/com/seibel/lod/render/LodRenderer.java index 6bb31d088..7b76bcbe1 100644 --- a/src/main/java/com/seibel/lod/render/LodRenderer.java +++ b/src/main/java/com/seibel/lod/render/LodRenderer.java @@ -796,13 +796,14 @@ public class LodRenderer /** * Determines if the LODs should have a fullRegen or partialRegen */ - @SuppressWarnings("unchecked") private void determineIfLodsShouldRegenerate(LodDimension lodDim) { short renderDistance = (short) mc.getRenderDistance(); + //=============// // full regens // //=============// + // check if the view distance changed if (ClientProxy.previousLodRenderDistance != LodConfig.CLIENT.graphics.lodChunkRenderDistance.get() || mc.getRenderDistance() != prevRenderDistance