diff --git a/src/main/java/carpet/script/api/Auxiliary.java b/src/main/java/carpet/script/api/Auxiliary.java index d43c4f62..03c47d4f 100644 --- a/src/main/java/carpet/script/api/Auxiliary.java +++ b/src/main/java/carpet/script/api/Auxiliary.java @@ -1141,6 +1141,7 @@ public class Auxiliary { ServerLevel serverLevel2 = new ServerLevel(server, Util.backgroundExecutor(), session, derivedLevelData, resourceKey2, entry.getValue(), WorldTools.NOOP_LISTENER, bl, m, ImmutableList.of(), false); server.overworld().getWorldBorder().addListener(new BorderChangeListener.DelegateBorderChangeListener(serverLevel2.getWorldBorder())); existing_worlds.put(resourceKey2, serverLevel2); + addeds.add(ValueConversions.of(registryKey.location())); } } return ListValue.wrap(addeds); diff --git a/src/main/java/carpet/script/api/WorldAccess.java b/src/main/java/carpet/script/api/WorldAccess.java index 2f428de5..e9ffcc34 100644 --- a/src/main/java/carpet/script/api/WorldAccess.java +++ b/src/main/java/carpet/script/api/WorldAccess.java @@ -1253,8 +1253,7 @@ public class WorldAccess { } ServerLevel world = cc.s.getLevel(); BlockPos pos = locator.block.getPos(); - ChunkAccess chunk = world.getChunk(pos.getX() >> 4, pos.getZ() >> 4, ChunkStatus.BIOMES); - if (chunk instanceof LevelChunk) return Value.FALSE; // questinoalble, but it makes sense + ChunkAccess chunk = world.getChunk(pos); // getting level chunk instead of protochunk with biomes int biomeX = QuartPos.fromBlock(pos.getX()); int biomeY = QuartPos.fromBlock(pos.getY()); int biomeZ = QuartPos.fromBlock(pos.getZ());