Stopped trying to fill big holes in creative.
This means admins will have to do repair when players leave gaping holes in the ground, but also means that having the wrong sea level set in your config file will no longer create "random" islands in the sky. Payoffs in better out of the box experience for custom worlds and fewer instances of helping customers troubleshoot.
This commit is contained in:
parent
7f680d82a9
commit
8f489cff16
|
|
@ -137,12 +137,6 @@ class RestoreNatureProcessingTask implements Runnable
|
|||
//remove water/lava above sea level
|
||||
this.removeDumpedFluids();
|
||||
|
||||
//cover over any gaping holes in creative mode worlds
|
||||
if(this.creativeMode && this.environment == Environment.NORMAL)
|
||||
{
|
||||
this.fillBigHoles();
|
||||
}
|
||||
|
||||
//cover surface stone and gravel with sand or grass, as the biome requires
|
||||
this.coverSurfaceStone();
|
||||
|
||||
|
|
@ -175,29 +169,6 @@ class RestoreNatureProcessingTask implements Runnable
|
|||
}
|
||||
}
|
||||
|
||||
private void fillBigHoles()
|
||||
{
|
||||
if(this.seaLevel < 3) return;
|
||||
|
||||
for(int x = 1; x < snapshots.length - 1; x++)
|
||||
{
|
||||
for(int z = 1; z < snapshots[0][0].length - 1; z++)
|
||||
{
|
||||
//replace air, lava, or running water at sea level with stone
|
||||
if(this.snapshots[x][this.seaLevel - 2][z].typeId == Material.AIR.getId() || this.snapshots[x][this.seaLevel - 2][z].typeId == Material.LAVA.getId() || (this.snapshots[x][this.seaLevel - 2][z].typeId == Material.WATER.getId() || this.snapshots[x][this.seaLevel - 2][z].data != 0))
|
||||
{
|
||||
this.snapshots[x][this.seaLevel - 2][z].typeId = Material.STONE.getId();
|
||||
}
|
||||
|
||||
//do the same for one layer beneath that (because a future restoration step may convert surface stone to sand, which falls down)
|
||||
if(this.snapshots[x][this.seaLevel - 3][z].typeId == Material.AIR.getId() || this.snapshots[x][this.seaLevel - 3][z].typeId == Material.LAVA.getId() || (this.snapshots[x][this.seaLevel - 3][z].typeId == Material.WATER.getId() || this.snapshots[x][this.seaLevel - 3][z].data != 0))
|
||||
{
|
||||
this.snapshots[x][this.seaLevel - 3][z].typeId = Material.STONE.getId();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//converts sandstone adjacent to sand to sand, and any other sandstone to air
|
||||
private void removeSandstone()
|
||||
{
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user