mirror of
https://github.com/VolmitSoftware/Iris.git
synced 2026-04-07 00:06:10 +00:00
Chunk regeneration
This commit is contained in:
@@ -21,6 +21,7 @@ package com.volmit.iris.engine.data.chunk;
|
||||
import com.volmit.iris.core.nms.BiomeBaseInjector;
|
||||
import com.volmit.iris.core.nms.INMS;
|
||||
import com.volmit.iris.util.data.IrisBiomeStorage;
|
||||
import lombok.Setter;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.Material;
|
||||
import org.bukkit.World;
|
||||
@@ -35,6 +36,8 @@ public class LinkedTerrainChunk implements TerrainChunk {
|
||||
private final IrisBiomeStorage biome3D;
|
||||
private ChunkData rawChunkData;
|
||||
private final BiomeGrid storage;
|
||||
@Setter
|
||||
private boolean unsafe = false;
|
||||
|
||||
public LinkedTerrainChunk(World world) {
|
||||
this(null, Bukkit.createChunkData(world));
|
||||
@@ -52,6 +55,12 @@ public class LinkedTerrainChunk implements TerrainChunk {
|
||||
|
||||
@Override
|
||||
public BiomeBaseInjector getBiomeBaseInjector() {
|
||||
|
||||
if(unsafe)
|
||||
{
|
||||
return (a,b,c,d) -> {};
|
||||
}
|
||||
|
||||
return (x, y, z, bb) -> INMS.get().forceBiomeInto(x, y, z, bb, storage);
|
||||
}
|
||||
|
||||
|
||||
@@ -34,6 +34,12 @@ public interface TerrainChunk extends BiomeGrid, ChunkData {
|
||||
return new LinkedTerrainChunk(world, grid);
|
||||
}
|
||||
|
||||
static TerrainChunk createUnsafe(World world, BiomeGrid grid) {
|
||||
LinkedTerrainChunk ltc = new LinkedTerrainChunk(world, grid);
|
||||
ltc.setUnsafe(true);
|
||||
return ltc;
|
||||
}
|
||||
|
||||
static TerrainChunk create(ChunkData raw, BiomeGrid grid) {
|
||||
return new LinkedTerrainChunk(grid, raw);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user