Fix terrain chunk creation

This commit is contained in:
Daniel Mills 2021-07-18 19:05:22 -04:00
parent f933aae562
commit d5066adb4b
3 changed files with 14 additions and 11 deletions

View File

@ -22,7 +22,6 @@ import com.volmit.iris.core.IrisDataManager;
import com.volmit.iris.engine.framework.EngineCompositeGenerator;
import com.volmit.iris.engine.object.IrisDimension;
import com.volmit.iris.engine.object.common.IrisWorld;
import com.volmit.iris.util.fakenews.FakeWorld;
import org.bukkit.World;
import org.bukkit.WorldCreator;

View File

@ -22,8 +22,10 @@ import com.volmit.iris.Iris;
import com.volmit.iris.core.nms.BiomeBaseInjector;
import com.volmit.iris.core.nms.INMS;
import com.volmit.iris.util.data.IrisBiomeStorage;
import net.minecraft.world.level.chunk.BiomeStorage;
import org.bukkit.Bukkit;
import org.bukkit.Material;
import org.bukkit.World;
import org.bukkit.block.Biome;
import org.bukkit.block.data.BlockData;
import org.bukkit.generator.ChunkGenerator.BiomeGrid;
@ -37,6 +39,16 @@ public class LinkedTerrainChunk implements TerrainChunk {
private ChunkData rawChunkData;
private final BiomeGrid storage;
public LinkedTerrainChunk(World world)
{
this(null, Bukkit.createChunkData(world));
}
public LinkedTerrainChunk(World world, BiomeGrid storage)
{
this(storage, Bukkit.createChunkData(world));
}
public LinkedTerrainChunk(BiomeGrid storage, ChunkData data) {
this.storage = storage;
rawChunkData = data;

View File

@ -28,25 +28,17 @@ import org.jetbrains.annotations.NotNull;
public interface TerrainChunk extends BiomeGrid, ChunkData {
static TerrainChunk create(World world) {
return create(world.getMaxHeight());
}
static TerrainChunk create(int maxHeight) {
return new LinkedTerrainChunk(maxHeight);
return new LinkedTerrainChunk(world);
}
static TerrainChunk create(World world, BiomeGrid grid) {
return create(world.getMaxHeight(), grid);
return new LinkedTerrainChunk(world, grid);
}
static TerrainChunk create(ChunkData raw, BiomeGrid grid) {
return new LinkedTerrainChunk(grid, raw);
}
static TerrainChunk create(int maxHeight, BiomeGrid grid) {
return new LinkedTerrainChunk(grid, maxHeight);
}
BiomeBaseInjector getBiomeBaseInjector();
void setRaw(ChunkData data);