From 26c20e799542d73319e5605c78aec12d6c445ce3 Mon Sep 17 00:00:00 2001 From: dags- Date: Sun, 15 Mar 2020 22:07:40 +0000 Subject: [PATCH] fixed bug where erosion decorator created ridges on chunk edges (when strata decorator is disabled) --- .../com/terraforged/mod/biome/provider/BiomeProvider.java | 1 - .../src/main/java/com/terraforged/mod/chunk/test/Test.java | 4 ++-- .../com/terraforged/mod/chunk/test/TestChunkGenerator.java | 2 +- .../com/terraforged/mod/decorator/base/ErosionDecorator.java | 4 ++-- .../com/terraforged/mod/decorator/feature/SnowEroder.java | 2 +- .../com/terraforged/mod/feature/tree/SaplingListener.java | 2 -- 6 files changed, 6 insertions(+), 9 deletions(-) diff --git a/TerraForgedMod/src/main/java/com/terraforged/mod/biome/provider/BiomeProvider.java b/TerraForgedMod/src/main/java/com/terraforged/mod/biome/provider/BiomeProvider.java index 04d93be..3738194 100644 --- a/TerraForgedMod/src/main/java/com/terraforged/mod/biome/provider/BiomeProvider.java +++ b/TerraForgedMod/src/main/java/com/terraforged/mod/biome/provider/BiomeProvider.java @@ -43,7 +43,6 @@ import net.minecraft.world.gen.feature.structure.Structure; import java.util.Collections; import java.util.HashMap; -import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Random; diff --git a/TerraForgedMod/src/main/java/com/terraforged/mod/chunk/test/Test.java b/TerraForgedMod/src/main/java/com/terraforged/mod/chunk/test/Test.java index 57df63f..a6e716b 100644 --- a/TerraForgedMod/src/main/java/com/terraforged/mod/chunk/test/Test.java +++ b/TerraForgedMod/src/main/java/com/terraforged/mod/chunk/test/Test.java @@ -27,8 +27,8 @@ package com.terraforged.mod.chunk.test; import com.terraforged.core.world.terrain.Terrain; import com.terraforged.core.world.terrain.Terrains; -import com.terraforged.mod.biome.ModBiomes; import net.minecraft.world.biome.Biome; +import net.minecraft.world.biome.Biomes; public class Test { @@ -39,6 +39,6 @@ public class Test { } public static Biome getBiome() { - return ModBiomes.TAIGA_SCRUB; + return Biomes.PLAINS; } } diff --git a/TerraForgedMod/src/main/java/com/terraforged/mod/chunk/test/TestChunkGenerator.java b/TerraForgedMod/src/main/java/com/terraforged/mod/chunk/test/TestChunkGenerator.java index 9b37e14..929408a 100644 --- a/TerraForgedMod/src/main/java/com/terraforged/mod/chunk/test/TestChunkGenerator.java +++ b/TerraForgedMod/src/main/java/com/terraforged/mod/chunk/test/TestChunkGenerator.java @@ -55,7 +55,7 @@ public class TestChunkGenerator extends TerraChunkGenerator { .pool(ThreadPool.getFixed()) .size(3, 2) .build() - .toCache(true); + .toCache(false); } @Override diff --git a/TerraForgedMod/src/main/java/com/terraforged/mod/decorator/base/ErosionDecorator.java b/TerraForgedMod/src/main/java/com/terraforged/mod/decorator/base/ErosionDecorator.java index cd59f52..5e6002e 100644 --- a/TerraForgedMod/src/main/java/com/terraforged/mod/decorator/base/ErosionDecorator.java +++ b/TerraForgedMod/src/main/java/com/terraforged/mod/decorator/base/ErosionDecorator.java @@ -111,7 +111,7 @@ public class ErosionDecorator implements ColumnDecorator { BlockState material = Blocks.GRAVEL.getDefaultState(); // find the uppermost layer of rock & record it's depth for (int dy = 3; dy < 32; dy++) { - context.pos.setY(y - dy); + context.pos.setPos(dx, y - dy, dz); BlockState state = chunk.getBlockState(context.pos); if (materials.isStone(state.getBlock())) { material = state; @@ -122,7 +122,7 @@ public class ErosionDecorator implements ColumnDecorator { // fill downwards to the first rock layer for (int dy = 0; dy < depth; dy++) { - context.pos.setY(y - dy); + context.pos.setPos(dx, y - dy, dz); chunk.setBlockState(context.pos, material, false); } } diff --git a/TerraForgedMod/src/main/java/com/terraforged/mod/decorator/feature/SnowEroder.java b/TerraForgedMod/src/main/java/com/terraforged/mod/decorator/feature/SnowEroder.java index 2e3f125..c105bdd 100644 --- a/TerraForgedMod/src/main/java/com/terraforged/mod/decorator/feature/SnowEroder.java +++ b/TerraForgedMod/src/main/java/com/terraforged/mod/decorator/feature/SnowEroder.java @@ -75,7 +75,7 @@ public class SnowEroder extends ErosionDecorator { if (snowErosion(x, z, steepness, height)) { Predicate predicate = Heightmap.Type.MOTION_BLOCKING.getHeightLimitPredicate(); for (int dy = 2; dy > 0; dy--) { - context.pos.setY(y + dy); + context.pos.setPos(x, y + dy, z); BlockState state = chunk.getBlockState(context.pos); if (!predicate.test(state) || state.getBlock() == Blocks.SNOW) { chunk.setBlockState(context.pos, Blocks.AIR.getDefaultState(), false); diff --git a/TerraForgedMod/src/main/java/com/terraforged/mod/feature/tree/SaplingListener.java b/TerraForgedMod/src/main/java/com/terraforged/mod/feature/tree/SaplingListener.java index 7e36191..d8a4a9b 100644 --- a/TerraForgedMod/src/main/java/com/terraforged/mod/feature/tree/SaplingListener.java +++ b/TerraForgedMod/src/main/java/com/terraforged/mod/feature/tree/SaplingListener.java @@ -34,8 +34,6 @@ import net.minecraft.block.SaplingBlock; import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.Vec3i; import net.minecraft.world.IWorld; -import net.minecraft.world.World; -import net.minecraft.world.WorldType; import net.minecraft.world.gen.ChunkGenerator; import net.minecraft.world.gen.feature.Feature; import net.minecraft.world.gen.feature.NoFeatureConfig;