From 35cbdf67d614da1e04eed8f93e6e1640c2ba402d Mon Sep 17 00:00:00 2001 From: "Lukas Rieger (Blue)" Date: Wed, 3 Aug 2022 17:51:29 +0200 Subject: [PATCH] Use sponge world UUIDs instead of the formatted resource-key to ensure uniqueness --- .../main/java/de/bluecolored/bluemap/sponge/SpongePlugin.java | 3 ++- .../main/java/de/bluecolored/bluemap/sponge/SpongeWorld.java | 2 +- .../main/java/de/bluecolored/bluemap/sponge/SpongePlugin.java | 3 ++- .../main/java/de/bluecolored/bluemap/sponge/SpongeWorld.java | 2 +- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/implementations/sponge-8.0.0/src/main/java/de/bluecolored/bluemap/sponge/SpongePlugin.java b/implementations/sponge-8.0.0/src/main/java/de/bluecolored/bluemap/sponge/SpongePlugin.java index 658b6ef2..077adfb6 100644 --- a/implementations/sponge-8.0.0/src/main/java/de/bluecolored/bluemap/sponge/SpongePlugin.java +++ b/implementations/sponge-8.0.0/src/main/java/de/bluecolored/bluemap/sponge/SpongePlugin.java @@ -234,7 +234,8 @@ public Optional getWorld(Object world) { if (world instanceof String) { ResourceKey resourceKey = ResourceKey.resolve((String) world); - if (resourceKey != null) world = resourceKey; + var serverWorld = Sponge.server().worldManager().world(resourceKey).orElse(null); + if (serverWorld != null) world = serverWorld; } if (world instanceof ResourceKey) { diff --git a/implementations/sponge-8.0.0/src/main/java/de/bluecolored/bluemap/sponge/SpongeWorld.java b/implementations/sponge-8.0.0/src/main/java/de/bluecolored/bluemap/sponge/SpongeWorld.java index 080ac4db..2a6350ca 100644 --- a/implementations/sponge-8.0.0/src/main/java/de/bluecolored/bluemap/sponge/SpongeWorld.java +++ b/implementations/sponge-8.0.0/src/main/java/de/bluecolored/bluemap/sponge/SpongeWorld.java @@ -63,7 +63,7 @@ public Dimension getDimension() { public Optional getId() { var world = delegate.get(); if (world != null) { - return Optional.of(world.key().formatted()); + return Optional.of(world.uniqueId().toString()); } return Optional.empty(); } diff --git a/implementations/sponge-9.0.0/src/main/java/de/bluecolored/bluemap/sponge/SpongePlugin.java b/implementations/sponge-9.0.0/src/main/java/de/bluecolored/bluemap/sponge/SpongePlugin.java index 658b6ef2..077adfb6 100644 --- a/implementations/sponge-9.0.0/src/main/java/de/bluecolored/bluemap/sponge/SpongePlugin.java +++ b/implementations/sponge-9.0.0/src/main/java/de/bluecolored/bluemap/sponge/SpongePlugin.java @@ -234,7 +234,8 @@ public Optional getWorld(Object world) { if (world instanceof String) { ResourceKey resourceKey = ResourceKey.resolve((String) world); - if (resourceKey != null) world = resourceKey; + var serverWorld = Sponge.server().worldManager().world(resourceKey).orElse(null); + if (serverWorld != null) world = serverWorld; } if (world instanceof ResourceKey) { diff --git a/implementations/sponge-9.0.0/src/main/java/de/bluecolored/bluemap/sponge/SpongeWorld.java b/implementations/sponge-9.0.0/src/main/java/de/bluecolored/bluemap/sponge/SpongeWorld.java index 080ac4db..2a6350ca 100644 --- a/implementations/sponge-9.0.0/src/main/java/de/bluecolored/bluemap/sponge/SpongeWorld.java +++ b/implementations/sponge-9.0.0/src/main/java/de/bluecolored/bluemap/sponge/SpongeWorld.java @@ -63,7 +63,7 @@ public Dimension getDimension() { public Optional getId() { var world = delegate.get(); if (world != null) { - return Optional.of(world.key().formatted()); + return Optional.of(world.uniqueId().toString()); } return Optional.empty(); }