diff --git a/pom.xml b/pom.xml
index ecb9bda..86eb3ba 100644
--- a/pom.xml
+++ b/pom.xml
@@ -6,15 +6,21 @@
com.github.TBMCPlugins
CustomDimensions
- 1.1
+ 1.2
org.apache.maven.plugins
maven-compiler-plugin
+ 3.8.1
-
- 10
+
+ 8
+
+ 14
+
+ -Xplugin:jabel
+
@@ -25,6 +31,10 @@
spigot-repo
https://hub.spigotmc.org/nexus/content/repositories/snapshots/
+
+ jitpack.io
+ https://jitpack.io/
+
@@ -34,6 +44,36 @@
1.16.3-R0.1-SNAPSHOT
provided
+
+ com.github.bsideup.jabel
+ jabel-javac-plugin
+ 0.3.0
+ provided
+
+
+
+ intellij-idea-only
+
+
+ idea.maven.embedder.version
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+
+ 14
+
+ --enable-preview
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/main/java/buttondevteam/customdimensions/CustomDimensions.java b/src/main/java/buttondevteam/customdimensions/CustomDimensions.java
index 418493b..b7cdd19 100644
--- a/src/main/java/buttondevteam/customdimensions/CustomDimensions.java
+++ b/src/main/java/buttondevteam/customdimensions/CustomDimensions.java
@@ -91,8 +91,16 @@ public class CustomDimensions extends JavaPlugin implements Listener {
List spawners = ImmutableList.of(new MobSpawnerPhantom(), new MobSpawnerPatrol(), new MobSpawnerCat(), new VillageSiege(), new MobSpawnerTrader(worlddata));
ResourceKey dimManResKey = ResourceKey.a(IRegistry.K, dimKey.a());
+ var dimRegistry = ((RegistryMaterials) console.customRegistry.a());
+ {
+ var key = dimRegistry.getKey(dimensionmanager);
+ if (key != null) { //The loaded manager is the same
+ getLogger().warning("Dimension manager already loaded with key " + key + "! Skipping");
+ continue;
+ }
+ }
//Replace existing dimension manager, correctly setting the ID up (which is -1 for default worlds...)
- ((RegistryMaterials) console.customRegistry.a()).a(OptionalInt.empty(), dimManResKey, dimensionmanager, Lifecycle.stable());
+ dimRegistry.a(OptionalInt.empty(), dimManResKey, dimensionmanager, Lifecycle.stable());
var worldloadlistener = console.worldLoadListenerFactory.create(11);
@@ -100,7 +108,9 @@ public class CustomDimensions extends JavaPlugin implements Listener {
worlddata, worldKey, dimensionmanager, worldloadlistener, chunkgenerator,
false, //isDebugWorld
BiomeManager.a(worlddata.getGeneratorSettings().getSeed()), //Biome seed
- spawners, false, org.bukkit.World.Environment.NORMAL, null);
+ spawners,
+ true, //Update world time
+ org.bukkit.World.Environment.NORMAL, null);
if (Bukkit.getWorld(name.toLowerCase(Locale.ENGLISH)) == null) {
getLogger().warning("Failed to load custom dimension " + name);