diff --git a/patches/server/0244-Cactus-breaks-from-solid-neighbors-config.patch b/patches/server/0244-Cactus-breaks-from-solid-neighbors-config.patch new file mode 100644 index 000000000..b5fac4cb8 --- /dev/null +++ b/patches/server/0244-Cactus-breaks-from-solid-neighbors-config.patch @@ -0,0 +1,35 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: William Blake Galbreath +Date: Sat, 7 Aug 2021 03:37:56 -0500 +Subject: [PATCH] Cactus breaks from solid neighbors config + + +diff --git a/src/main/java/net/minecraft/world/level/block/CactusBlock.java b/src/main/java/net/minecraft/world/level/block/CactusBlock.java +index 2a02fdf58640d26b82e0ca22d0d8ff3326921b61..c65ec767363b76aa8e8234037d937423abedfdcf 100644 +--- a/src/main/java/net/minecraft/world/level/block/CactusBlock.java ++++ b/src/main/java/net/minecraft/world/level/block/CactusBlock.java +@@ -110,7 +110,7 @@ public class CactusBlock extends Block { + BlockState iblockdata2 = world.getBlockState(pos.relative(enumdirection)); + + material = iblockdata2.getMaterial(); +- } while (!material.isSolid() && !world.getFluidState(pos.relative(enumdirection)).is((Tag) FluidTags.LAVA)); ++ } while ((!world.getWorldBorder().world.purpurConfig.cactusBreaksFromSolidNeighbors || !material.isSolid()) && !world.getFluidState(pos.relative(enumdirection)).is((Tag) FluidTags.LAVA)); // Purpur + + return false; + } +diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +index ade7df76d5b736573511723ffc94c18d907107f9..e01c215c2d4ac67b942bb2d85cc656205c9758d1 100644 +--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java ++++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +@@ -737,6 +737,11 @@ public class PurpurWorldConfig { + buddingAmethystSilkTouch = getBoolean("blocks.budding_amethyst.silk-touch", buddingAmethystSilkTouch); + } + ++ public boolean cactusBreaksFromSolidNeighbors = true; ++ private void cactusSettings() { ++ cactusBreaksFromSolidNeighbors = getBoolean("blocks.cactus.breaks-from-solid-neighbors", cactusBreaksFromSolidNeighbors); ++ } ++ + public double caveVinesGrowthModifier = 0.10D; + public int caveVinesMaxGrowthAge = 25; + private void caveVinesSettings() {