From 1fd085b3312a8ae0055c66b421849bbe649a1b89 Mon Sep 17 00:00:00 2001 From: paulevsGitch Date: Sun, 1 Nov 2020 20:01:21 +0300 Subject: [PATCH] Fixes --- .../betterend/mixin/client/MusicTrackerMixin.java | 1 - .../betterend/world/features/LacugroveFeature.java | 13 ++++++++++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/src/main/java/ru/betterend/mixin/client/MusicTrackerMixin.java b/src/main/java/ru/betterend/mixin/client/MusicTrackerMixin.java index 8d6b6570..5e0f531e 100644 --- a/src/main/java/ru/betterend/mixin/client/MusicTrackerMixin.java +++ b/src/main/java/ru/betterend/mixin/client/MusicTrackerMixin.java @@ -71,7 +71,6 @@ public class MusicTrackerMixin { if (this.current == null && this.timeUntilNextSong-- <= 0) { this.play(musicSound); } - System.out.println(volume); info.cancel(); } else { diff --git a/src/main/java/ru/betterend/world/features/LacugroveFeature.java b/src/main/java/ru/betterend/world/features/LacugroveFeature.java index 720bf4a4..ef1cb856 100644 --- a/src/main/java/ru/betterend/world/features/LacugroveFeature.java +++ b/src/main/java/ru/betterend/world/features/LacugroveFeature.java @@ -108,8 +108,19 @@ public class LacugroveFeature extends DefaultFeature { sphere = new SDFDisplacement().setFunction((vec) -> { return (float) noise.eval(vec.getX() * 0.2, vec.getY() * 0.2, vec.getZ() * 0.2) * 3; }).setSource(sphere); sphere = new SDFDisplacement().setFunction((vec) -> { return random.nextFloat() * 3F - 1.5F; }).setSource(sphere); sphere = new SDFSubtraction().setSourceA(sphere).setSourceB(new SDFTranslate().setTranslate(0, -radius - 2, 0).setSource(sphere)); + sphere.setPostProcess((info) -> { + if (random.nextInt(5) == 0) { + for (Direction dir: Direction.values()) { + BlockState state = info.getState(dir, 2); + if (state.isAir()) { + return info.getState(); + } + } + return EndBlocks.LACUGROVE.bark.getDefaultState(); + } + return info.getState(); + }); sphere.fillRecursiveIgnore(world, pos, IGNORE); - //sphere.fillArea(world, pos, new Box(pos).expand(radius)); if (radius > 5) { int count = (int) (radius * 2.5F);