mirror of
https://github.com/VolmitSoftware/Iris.git
synced 2025-07-19 18:55:18 +00:00
Mc fixes
This commit is contained in:
parent
712be51888
commit
b52c71c0f3
2
pom.xml
2
pom.xml
@ -4,7 +4,7 @@
|
|||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
<groupId>com.volmit</groupId>
|
<groupId>com.volmit</groupId>
|
||||||
<artifactId>Iris</artifactId>
|
<artifactId>Iris</artifactId>
|
||||||
<version>1.1.5</version>
|
<version>1.1.6</version>
|
||||||
<name>Iris</name>
|
<name>Iris</name>
|
||||||
<properties>
|
<properties>
|
||||||
<skip.copy>false</skip.copy>
|
<skip.copy>false</skip.copy>
|
||||||
|
@ -49,7 +49,7 @@ public class IrisSettings
|
|||||||
public boolean ignoreWorldEdit = false;
|
public boolean ignoreWorldEdit = false;
|
||||||
|
|
||||||
@DontObfuscate
|
@DontObfuscate
|
||||||
public boolean useGleamPregenerator = true;
|
public boolean useGleamPregenerator = false;
|
||||||
|
|
||||||
@DontObfuscate
|
@DontObfuscate
|
||||||
public boolean disableNMS = false;
|
public boolean disableNMS = false;
|
||||||
|
@ -1,8 +1,10 @@
|
|||||||
package com.volmit.iris.generator;
|
package com.volmit.iris.generator;
|
||||||
|
|
||||||
import com.volmit.iris.Iris;
|
import com.volmit.iris.Iris;
|
||||||
|
import com.volmit.iris.IrisSettings;
|
||||||
import com.volmit.iris.scaffold.engine.*;
|
import com.volmit.iris.scaffold.engine.*;
|
||||||
import com.volmit.iris.scaffold.hunk.Hunk;
|
import com.volmit.iris.scaffold.hunk.Hunk;
|
||||||
|
import com.volmit.iris.scaffold.parallel.MultiBurst;
|
||||||
import com.volmit.iris.util.J;
|
import com.volmit.iris.util.J;
|
||||||
import com.volmit.iris.util.PrecisionStopwatch;
|
import com.volmit.iris.util.PrecisionStopwatch;
|
||||||
import com.volmit.iris.util.RNG;
|
import com.volmit.iris.util.RNG;
|
||||||
@ -107,21 +109,46 @@ public class IrisEngine extends BlockPopulator implements Engine
|
|||||||
public void generate(int x, int z, Hunk<BlockData> vblocks, Hunk<BlockData> postblocks, Hunk<Biome> vbiomes) {
|
public void generate(int x, int z, Hunk<BlockData> vblocks, Hunk<BlockData> postblocks, Hunk<Biome> vbiomes) {
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
boolean multicore = !IrisSettings.get().isUseGleamPregenerator(); //TODO: LATER
|
||||||
s.acquire(1);
|
s.acquire(1);
|
||||||
PrecisionStopwatch p = PrecisionStopwatch.start();
|
PrecisionStopwatch p = PrecisionStopwatch.start();
|
||||||
Hunk<Biome> biomes = vbiomes;
|
Hunk<Biome> biomes = vbiomes;
|
||||||
Hunk<BlockData> blocks = vblocks.synchronize().listen((xx,y,zz,t) -> catchBlockUpdates(x+xx,y+getMinHeight(),z+zz, t));
|
Hunk<BlockData> blocks = vblocks.synchronize().listen((xx,y,zz,t) -> catchBlockUpdates(x+xx,y+getMinHeight(),z+zz, t));
|
||||||
Hunk<BlockData> pblocks = postblocks.synchronize().listen((xx,y,zz,t) -> catchBlockUpdates(x+xx,y+getMinHeight(),z+zz, t));
|
Hunk<BlockData> pblocks = postblocks.synchronize().listen((xx,y,zz,t) -> catchBlockUpdates(x+xx,y+getMinHeight(),z+zz, t));
|
||||||
Hunk<BlockData> fringe = Hunk.fringe(blocks, pblocks);
|
Hunk<BlockData> fringe = Hunk.fringe(blocks, pblocks);
|
||||||
getFramework().getEngineParallax().generateParallaxArea(x, z);
|
|
||||||
getFramework().getBiomeActuator().actuate(x, z, biomes);
|
if(multicore)
|
||||||
getFramework().getTerrainActuator().actuate(x, z, blocks);
|
{
|
||||||
getFramework().getCaveModifier().modify(x, z, blocks);
|
MultiBurst.burst.burst(
|
||||||
getFramework().getRavineModifier().modify(x, z, blocks);
|
() -> 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),
|
||||||
|
() -> getFramework().getPostModifier().modify(x, z, blocks),
|
||||||
|
() -> getFramework().getDecorantActuator().actuate(x, z, fringe),
|
||||||
|
() -> getFramework().getEngineParallax().insertParallax(x, z, fringe)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
else
|
||||||
|
{
|
||||||
|
getFramework().getEngineParallax().generateParallaxArea(x, z);
|
||||||
|
getFramework().getBiomeActuator().actuate(x, z, biomes);
|
||||||
|
getFramework().getTerrainActuator().actuate(x, z, blocks);
|
||||||
|
getFramework().getCaveModifier().modify(x, z, blocks);
|
||||||
|
getFramework().getRavineModifier().modify(x, z, blocks);
|
||||||
|
getFramework().getPostModifier().modify(x, z, blocks);
|
||||||
|
getFramework().getDecorantActuator().actuate(x, z, fringe);
|
||||||
|
getFramework().getEngineParallax().insertParallax(x, z, fringe);
|
||||||
|
}
|
||||||
|
|
||||||
getFramework().getDepositModifier().modify(x, z, blocks);
|
getFramework().getDepositModifier().modify(x, z, blocks);
|
||||||
getFramework().getPostModifier().modify(x, z, blocks);
|
|
||||||
getFramework().getDecorantActuator().actuate(x, z, fringe);
|
|
||||||
getFramework().getEngineParallax().insertParallax(x, z, fringe);
|
|
||||||
getMetrics().getTotal().put(p.getMilliseconds());
|
getMetrics().getTotal().put(p.getMilliseconds());
|
||||||
s.release(1);
|
s.release(1);
|
||||||
getFramework().recycle();
|
getFramework().recycle();
|
||||||
|
@ -87,7 +87,6 @@ public class IrisEngineFramework implements EngineFramework {
|
|||||||
{
|
{
|
||||||
getEngine().getParallax().cleanup();
|
getEngine().getParallax().cleanup();
|
||||||
getData().getObjectLoader().clean();
|
getData().getObjectLoader().clean();
|
||||||
Iris.verbose("Ran Cleanup");
|
|
||||||
}
|
}
|
||||||
|
|
||||||
catch(Throwable e)
|
catch(Throwable e)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user