Introduced lodQualityMode in config to change from 3d to 2d

This commit is contained in:
Leonardo
2021-09-15 10:42:09 +02:00
parent 7f9c7d8722
commit 6dc94b0cc2
8 changed files with 98 additions and 41 deletions
@@ -24,6 +24,7 @@ import java.util.concurrent.Executors;
import com.seibel.lod.config.LodConfig;
import com.seibel.lod.enums.DistanceGenerationMode;
import com.seibel.lod.enums.LodQualityMode;
import com.seibel.lod.handlers.LodDimensionFileHandler;
import com.seibel.lod.util.*;
import com.seibel.lod.wrappers.MinecraftWrapper;
@@ -373,6 +374,7 @@ public class LodDimension
{
DistanceGenerationMode generationMode = LodConfig.CLIENT.worldGenerator.distanceGenerationMode.get();
ChunkPos newPlayerChunk = new ChunkPos(LevelPosUtil.getChunkPos((byte) 0, playerPosX), LevelPosUtil.getChunkPos((byte) 0, playerPosZ));
LodQualityMode lodQualityMode = LodConfig.CLIENT.worldGenerator.lodQualityMode.get();
if (lastGenChunk == null)
lastGenChunk = new ChunkPos(newPlayerChunk.x + 1, newPlayerChunk.z - 1);
@@ -405,12 +407,12 @@ public class LodDimension
//First case, region has to be initialized
//We check if there is a file at the target level
regions[x][z] = getRegionFromFile(regionPos, levelToGen, generationMode);
regions[x][z] = getRegionFromFile(regionPos, levelToGen, generationMode, lodQualityMode);
//if there is no file we initialize the region
if (regions[x][z] == null)
{
regions[x][z] = new LodRegion(levelToGen, regionPos, generationMode);
regions[x][z] = new LodRegion(levelToGen, regionPos, generationMode, lodQualityMode);
}
regen[x][z] = true;
regenDimension = true;
@@ -575,10 +577,10 @@ public class LodDimension
* Get the region at the given X and Z coordinates from the
* RegionFileHandler.
*/
public LodRegion getRegionFromFile(RegionPos regionPos, byte detailLevel, DistanceGenerationMode generationMode)
public LodRegion getRegionFromFile(RegionPos regionPos, byte detailLevel, DistanceGenerationMode generationMode, LodQualityMode lodQualityMode)
{
if (fileHandler != null)
return fileHandler.loadRegionFromFile(detailLevel, regionPos, generationMode);
return fileHandler.loadRegionFromFile(detailLevel, regionPos, generationMode, lodQualityMode);
else
return null;
}