From c8dc6188b966477a5ec4dab1aab39c156e56ac8c Mon Sep 17 00:00:00 2001 From: tastybento Date: Sat, 30 Nov 2024 08:27:52 -0800 Subject: [PATCH 1/2] Updated some package-info javadocs --- .../bentobox/api/addons/package-info.java | 20 +++++++++++++------ .../bentobox/api/commands/package-info.java | 14 +++++++++---- .../api/configuration/package-info.java | 4 +++- .../bentobox/api/events/package-info.java | 13 +++++++++--- .../bentobox/bentobox/api/package-info.java | 10 ++++++++++ .../world/bentobox/bentobox/package-info.java | 14 +++++++++++++ .../bentobox/bentobox/util/package-info.java | 8 +++++++- 7 files changed, 68 insertions(+), 15 deletions(-) create mode 100644 src/main/java/world/bentobox/bentobox/api/package-info.java create mode 100644 src/main/java/world/bentobox/bentobox/package-info.java diff --git a/src/main/java/world/bentobox/bentobox/api/addons/package-info.java b/src/main/java/world/bentobox/bentobox/api/addons/package-info.java index 4d239fd0d..abf00000b 100644 --- a/src/main/java/world/bentobox/bentobox/api/addons/package-info.java +++ b/src/main/java/world/bentobox/bentobox/api/addons/package-info.java @@ -1,12 +1,20 @@ /** - * This package covers all addon-specific API - *

- * The Addon class and the associated Pladdon are like Bukkit plugins - * but contain extra API specific for BentoBox games. - *

+ * This package contains classes and interfaces related to BentoBox addons. + * + * Addons are modular extensions that enhance BentoBox functionality. Game-specific + * addons (e.g., BSkyBlock, AcidIsland) as well as generic addons (e.g., Challenges, Warps) + * are supported by this system. Developers can create custom addons to introduce + * new features or gamemodes. + * + * Since BentoBox was created, server tech has changed and code remapping is done and that + * is usually only applied when a Plugin is loaded, so developers should use Pladdons + * which are a wrapper for Addons in a Plugin. + * + * Key components: + * - AddonLoader: Manages the lifecycle of addons. + * - AddonConfig: Handles addon-specific configurations. * * @since 1.0 * @author tastybento - * */ package world.bentobox.bentobox.api.addons; \ No newline at end of file diff --git a/src/main/java/world/bentobox/bentobox/api/commands/package-info.java b/src/main/java/world/bentobox/bentobox/api/commands/package-info.java index 7c4212842..2c2306515 100644 --- a/src/main/java/world/bentobox/bentobox/api/commands/package-info.java +++ b/src/main/java/world/bentobox/bentobox/api/commands/package-info.java @@ -1,7 +1,9 @@ /** - * API for BentoBox commands - */ -/** + * This package contains classes and handlers for BentoBox commands. + * + * Commands allow players and administrators to interact with BentoBox, including + * managing islands, settings, and other in-game features. This package ensures + * smooth integration and execution of commands within the plugin. *

* The workhorse class is the abstract class CompositeCommand. It provides all the functionality for * a command including automatic help, sub-commands, convenience methods, etc. See examples of how to use @@ -13,6 +15,10 @@ * their own custom help if required, but most of the time it is not. *

* @author tastybento - * + * + * Key features: + * - Command registration and parsing. + * - Support for custom addon-specific commands. + * - Error handling and permission validation. */ package world.bentobox.bentobox.api.commands; \ No newline at end of file diff --git a/src/main/java/world/bentobox/bentobox/api/configuration/package-info.java b/src/main/java/world/bentobox/bentobox/api/configuration/package-info.java index 75ae81960..2beff6941 100644 --- a/src/main/java/world/bentobox/bentobox/api/configuration/package-info.java +++ b/src/main/java/world/bentobox/bentobox/api/configuration/package-info.java @@ -1,4 +1,6 @@ /** - * Contains API related to configurations. + * Provides classes and interfaces for managing configuration settings within the BentoBox API. + * This package enables the definition, access, and manipulation of configuration options, + * facilitating the customization and extension of BentoBox's functionality. */ package world.bentobox.bentobox.api.configuration; \ No newline at end of file diff --git a/src/main/java/world/bentobox/bentobox/api/events/package-info.java b/src/main/java/world/bentobox/bentobox/api/events/package-info.java index 326a59c8c..8709a133b 100644 --- a/src/main/java/world/bentobox/bentobox/api/events/package-info.java +++ b/src/main/java/world/bentobox/bentobox/api/events/package-info.java @@ -1,7 +1,14 @@ /** - * API for all the events that BentoBox generates - */ -/** + * This package defines events used within the BentoBox framework. + * + * Events are triggered during key gameplay actions, such as island creation, + * deletion, or player interactions. Developers can use these events to customize + * behaviors or respond to actions in their addons. + * + * Key features: + * - Custom event classes (e.g., IslandCreateEvent, PlayerJoinEvent). + * - Integration with Bukkit's event system. + * * @author tastybento * */ diff --git a/src/main/java/world/bentobox/bentobox/api/package-info.java b/src/main/java/world/bentobox/bentobox/api/package-info.java new file mode 100644 index 000000000..19f31387b --- /dev/null +++ b/src/main/java/world/bentobox/bentobox/api/package-info.java @@ -0,0 +1,10 @@ +/** + * This package provides the core API for interacting with the BentoBox framework. + * + * It enables developers to integrate their custom plugins or addons with BentoBox, + * offering simplified access to common functionalities like: + * - Island management (creation, deletion, permissions). + * - Player interactions within island-based games. + * - Events and hooks for extending core behavior. + */ +package world.bentobox.bentobox.api; \ No newline at end of file diff --git a/src/main/java/world/bentobox/bentobox/package-info.java b/src/main/java/world/bentobox/bentobox/package-info.java new file mode 100644 index 000000000..128bc2f0f --- /dev/null +++ b/src/main/java/world/bentobox/bentobox/package-info.java @@ -0,0 +1,14 @@ +/** + * The core package for the BentoBox plugin. + * + * This package provides the foundational framework for island-based games like SkyBlock, + * AcidIsland, and others. It manages core plugin features such as the addon system, + * configuration, and APIs used by developers to create custom addons or extend + * the functionality of BentoBox. + * + * Key features: + * - A modular addon system to mix and match features and game modes. + * - Comprehensive APIs for island protection, GUIs, team management, and more. + * - Cross-compatibility with various game modes. + */ +package world.bentobox.bentobox; \ No newline at end of file diff --git a/src/main/java/world/bentobox/bentobox/util/package-info.java b/src/main/java/world/bentobox/bentobox/util/package-info.java index 3b6d6e5c3..787a062db 100644 --- a/src/main/java/world/bentobox/bentobox/util/package-info.java +++ b/src/main/java/world/bentobox/bentobox/util/package-info.java @@ -5,7 +5,13 @@ * Look here before you write your own utility function. If it isn't here, but would be useful * the submit a PR so others can avoid duplicating code! *

