From 71f819e6ee6e7be77a249ea83a20f4a2b634cacf Mon Sep 17 00:00:00 2001 From: OmerBenGera Date: Thu, 13 Apr 2023 16:57:05 +0300 Subject: [PATCH] Fixed overriding custom island creation algorithms that were registered --- .../bgsoftware/superiorskyblock/island/GridManagerImpl.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/bgsoftware/superiorskyblock/island/GridManagerImpl.java b/src/main/java/com/bgsoftware/superiorskyblock/island/GridManagerImpl.java index 77d55abae..a40257e45 100644 --- a/src/main/java/com/bgsoftware/superiorskyblock/island/GridManagerImpl.java +++ b/src/main/java/com/bgsoftware/superiorskyblock/island/GridManagerImpl.java @@ -56,6 +56,7 @@ import java.util.List; import java.util.Locale; import java.util.Objects; +import java.util.Optional; import java.util.Set; import java.util.UUID; import java.util.function.Function; @@ -106,7 +107,8 @@ public void loadData() { throw new RuntimeException("GridManager was not initialized correctly. Contact Ome_R regarding this!"); initializeDatabaseBridge(); - this.islandCreationAlgorithm = DefaultIslandCreationAlgorithm.getInstance(); + if (this.islandCreationAlgorithm == null) + this.islandCreationAlgorithm = DefaultIslandCreationAlgorithm.getInstance(); this.lastIsland = new SBlockPosition(plugin.getSettings().getWorlds().getDefaultWorldName(), 0, 100, 0); BukkitExecutor.sync(this::updateSpawn); @@ -294,7 +296,7 @@ public void setIslandCreationAlgorithm(@Nullable IslandCreationAlgorithm islandC @Override public IslandCreationAlgorithm getIslandCreationAlgorithm() { - return this.islandCreationAlgorithm; + return Optional.ofNullable(this.islandCreationAlgorithm).orElse(DefaultIslandCreationAlgorithm.getInstance()); } @Override