From 07c70f31d4ea42990543e2d0a3e4cd4920484a5b Mon Sep 17 00:00:00 2001 From: SirYwell Date: Mon, 12 Jun 2023 17:53:39 +0200 Subject: [PATCH] Drop cherry_grove if present on pre 1.20 versions --- .../bukkit/generator/BukkitPlotGenerator.java | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/Bukkit/src/main/java/com/plotsquared/bukkit/generator/BukkitPlotGenerator.java b/Bukkit/src/main/java/com/plotsquared/bukkit/generator/BukkitPlotGenerator.java index a17032cc5..08c669f66 100644 --- a/Bukkit/src/main/java/com/plotsquared/bukkit/generator/BukkitPlotGenerator.java +++ b/Bukkit/src/main/java/com/plotsquared/bukkit/generator/BukkitPlotGenerator.java @@ -37,6 +37,7 @@ import com.sk89q.worldedit.math.BlockVector2; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.bukkit.HeightMap; +import org.bukkit.NamespacedKey; import org.bukkit.Registry; import org.bukkit.World; import org.bukkit.block.Biome; @@ -50,10 +51,13 @@ import org.jetbrains.annotations.Nullable; import java.util.ArrayList; import java.util.Arrays; +import java.util.EnumSet; import java.util.List; import java.util.Random; import java.util.Set; +import static java.util.function.Predicate.not; + public class BukkitPlotGenerator extends ChunkGenerator implements GeneratorWrapper { private static final Logger LOGGER = LogManager.getLogger("PlotSquared/" + BukkitPlotGenerator.class.getSimpleName()); @@ -436,9 +440,15 @@ public class BukkitPlotGenerator extends ChunkGenerator implements GeneratorWrap private static final List BIOMES; static { + Set disabledBiomes = EnumSet.of(Biome.CUSTOM); + if (PlotSquared.platform().serverVersion()[1] <= 19) { + final Biome cherryGrove = Registry.BIOME.get(NamespacedKey.minecraft("cherry_grove")); + if (cherryGrove != null) { + disabledBiomes.add(cherryGrove); + } + } BIOMES = Arrays.stream(Biome.values()) - .filter(b -> Registry.BIOME.get(b.getKey()) != null) - .filter(b -> b != Biome.CUSTOM) + .filter(not(disabledBiomes::contains)) .toList(); }