From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Cryptite Date: Sat, 9 Nov 2024 09:56:09 -0600 Subject: [PATCH] Add World Instance flag diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java index 3b6b6483bf855493948417f44f06427b625bc910..7bdbe1f2fa31781b7bd7b12c555b1b668edbfd6b 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -230,6 +230,7 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe public final UUID uuid; public boolean hasPhysicsEvent = true; // Paper - BlockPhysicsEvent public boolean hasEntityMoveEvent; // Paper - Add EntityMoveEvent + public boolean instance; // Slice public LevelChunk getChunkIfLoaded(int x, int z) { return this.chunkSource.getChunkAtIfLoadedImmediately(x, z); // Paper - Use getChunkIfLoadedImmediately diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java index 3134fab97260897601d7c8e2810f11b8be86dbec..55e46aa1b3f6bb3a868e6a4b0e74a522b1e32c01 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -1341,6 +1341,18 @@ public class CraftWorld extends CraftRegionAccessor implements World { this.world.noSave = !value; } + // Slice start + @Override + public boolean isInstance() { + return world.instance; + } + + @Override + public void setInstance(boolean value) { + world.instance = value; + } + // Slice end + @Override public void setDifficulty(Difficulty difficulty) { this.getHandle().getServer().setDifficulty(this.getHandle(), net.minecraft.world.Difficulty.byId(difficulty.getValue()), true); // Paper - per level difficulty; don't skip other difficulty-changing logic