From 947b790138e9d1fad6ed0070afe83eee685f4824 Mon Sep 17 00:00:00 2001 From: paulevsGitch Date: Thu, 24 Jun 2021 18:06:24 +0300 Subject: [PATCH] NBT Structure fix & Surface Builder fix --- .../ru/bclib/world/features/NBTStructureFeature.java | 5 +++-- .../world/surface/DoubleBlockSurfaceBuilder.java | 12 ++++++------ 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/src/main/java/ru/bclib/world/features/NBTStructureFeature.java b/src/main/java/ru/bclib/world/features/NBTStructureFeature.java index 598a3078..e48bfb5a 100644 --- a/src/main/java/ru/bclib/world/features/NBTStructureFeature.java +++ b/src/main/java/ru/bclib/world/features/NBTStructureFeature.java @@ -7,6 +7,7 @@ import java.util.Random; import net.minecraft.core.BlockPos; import net.minecraft.core.BlockPos.MutableBlockPos; import net.minecraft.core.Direction; +import net.minecraft.core.Vec3i; import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.NbtIo; import net.minecraft.resources.ResourceLocation; @@ -101,7 +102,7 @@ public abstract class NBTStructureFeature extends DefaultFeature { StructurePlaceSettings placementData = new StructurePlaceSettings().setRotation(rotation).setMirror(mirror).setBoundingBox(bounds); addStructureData(placementData); center = center.offset(-offset.getX() * 0.5, 0, -offset.getZ() * 0.5); - structure.placeInWorld(world, center, placementData, random); + structure.placeInWorld(world, center, center, placementData, random, 4); TerrainMerge merge = getTerrainMerge(world, center, random); int x1 = center.getX(); @@ -173,7 +174,7 @@ public abstract class NBTStructureFeature extends DefaultFeature { int sz = ((pos.getZ() >> 4) << 4) - 16; int ex = sx + 47; int ez = sz + 47; - return BoundingBox.createProper(sx, 0, sz, ex, 255, ez); + return BoundingBox.fromCorners(new Vec3i(sx, 0, sz), new Vec3i(ex, 255, ez)); } protected static StructureTemplate readStructure(ResourceLocation resource) { diff --git a/src/main/java/ru/bclib/world/surface/DoubleBlockSurfaceBuilder.java b/src/main/java/ru/bclib/world/surface/DoubleBlockSurfaceBuilder.java index 1e19d33e..14e6bba4 100644 --- a/src/main/java/ru/bclib/world/surface/DoubleBlockSurfaceBuilder.java +++ b/src/main/java/ru/bclib/world/surface/DoubleBlockSurfaceBuilder.java @@ -34,12 +34,6 @@ public class DoubleBlockSurfaceBuilder extends SurfaceBuilder 0 ? config1 : config2); - } public static DoubleBlockSurfaceBuilder register(String name) { return Registry.register(Registry.SURFACE_BUILDER, name, new DoubleBlockSurfaceBuilder()); @@ -49,4 +43,10 @@ public class DoubleBlockSurfaceBuilder extends SurfaceBuilder 0 ? config1 : config2); + } } \ No newline at end of file