diff --git a/patches/api/0006-World-Instance-flag.patch b/patches/api/0006-World-Instance-flag.patch new file mode 100644 index 000000000..b857d8f4e --- /dev/null +++ b/patches/api/0006-World-Instance-flag.patch @@ -0,0 +1,22 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Cryptite +Date: Mon, 28 Feb 2022 09:17:28 -0600 +Subject: [PATCH] World Instance flag + + +diff --git a/src/main/java/org/bukkit/World.java b/src/main/java/org/bukkit/World.java +index 8a688583e65cd22e0417f9fd24e51803486d095e..4be062a2404b509594d723eea59d9656eaa228f1 100644 +--- a/src/main/java/org/bukkit/World.java ++++ b/src/main/java/org/bukkit/World.java +@@ -2608,6 +2608,11 @@ public interface World extends RegionAccessor, WorldInfo, PluginMessageRecipient + */ + public void setAutoSave(boolean value); + ++ // Slice start ++ public boolean isInstance(); ++ public void setInstance(boolean value); ++ // Slice end ++ + /** + * Sets the Difficulty of the world. + * diff --git a/patches/server/0014-World-Instance-flag.patch b/patches/server/0014-World-Instance-flag.patch new file mode 100644 index 000000000..50cc16dc6 --- /dev/null +++ b/patches/server/0014-World-Instance-flag.patch @@ -0,0 +1,41 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Cryptite +Date: Mon, 28 Feb 2022 09:17:28 -0600 +Subject: [PATCH] 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 768017ba650f1bd96e3db0aad8fda939e2ea7add..be0799e899c0992641769452a1fcc2b49d15c923 100644 +--- a/src/main/java/net/minecraft/server/level/ServerLevel.java ++++ b/src/main/java/net/minecraft/server/level/ServerLevel.java +@@ -211,6 +211,7 @@ public class ServerLevel extends Level implements WorldGenLevel { + public final UUID uuid; + public boolean hasPhysicsEvent = true; // Paper + public boolean hasEntityMoveEvent = false; // Paper ++ public boolean instance; // Slice + public static Throwable getAddToWorldStackTrace(Entity entity) { + return new Throwable(entity + " Added to world at " + new java.util.Date()); + } +diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +index 2c3ce2065812de227c34506edddb439da9a07ba1..eebdeb114fbc2f11706c0a4f90a6f8ea9e644dd5 100644 +--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java ++++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +@@ -1265,6 +1265,18 @@ public class CraftWorld extends CraftRegionAccessor implements World { + 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().serverLevelData.setDifficulty(net.minecraft.world.Difficulty.byId(difficulty.getValue()));