- * + * + * This package provides utility classes and helpers for common tasks within BentoBox. + * + * These utilities simplify repetitive tasks like file handling, configuration management, + * and mathematical calculations. They are used throughout the framework and can be + * leveraged by addon developers. + * * @author various * */ From 6b3d7a6ddec50cdd3383e670aba976fefc4a48bf Mon Sep 17 00:00:00 2001 From: tastybento Date: Wed, 4 Dec 2024 19:29:59 -0800 Subject: [PATCH 2/2] Update to MC 1 21 4. Remove code for older versions. --- pom.xml | 6 +++ .../PasteHandlerImpl.java | 52 ------------------- .../WorldRegeneratorImpl.java | 26 ---------- .../PasteHandlerImpl.java | 51 ------------------ .../WorldRegeneratorImpl.java | 26 ---------- .../PasteHandlerImpl.java | 52 ------------------- .../WorldRegeneratorImpl.java | 26 ---------- .../PasteHandlerImpl.java | 6 +-- .../WorldRegeneratorImpl.java | 6 +-- .../versions/ServerCompatibility.java | 38 +++++++++----- 10 files changed, 36 insertions(+), 253 deletions(-) delete mode 100644 src/main/java/world/bentobox/bentobox/nms/v1_20_0_R0_1_SNAPSHOT/PasteHandlerImpl.java delete mode 100644 src/main/java/world/bentobox/bentobox/nms/v1_20_0_R0_1_SNAPSHOT/WorldRegeneratorImpl.java delete mode 100644 src/main/java/world/bentobox/bentobox/nms/v1_20_1_R0_1_SNAPSHOT/PasteHandlerImpl.java delete mode 100644 src/main/java/world/bentobox/bentobox/nms/v1_20_1_R0_1_SNAPSHOT/WorldRegeneratorImpl.java delete mode 100644 src/main/java/world/bentobox/bentobox/nms/v1_20_6_R0_1_SNAPSHOT/PasteHandlerImpl.java delete mode 100644 src/main/java/world/bentobox/bentobox/nms/v1_20_6_R0_1_SNAPSHOT/WorldRegeneratorImpl.java rename src/main/java/world/bentobox/bentobox/nms/{v1_20_4_R0_1_SNAPSHOT => v1_21_4_R0_1_SNAPSHOT}/PasteHandlerImpl.java (92%) rename src/main/java/world/bentobox/bentobox/nms/{v1_20_4_R0_1_SNAPSHOT => v1_21_4_R0_1_SNAPSHOT}/WorldRegeneratorImpl.java (84%) diff --git a/pom.xml b/pom.xml index 90bf01ed9..243d6dfbe 100644 --- a/pom.xml +++ b/pom.xml @@ -234,6 +234,12 @@ ${spigot.version} provided + + org.spigotmc...... + spigot + 1.21.4-R0.1-SNAPSHOT + provided + org.spigotmc..... spigot diff --git a/src/main/java/world/bentobox/bentobox/nms/v1_20_0_R0_1_SNAPSHOT/PasteHandlerImpl.java b/src/main/java/world/bentobox/bentobox/nms/v1_20_0_R0_1_SNAPSHOT/PasteHandlerImpl.java deleted file mode 100644 index d9cc8f9f2..000000000 --- a/src/main/java/world/bentobox/bentobox/nms/v1_20_0_R0_1_SNAPSHOT/PasteHandlerImpl.java +++ /dev/null @@ -1,52 +0,0 @@ -package world.bentobox.bentobox.nms.v1_20_0_R0_1_SNAPSHOT; - -import java.util.concurrent.CompletableFuture; - -import org.bukkit.Location; -import org.bukkit.block.Block; -import org.bukkit.block.data.BlockData; -import org.bukkit.craftbukkit.v1_20_R1.CraftWorld; -import org.bukkit.craftbukkit.v1_20_R1.block.data.CraftBlockData; - -import net.minecraft.core.BlockPosition; -import net.minecraft.world.level.block.state.IBlockData; -import net.minecraft.world.level.chunk.Chunk; -import world.bentobox.bentobox.blueprints.dataobjects.BlueprintBlock; -import world.bentobox.bentobox.database.objects.Island; -import world.bentobox.bentobox.nms.PasteHandler; -import world.bentobox.bentobox.util.DefaultPasteUtil; -import world.bentobox.bentobox.util.Util; - -public class PasteHandlerImpl implements PasteHandler { - - - protected static final IBlockData AIR = ((CraftBlockData) AIR_BLOCKDATA).getState(); - - /** - * Set the block to the location - * - * @param island - island - * @param location - location - * @param bpBlock - blueprint block - */ - public CompletableFuture setBlock(Island island, Location location, BlueprintBlock bpBlock) { - return Util.getChunkAtAsync(location).thenRun(() -> { - Block block = location.getBlock(); - // Set the block data - default is AIR - BlockData bd = DefaultPasteUtil.createBlockData(bpBlock); - CraftBlockData craft = (CraftBlockData) bd; - net.minecraft.world.level.World nmsWorld = ((CraftWorld) location.getWorld()).getHandle(); - Chunk nmsChunk = nmsWorld.d(location.getBlockX() >> 4, location.getBlockZ() >> 4); - BlockPosition bp = new BlockPosition(location.getBlockX(), location.getBlockY(), location.getBlockZ()); - // Setting the block to air before setting to another state prevents some console errors - nmsChunk.a(bp, AIR, false); - nmsChunk.a(bp, craft.getState(), false); - block.setBlockData(bd, false); - DefaultPasteUtil.setBlockState(island, block, bpBlock); - // Set biome - if (bpBlock.getBiome() != null) { - block.setBiome(bpBlock.getBiome()); - } - }); - } -} diff --git a/src/main/java/world/bentobox/bentobox/nms/v1_20_0_R0_1_SNAPSHOT/WorldRegeneratorImpl.java b/src/main/java/world/bentobox/bentobox/nms/v1_20_0_R0_1_SNAPSHOT/WorldRegeneratorImpl.java deleted file mode 100644 index 6b85d7272..000000000 --- a/src/main/java/world/bentobox/bentobox/nms/v1_20_0_R0_1_SNAPSHOT/WorldRegeneratorImpl.java +++ /dev/null @@ -1,26 +0,0 @@ -package world.bentobox.bentobox.nms.v1_20_0_R0_1_SNAPSHOT; - -import org.bukkit.block.data.BlockData; -import org.bukkit.craftbukkit.v1_20_R1.CraftWorld; -import org.bukkit.craftbukkit.v1_20_R1.block.data.CraftBlockData; - -import net.minecraft.core.BlockPosition; -import net.minecraft.world.level.World; -import net.minecraft.world.level.chunk.Chunk; -import world.bentobox.bentobox.nms.CopyWorldRegenerator; - -public class WorldRegeneratorImpl extends CopyWorldRegenerator { - - @Override - public void setBlockInNativeChunk(org.bukkit.Chunk chunk, int x, int y, int z, BlockData blockData, - boolean applyPhysics) { - CraftBlockData craft = (CraftBlockData) blockData; - World nmsWorld = ((CraftWorld) chunk.getWorld()).getHandle(); - Chunk nmsChunk = nmsWorld.d(chunk.getX(), chunk.getZ()); - BlockPosition bp = new BlockPosition((chunk.getX() << 4) + x, y, (chunk.getZ() << 4) + z); - // Setting the block to air before setting to another state prevents some console errors - nmsChunk.a(bp, PasteHandlerImpl.AIR, applyPhysics); - nmsChunk.a(bp, craft.getState(), applyPhysics); - } - -} \ No newline at end of file diff --git a/src/main/java/world/bentobox/bentobox/nms/v1_20_1_R0_1_SNAPSHOT/PasteHandlerImpl.java b/src/main/java/world/bentobox/bentobox/nms/v1_20_1_R0_1_SNAPSHOT/PasteHandlerImpl.java deleted file mode 100644 index 483025c52..000000000 --- a/src/main/java/world/bentobox/bentobox/nms/v1_20_1_R0_1_SNAPSHOT/PasteHandlerImpl.java +++ /dev/null @@ -1,51 +0,0 @@ -package world.bentobox.bentobox.nms.v1_20_1_R0_1_SNAPSHOT; - -import java.util.concurrent.CompletableFuture; - -import org.bukkit.Location; -import org.bukkit.block.Block; -import org.bukkit.block.data.BlockData; -import org.bukkit.craftbukkit.v1_20_R1.CraftWorld; -import org.bukkit.craftbukkit.v1_20_R1.block.data.CraftBlockData; - -import net.minecraft.core.BlockPosition; -import net.minecraft.world.level.block.state.IBlockData; -import net.minecraft.world.level.chunk.Chunk; -import world.bentobox.bentobox.blueprints.dataobjects.BlueprintBlock; -import world.bentobox.bentobox.database.objects.Island; -import world.bentobox.bentobox.nms.PasteHandler; -import world.bentobox.bentobox.util.DefaultPasteUtil; -import world.bentobox.bentobox.util.Util; - -public class PasteHandlerImpl implements PasteHandler { - - protected static final IBlockData AIR = ((CraftBlockData) AIR_BLOCKDATA).getState(); - - /** - * Set the block to the location - * - * @param island - island - * @param location - location - * @param bpBlock - blueprint block - */ - public CompletableFuture setBlock(Island island, Location location, BlueprintBlock bpBlock) { - return Util.getChunkAtAsync(location).thenRun(() -> { - Block block = location.getBlock(); - // Set the block data - default is AIR - BlockData bd = DefaultPasteUtil.createBlockData(bpBlock); - CraftBlockData craft = (CraftBlockData) bd; - net.minecraft.world.level.World nmsWorld = ((CraftWorld) location.getWorld()).getHandle(); - Chunk nmsChunk = nmsWorld.d(location.getBlockX() >> 4, location.getBlockZ() >> 4); - BlockPosition bp = new BlockPosition(location.getBlockX(), location.getBlockY(), location.getBlockZ()); - // Setting the block to air before setting to another state prevents some console errors - nmsChunk.a(bp, AIR, false); - nmsChunk.a(bp, craft.getState(), false); - block.setBlockData(bd, false); - DefaultPasteUtil.setBlockState(island, block, bpBlock); - // Set biome - if (bpBlock.getBiome() != null) { - block.setBiome(bpBlock.getBiome()); - } - }); - } -} diff --git a/src/main/java/world/bentobox/bentobox/nms/v1_20_1_R0_1_SNAPSHOT/WorldRegeneratorImpl.java b/src/main/java/world/bentobox/bentobox/nms/v1_20_1_R0_1_SNAPSHOT/WorldRegeneratorImpl.java deleted file mode 100644 index d15d4809b..000000000 --- a/src/main/java/world/bentobox/bentobox/nms/v1_20_1_R0_1_SNAPSHOT/WorldRegeneratorImpl.java +++ /dev/null @@ -1,26 +0,0 @@ -package world.bentobox.bentobox.nms.v1_20_1_R0_1_SNAPSHOT; - -import org.bukkit.block.data.BlockData; -import org.bukkit.craftbukkit.v1_20_R1.CraftWorld; -import org.bukkit.craftbukkit.v1_20_R1.block.data.CraftBlockData; - -import net.minecraft.core.BlockPosition; -import net.minecraft.world.level.World; -import net.minecraft.world.level.chunk.Chunk; -import world.bentobox.bentobox.nms.CopyWorldRegenerator; - -public class WorldRegeneratorImpl extends CopyWorldRegenerator { - - @Override - public void setBlockInNativeChunk(org.bukkit.Chunk chunk, int x, int y, int z, BlockData blockData, - boolean applyPhysics) { - CraftBlockData craft = (CraftBlockData) blockData; - World nmsWorld = ((CraftWorld) chunk.getWorld()).getHandle(); - Chunk nmsChunk = nmsWorld.d(chunk.getX(), chunk.getZ()); - BlockPosition bp = new BlockPosition((chunk.getX() << 4) + x, y, (chunk.getZ() << 4) + z); - // Setting the block to air before setting to another state prevents some console errors - nmsChunk.a(bp, PasteHandlerImpl.AIR, applyPhysics); - nmsChunk.a(bp, craft.getState(), applyPhysics); - } - -} \ No newline at end of file diff --git a/src/main/java/world/bentobox/bentobox/nms/v1_20_6_R0_1_SNAPSHOT/PasteHandlerImpl.java b/src/main/java/world/bentobox/bentobox/nms/v1_20_6_R0_1_SNAPSHOT/PasteHandlerImpl.java deleted file mode 100644 index 49efdc370..000000000 --- a/src/main/java/world/bentobox/bentobox/nms/v1_20_6_R0_1_SNAPSHOT/PasteHandlerImpl.java +++ /dev/null @@ -1,52 +0,0 @@ -package world.bentobox.bentobox.nms.v1_20_6_R0_1_SNAPSHOT; - -import java.util.concurrent.CompletableFuture; - -import org.bukkit.Location; -import org.bukkit.block.Block; -import org.bukkit.block.data.BlockData; -import org.bukkit.craftbukkit.v1_20_R4.CraftWorld; -import org.bukkit.craftbukkit.v1_20_R4.block.data.CraftBlockData; - -import net.minecraft.core.BlockPosition; -import net.minecraft.world.level.block.state.IBlockData; -import net.minecraft.world.level.chunk.Chunk; -import world.bentobox.bentobox.blueprints.dataobjects.BlueprintBlock; -import world.bentobox.bentobox.database.objects.Island; -import world.bentobox.bentobox.nms.PasteHandler; -import world.bentobox.bentobox.util.DefaultPasteUtil; -import world.bentobox.bentobox.util.Util; - -public class PasteHandlerImpl implements PasteHandler { - - protected static final IBlockData AIR = ((CraftBlockData) AIR_BLOCKDATA).getState(); - - /** - * Set the block to the location - * - * @param island - island - * @param location - location - * @param bpBlock - blueprint block - */ - @Override - public CompletableFuture setBlock(Island island, Location location, BlueprintBlock bpBlock) { - return Util.getChunkAtAsync(location).thenRun(() -> { - Block block = location.getBlock(); - // Set the block data - default is AIR - BlockData bd = DefaultPasteUtil.createBlockData(bpBlock); - CraftBlockData craft = (CraftBlockData) bd; - net.minecraft.world.level.World nmsWorld = ((CraftWorld) location.getWorld()).getHandle(); - Chunk nmsChunk = nmsWorld.d(location.getBlockX() >> 4, location.getBlockZ() >> 4); - BlockPosition bp = new BlockPosition(location.getBlockX(), location.getBlockY(), location.getBlockZ()); - // Setting the block to air before setting to another state prevents some console errors - nmsChunk.a(bp, AIR, false); - nmsChunk.a(bp, craft.getState(), false); - block.setBlockData(bd, false); - DefaultPasteUtil.setBlockState(island, block, bpBlock); - // Set biome - if (bpBlock.getBiome() != null) { - block.setBiome(bpBlock.getBiome()); - } - }); - } -} diff --git a/src/main/java/world/bentobox/bentobox/nms/v1_20_6_R0_1_SNAPSHOT/WorldRegeneratorImpl.java b/src/main/java/world/bentobox/bentobox/nms/v1_20_6_R0_1_SNAPSHOT/WorldRegeneratorImpl.java deleted file mode 100644 index fbff31665..000000000 --- a/src/main/java/world/bentobox/bentobox/nms/v1_20_6_R0_1_SNAPSHOT/WorldRegeneratorImpl.java +++ /dev/null @@ -1,26 +0,0 @@ -package world.bentobox.bentobox.nms.v1_20_6_R0_1_SNAPSHOT; - -import org.bukkit.block.data.BlockData; -import org.bukkit.craftbukkit.v1_20_R4.CraftWorld; -import org.bukkit.craftbukkit.v1_20_R4.block.data.CraftBlockData; - -import net.minecraft.core.BlockPosition; -import net.minecraft.world.level.World; -import net.minecraft.world.level.chunk.Chunk; -import world.bentobox.bentobox.nms.CopyWorldRegenerator; - -public class WorldRegeneratorImpl extends CopyWorldRegenerator { - - @Override - public void setBlockInNativeChunk(org.bukkit.Chunk chunk, int x, int y, int z, BlockData blockData, - boolean applyPhysics) { - CraftBlockData craft = (CraftBlockData) blockData; - World nmsWorld = ((CraftWorld) chunk.getWorld()).getHandle(); - Chunk nmsChunk = nmsWorld.d(chunk.getX(), chunk.getZ()); - BlockPosition bp = new BlockPosition((chunk.getX() << 4) + x, y, (chunk.getZ() << 4) + z); - // Setting the block to air before setting to another state prevents some console errors - nmsChunk.a(bp, PasteHandlerImpl.AIR, applyPhysics); - nmsChunk.a(bp, craft.getState(), applyPhysics); - } - -} \ No newline at end of file diff --git a/src/main/java/world/bentobox/bentobox/nms/v1_20_4_R0_1_SNAPSHOT/PasteHandlerImpl.java b/src/main/java/world/bentobox/bentobox/nms/v1_21_4_R0_1_SNAPSHOT/PasteHandlerImpl.java similarity index 92% rename from src/main/java/world/bentobox/bentobox/nms/v1_20_4_R0_1_SNAPSHOT/PasteHandlerImpl.java rename to src/main/java/world/bentobox/bentobox/nms/v1_21_4_R0_1_SNAPSHOT/PasteHandlerImpl.java index af6a83d7a..e0096f298 100644 --- a/src/main/java/world/bentobox/bentobox/nms/v1_20_4_R0_1_SNAPSHOT/PasteHandlerImpl.java +++ b/src/main/java/world/bentobox/bentobox/nms/v1_21_4_R0_1_SNAPSHOT/PasteHandlerImpl.java @@ -1,12 +1,12 @@ -package world.bentobox.bentobox.nms.v1_20_4_R0_1_SNAPSHOT; +package world.bentobox.bentobox.nms.v1_21_4_R0_1_SNAPSHOT; import java.util.concurrent.CompletableFuture; import org.bukkit.Location; import org.bukkit.block.Block; import org.bukkit.block.data.BlockData; -import org.bukkit.craftbukkit.v1_20_R3.CraftWorld; -import org.bukkit.craftbukkit.v1_20_R3.block.data.CraftBlockData; +import org.bukkit.craftbukkit.v1_21_R3.CraftWorld; +import org.bukkit.craftbukkit.v1_21_R3.block.data.CraftBlockData; import net.minecraft.core.BlockPosition; import net.minecraft.world.level.block.state.IBlockData; diff --git a/src/main/java/world/bentobox/bentobox/nms/v1_20_4_R0_1_SNAPSHOT/WorldRegeneratorImpl.java b/src/main/java/world/bentobox/bentobox/nms/v1_21_4_R0_1_SNAPSHOT/WorldRegeneratorImpl.java similarity index 84% rename from src/main/java/world/bentobox/bentobox/nms/v1_20_4_R0_1_SNAPSHOT/WorldRegeneratorImpl.java rename to src/main/java/world/bentobox/bentobox/nms/v1_21_4_R0_1_SNAPSHOT/WorldRegeneratorImpl.java index f259a92bb..ca4215070 100644 --- a/src/main/java/world/bentobox/bentobox/nms/v1_20_4_R0_1_SNAPSHOT/WorldRegeneratorImpl.java +++ b/src/main/java/world/bentobox/bentobox/nms/v1_21_4_R0_1_SNAPSHOT/WorldRegeneratorImpl.java @@ -1,8 +1,8 @@ -package world.bentobox.bentobox.nms.v1_20_4_R0_1_SNAPSHOT; +package world.bentobox.bentobox.nms.v1_21_4_R0_1_SNAPSHOT; import org.bukkit.block.data.BlockData; -import org.bukkit.craftbukkit.v1_20_R3.CraftWorld; -import org.bukkit.craftbukkit.v1_20_R3.block.data.CraftBlockData; +import org.bukkit.craftbukkit.v1_21_R3.CraftWorld; +import org.bukkit.craftbukkit.v1_21_R3.block.data.CraftBlockData; import net.minecraft.core.BlockPosition; import net.minecraft.world.level.World; diff --git a/src/main/java/world/bentobox/bentobox/versions/ServerCompatibility.java b/src/main/java/world/bentobox/bentobox/versions/ServerCompatibility.java index 2b356e31e..a5566b07a 100644 --- a/src/main/java/world/bentobox/bentobox/versions/ServerCompatibility.java +++ b/src/main/java/world/bentobox/bentobox/versions/ServerCompatibility.java @@ -197,23 +197,23 @@ public class ServerCompatibility { /** * @since 1.21.0 */ - V1_19(Compatibility.COMPATIBLE), + V1_19(Compatibility.INCOMPATIBLE), /** * @since 1.21.0 */ - V1_19_1(Compatibility.COMPATIBLE), + V1_19_1(Compatibility.INCOMPATIBLE), /** * @since 1.21.0 */ - V1_19_2(Compatibility.COMPATIBLE), + V1_19_2(Compatibility.INCOMPATIBLE), /** * @since 1.22.0 */ - V1_19_3(Compatibility.COMPATIBLE), + V1_19_3(Compatibility.INCOMPATIBLE), /** * @since 1.22.1 */ - V1_19_4(Compatibility.COMPATIBLE), + V1_19_4(Compatibility.INCOMPATIBLE), /** * @since 1.24.0 */ @@ -221,40 +221,50 @@ public class ServerCompatibility { /** * @since 1.24.0 */ - V1_20_1(Compatibility.COMPATIBLE), + V1_20_1(Compatibility.INCOMPATIBLE), /** * @since 2.0.0 */ - V1_20_2(Compatibility.COMPATIBLE), + V1_20_2(Compatibility.INCOMPATIBLE), /** * @since 2.0.0 */ - V1_20_3(Compatibility.COMPATIBLE), + V1_20_3(Compatibility.INCOMPATIBLE), /** * @since 2.0.0 */ - V1_20_4(Compatibility.COMPATIBLE), + V1_20_4(Compatibility.INCOMPATIBLE), /** * @since 2.4.0 */ - V1_20_5(Compatibility.COMPATIBLE), + V1_20_5(Compatibility.INCOMPATIBLE), /** * @since 2.4.0 */ - V1_20_6(Compatibility.COMPATIBLE), + V1_20_6(Compatibility.INCOMPATIBLE), /** * @since 2.4.0 */ - V1_21(Compatibility.COMPATIBLE), + V1_21(Compatibility.INCOMPATIBLE), /** * @since 2.5.0 */ - V1_21_1(Compatibility.COMPATIBLE), + V1_21_1(Compatibility.INCOMPATIBLE), /** * @since 2.7.0 */ - V1_21_2(Compatibility.INCOMPATIBLE), V1_21_3(Compatibility.COMPATIBLE); + V1_21_2(Compatibility.INCOMPATIBLE), + + /** + * @since 3.0.0 + */ + V1_21_3(Compatibility.COMPATIBLE), + + /** + * @since 3.0.1 + */ + V1_21_4(Compatibility.COMPATIBLE),; private final Compatibility compatibility;