From 7f324bd72b5856152ba2f905406aea2d23e3878a Mon Sep 17 00:00:00 2001 From: Christian Bergschneider Date: Sat, 7 Jun 2025 16:28:50 +0200 Subject: [PATCH 1/2] fix: remove unused player configuration phase in biome preload The loop triggering the player configuration phase was removed as it is unnecessary and unrelated to biome preloading. This streamlines the function and avoids redundant operations during biome initialization. --- .../terra/minestom/world/MinestomChunkGeneratorWrapper.java | 3 --- 1 file changed, 3 deletions(-) diff --git a/platforms/minestom/src/main/java/com/dfsek/terra/minestom/world/MinestomChunkGeneratorWrapper.java b/platforms/minestom/src/main/java/com/dfsek/terra/minestom/world/MinestomChunkGeneratorWrapper.java index 6c72a3326..418f5de0c 100644 --- a/platforms/minestom/src/main/java/com/dfsek/terra/minestom/world/MinestomChunkGeneratorWrapper.java +++ b/platforms/minestom/src/main/java/com/dfsek/terra/minestom/world/MinestomChunkGeneratorWrapper.java @@ -104,9 +104,6 @@ public class MinestomChunkGeneratorWrapper implements Generator, GeneratorWrappe private void preloadBiomes() { this.biomePool.preloadBiomes(world.getBiomeProvider().getBiomes()); - for(Player player : MinecraftServer.getConnectionManager().getOnlinePlayers()) { - player.startConfigurationPhase(); - } } public void displayStats() { From 3fe79338dba8476625bef0fbcc225236b233c5bc Mon Sep 17 00:00:00 2001 From: Christian Bergschneider Date: Tue, 17 Jun 2025 00:10:08 +0200 Subject: [PATCH 2/2] refactor: replace `DynamicRegistry.Key` with `RegistryKey` across Minestom components Updated all references from `DynamicRegistry.Key` to `RegistryKey` to align with the updated Minestom API. Adjusted relevant classes, methods, and object interactions to ensure compatibility and maintain consistency. Updated `Versions.kt` to the latest Minestom version. --- buildSrc/src/main/kotlin/Versions.kt | 2 +- .../com/dfsek/terra/minestom/biome/MinestomBiome.java | 8 ++++---- .../dfsek/terra/minestom/biome/MinestomBiomeLoader.java | 4 ++-- .../minestom/biome/MinestomUserDefinedBiomeFactory.java | 5 +++-- .../com/dfsek/terra/minestom/biome/UserDefinedBiome.java | 4 ++-- .../dfsek/terra/minestom/item/MinestomEnchantment.java | 3 ++- .../com/dfsek/terra/minestom/item/MinestomItemStack.java | 4 ++-- 7 files changed, 16 insertions(+), 14 deletions(-) diff --git a/buildSrc/src/main/kotlin/Versions.kt b/buildSrc/src/main/kotlin/Versions.kt index 5503b42b3..6407640a6 100644 --- a/buildSrc/src/main/kotlin/Versions.kt +++ b/buildSrc/src/main/kotlin/Versions.kt @@ -87,6 +87,6 @@ object Versions { } object Minestom { - const val minestom = "1_21_5-4d91778331" + const val minestom = "1_21_5-1e8b8693ac" } } diff --git a/platforms/minestom/src/main/java/com/dfsek/terra/minestom/biome/MinestomBiome.java b/platforms/minestom/src/main/java/com/dfsek/terra/minestom/biome/MinestomBiome.java index a050978d6..54be04180 100644 --- a/platforms/minestom/src/main/java/com/dfsek/terra/minestom/biome/MinestomBiome.java +++ b/platforms/minestom/src/main/java/com/dfsek/terra/minestom/biome/MinestomBiome.java @@ -2,17 +2,17 @@ package com.dfsek.terra.minestom.biome; import com.dfsek.terra.api.world.biome.PlatformBiome; -import net.minestom.server.registry.DynamicRegistry; +import net.minestom.server.registry.RegistryKey; import net.minestom.server.world.biome.Biome; public class MinestomBiome implements PlatformBiome { - private final DynamicRegistry.Key biome; + private final RegistryKey biome; - public MinestomBiome(DynamicRegistry.Key biome) { this.biome = biome; } + public MinestomBiome(RegistryKey biome) { this.biome = biome; } @Override - public DynamicRegistry.Key getHandle() { + public RegistryKey getHandle() { return biome; } } diff --git a/platforms/minestom/src/main/java/com/dfsek/terra/minestom/biome/MinestomBiomeLoader.java b/platforms/minestom/src/main/java/com/dfsek/terra/minestom/biome/MinestomBiomeLoader.java index ccd1176c5..e82e3ec10 100644 --- a/platforms/minestom/src/main/java/com/dfsek/terra/minestom/biome/MinestomBiomeLoader.java +++ b/platforms/minestom/src/main/java/com/dfsek/terra/minestom/biome/MinestomBiomeLoader.java @@ -8,7 +8,7 @@ import com.dfsek.tectonic.api.loader.type.TypeLoader; import com.dfsek.terra.api.world.biome.PlatformBiome; import net.kyori.adventure.key.Key; -import net.minestom.server.registry.DynamicRegistry; +import net.minestom.server.registry.RegistryKey; import org.intellij.lang.annotations.Subst; import org.jetbrains.annotations.NotNull; @@ -21,6 +21,6 @@ public class MinestomBiomeLoader implements TypeLoader { @Subst("name:value") String id = (String) o; Key key = Key.key(id); - return new MinestomBiome(DynamicRegistry.Key.of(key)); + return new MinestomBiome(RegistryKey.unsafeOf(key)); } } \ No newline at end of file diff --git a/platforms/minestom/src/main/java/com/dfsek/terra/minestom/biome/MinestomUserDefinedBiomeFactory.java b/platforms/minestom/src/main/java/com/dfsek/terra/minestom/biome/MinestomUserDefinedBiomeFactory.java index 51d1fc07e..2ef3d9044 100644 --- a/platforms/minestom/src/main/java/com/dfsek/terra/minestom/biome/MinestomUserDefinedBiomeFactory.java +++ b/platforms/minestom/src/main/java/com/dfsek/terra/minestom/biome/MinestomUserDefinedBiomeFactory.java @@ -8,6 +8,7 @@ import net.kyori.adventure.key.Key; import net.minestom.server.MinecraftServer; import net.minestom.server.color.Color; import net.minestom.server.registry.DynamicRegistry; +import net.minestom.server.registry.RegistryKey; import net.minestom.server.world.biome.Biome; import net.minestom.server.world.biome.BiomeEffects; import org.intellij.lang.annotations.Subst; @@ -24,7 +25,7 @@ public class MinestomUserDefinedBiomeFactory implements BiomeFactory { @Override public UserDefinedBiome create(ConfigPack pack, com.dfsek.terra.api.world.biome.Biome source) { VanillaBiomeProperties properties = source.getContext().get(VanillaBiomeProperties.class); - DynamicRegistry.Key parentKey = ((MinestomBiome) source.getPlatformBiome()).getHandle(); + RegistryKey parentKey = ((MinestomBiome) source.getPlatformBiome()).getHandle(); Biome parent = mergeNullable(biomeRegistry.get(parentKey), plainsBiome); BiomeEffects parentEffects = parent.effects(); Key key = Key.key("terra", createBiomeID(pack, source.getID())); @@ -57,7 +58,7 @@ public class MinestomUserDefinedBiomeFactory implements BiomeFactory { .effects(effectsBuilder.build()) .build(); - DynamicRegistry.Key registryKey = MinecraftServer.getBiomeRegistry().register(key, target); + RegistryKey registryKey = MinecraftServer.getBiomeRegistry().register(key, target); return new UserDefinedBiome(key, registryKey, source.getID(), target); } diff --git a/platforms/minestom/src/main/java/com/dfsek/terra/minestom/biome/UserDefinedBiome.java b/platforms/minestom/src/main/java/com/dfsek/terra/minestom/biome/UserDefinedBiome.java index 059a0cc93..86515d810 100644 --- a/platforms/minestom/src/main/java/com/dfsek/terra/minestom/biome/UserDefinedBiome.java +++ b/platforms/minestom/src/main/java/com/dfsek/terra/minestom/biome/UserDefinedBiome.java @@ -1,9 +1,9 @@ package com.dfsek.terra.minestom.biome; import net.kyori.adventure.key.Key; -import net.minestom.server.registry.DynamicRegistry; +import net.minestom.server.registry.RegistryKey; import net.minestom.server.world.biome.Biome; -public record UserDefinedBiome(Key key, DynamicRegistry.Key registry, String id, Biome biome) { +public record UserDefinedBiome(Key key, RegistryKey registry, String id, Biome biome) { } diff --git a/platforms/minestom/src/main/java/com/dfsek/terra/minestom/item/MinestomEnchantment.java b/platforms/minestom/src/main/java/com/dfsek/terra/minestom/item/MinestomEnchantment.java index 69411571a..75c0006f9 100644 --- a/platforms/minestom/src/main/java/com/dfsek/terra/minestom/item/MinestomEnchantment.java +++ b/platforms/minestom/src/main/java/com/dfsek/terra/minestom/item/MinestomEnchantment.java @@ -7,6 +7,7 @@ import net.kyori.adventure.key.Key; import net.minestom.server.MinecraftServer; import net.minestom.server.item.Material; import net.minestom.server.registry.DynamicRegistry; +import net.minestom.server.registry.RegistryKey; import java.util.Objects; @@ -40,7 +41,7 @@ public class MinestomEnchantment implements Enchantment { // Get the registry key for the other enchantment to use in contains try { DynamicRegistry registry = MinecraftServer.getEnchantmentRegistry(); - DynamicRegistry.Key otherKey = registry.getKey(otherDelegate); + RegistryKey otherKey = registry.getKey(otherDelegate); return delegate.exclusiveSet().contains(otherKey); } catch (Exception e) { // If the key approach fails, fall back to a more basic implementation diff --git a/platforms/minestom/src/main/java/com/dfsek/terra/minestom/item/MinestomItemStack.java b/platforms/minestom/src/main/java/com/dfsek/terra/minestom/item/MinestomItemStack.java index 214785016..1d90e4896 100644 --- a/platforms/minestom/src/main/java/com/dfsek/terra/minestom/item/MinestomItemStack.java +++ b/platforms/minestom/src/main/java/com/dfsek/terra/minestom/item/MinestomItemStack.java @@ -10,7 +10,7 @@ import net.minestom.server.component.DataComponents; import net.minestom.server.item.ItemStack; import net.minestom.server.item.component.EnchantmentList; import net.minestom.server.registry.DynamicRegistry; -import net.minestom.server.registry.DynamicRegistry.Key; +import net.minestom.server.registry.RegistryKey; import org.jetbrains.annotations.NotNull; import java.util.HashMap; @@ -59,7 +59,7 @@ public class MinestomItemStack implements com.dfsek.terra.api.inventory.ItemStac @Override public void setItemMeta(ItemMeta meta) { - HashMap, Integer> enchantments = new HashMap<>(); + HashMap, Integer> enchantments = new HashMap<>(); DynamicRegistry registry = MinecraftServer.getEnchantmentRegistry(); meta.getEnchantments().forEach((key, value) -> { MinestomEnchantment enchantment = (MinestomEnchantment) key;