This commit is contained in:
Daniel Mills 2020-08-01 10:13:23 -04:00
parent d679660e8a
commit 75f6a93024
5 changed files with 2 additions and 56 deletions

View File

@ -8,7 +8,7 @@ import com.volmit.iris.object.IrisDimension;
import com.volmit.iris.util.InvertedBiomeGrid; import com.volmit.iris.util.InvertedBiomeGrid;
import com.volmit.iris.util.RNG; import com.volmit.iris.util.RNG;
public abstract class CeilingChunkGenerator extends LitChunkGenerator public abstract class CeilingChunkGenerator extends PostBlockChunkGenerator
{ {
protected boolean generatingCeiling = false; protected boolean generatingCeiling = false;
protected boolean ceilingCached = false; protected boolean ceilingCached = false;

View File

@ -21,18 +21,11 @@ public abstract class DimensionChunkGenerator extends ContextualChunkGenerator
protected static final BlockData AIR = Material.AIR.createBlockData(); protected static final BlockData AIR = Material.AIR.createBlockData();
protected static final BlockData CAVE_AIR = Material.CAVE_AIR.createBlockData(); protected static final BlockData CAVE_AIR = Material.CAVE_AIR.createBlockData();
protected static final BlockData BEDROCK = Material.BEDROCK.createBlockData(); protected static final BlockData BEDROCK = Material.BEDROCK.createBlockData();
protected LitChunkGenerator thisLight;
public DimensionChunkGenerator(String dimensionName) public DimensionChunkGenerator(String dimensionName)
{ {
super(); super();
this.dimensionName = dimensionName; this.dimensionName = dimensionName;
thisLight = (LitChunkGenerator) this;
}
protected void lit(int x, int y, int z, BlockData d)
{
thisLight.queueLight(x, y, z, d);
} }
public IrisDimension getDimension() public IrisDimension getDimension()

View File

@ -119,7 +119,7 @@ public class IrisChunkGenerator extends CeilingChunkGenerator implements IrisCon
@Override @Override
protected void onChunkLoaded(Chunk c) protected void onChunkLoaded(Chunk c)
{ {
super.onChunkLoaded(c);
} }
@Override @Override

View File

@ -1,46 +0,0 @@
package com.volmit.iris.gen;
import org.bukkit.Chunk;
import org.bukkit.block.Block;
import org.bukkit.block.data.BlockData;
import com.volmit.iris.Iris;
import com.volmit.iris.util.BlockDataTools;
import com.volmit.iris.util.BlockPosition;
import com.volmit.iris.util.KList;
public abstract class LitChunkGenerator extends PostBlockChunkGenerator
{
private KList<BlockPosition> lit;
public LitChunkGenerator(String dimensionName, int threads)
{
super(dimensionName, threads);
lit = new KList<>();
}
protected void queueLight(int x, int y, int z, BlockData d)
{
if(BlockDataTools.isLit(d))
{
lit.add(new BlockPosition(x, y, z));
}
}
@Override
protected void onChunkLoaded(Chunk c)
{
for(BlockPosition i : lit.copy())
{
if(i.getChunkX() == c.getX() && i.getChunkZ() == c.getZ())
{
Block b = getWorld().getBlockAt(i.getX(), i.getY(), i.getZ());
// BlockData d = b.getBlockData();
b.getState().update(true, true);
lit.remove(i);
}
}
Iris.info("Lit: " + lit.size());
}
}

View File

@ -188,7 +188,6 @@ public abstract class TerrainChunkGenerator extends ParallelChunkGenerator
} }
sliver.set(k, block); sliver.set(k, block);
lit(rx, k, rz, block);
highestPlaced = Math.max(highestPlaced, k); highestPlaced = Math.max(highestPlaced, k);
if(!cavernSurface && (k == height && block.getMaterial().isSolid() && k < fluidHeight)) if(!cavernSurface && (k == height && block.getMaterial().isSolid() && k < fluidHeight))