Works, but somehow i broke parallax

This commit is contained in:
Daniel Mills
2020-11-11 20:58:47 -05:00
parent 4c44957764
commit bf9c4c602b
29 changed files with 413 additions and 640 deletions

View File

@@ -80,26 +80,33 @@ public class IrisEngine extends BlockPopulator implements Engine
@Override
public void generate(int x, int z, Hunk<BlockData> vblocks, Hunk<Biome> vbiomes) {
Hunk<Biome> biomes = vbiomes;
Hunk<BlockData> blocks = vblocks.synchronize().listen((xx,y,zz,t) -> catchBlockUpdates(x+xx,y+getMinHeight(),z+zz, t));
try
{
Hunk<Biome> biomes = vbiomes;
Hunk<BlockData> blocks = vblocks.synchronize().listen((xx,y,zz,t) -> catchBlockUpdates(x+xx,y+getMinHeight(),z+zz, t));
MultiBurst.burst.burst(
() -> getFramework().getEngineParallax().generateParallaxArea(x, z),
() -> getFramework().getBiomeActuator().actuate(x, z, biomes),
() -> getFramework().getTerrainActuator().actuate(x, z, blocks)
);
MultiBurst.burst.burst(
() -> getFramework().getCaveModifier().modify(x, z, blocks),
() -> getFramework().getRavineModifier().modify(x, z, blocks)
);
MultiBurst.burst.burst(
() -> getFramework().getDecorantActuator().actuate(x, z, blocks),
() -> getFramework().getDepositModifier().modify(x, z, blocks),
() -> getFramework().getPostModifier().modify(x, z, blocks),
() -> getFramework().getEngineParallax().insertParallax(x, z, blocks)
);
MultiBurst.burst.burst(
() -> getFramework().getEngineParallax().generateParallaxArea(x, z),
() -> getFramework().getBiomeActuator().actuate(x, z, biomes),
() -> getFramework().getTerrainActuator().actuate(x, z, blocks)
);
MultiBurst.burst.burst(
() -> getFramework().getCaveModifier().modify(x, z, blocks),
() -> getFramework().getRavineModifier().modify(x, z, blocks)
);
MultiBurst.burst.burst(
() -> getFramework().getDecorantActuator().actuate(x, z, blocks),
() -> getFramework().getDepositModifier().modify(x, z, blocks),
() -> getFramework().getPostModifier().modify(x, z, blocks),
() -> getFramework().getEngineParallax().insertParallax(x, z, blocks)
);
getFramework().recycle();
getFramework().recycle();
}
catch(Throwable e)
{
fail("Failed to generate " + x + ", " + z, e);
}
}
@Override

View File

@@ -51,6 +51,8 @@ public class IrisEngineCompound implements EngineCompound {
Iris.info("Initializing Engine Composite for " + world.getName());
this.world = world;
engineMetadata = EngineData.load(getEngineMetadataFile());
engineMetadata.setDimension(rootDimension.getLoadKey());
engineMetadata.setLastVersion(Iris.instance.getDescription().getVersion());
saveEngineMetadata();
populators = new KList<>();
@@ -83,7 +85,7 @@ public class IrisEngineCompound implements EngineCompound {
{
IrisDimensionIndex index = rootDimension.getDimensionalComposite().get(i);
IrisDimension dimension = data.getDimensionLoader().load(index.getDimension());
engines[i] = new IrisEngine(new EngineTarget(world, dimension, data.copy().preferFolder(rootDimension.getLoadKey()), (int)Math.floor(256D * (index.getWeight() / totalWeight)), index.isInverted(), threadDist), this, i);
engines[i] = new IrisEngine(new EngineTarget(world, dimension, data.copy(), (int)Math.floor(256D * (index.getWeight() / totalWeight)), index.isInverted(), threadDist), this, i);
engines[i].setMinHeight(buf);
buf += engines[i].getHeight();
}