From 615efda22544ce626e1dbc6ecb57caed0c082121 Mon Sep 17 00:00:00 2001 From: violetc <58360096+s-yh-china@users.noreply.github.com> Date: Mon, 16 Sep 2024 15:19:57 +0800 Subject: [PATCH] Update Paper --- gradle.properties | 2 +- patches/api/0001-Leaves-Server-Config.patch | 4 +- patches/api/0003-Add-fakeplayer-api.patch | 8 ++-- patches/api/0009-Replay-Mod-API.patch | 8 ++-- patches/api/0010-Bytebuf-API.patch | 8 ++-- patches/server/0003-Delete-Timings.patch | 22 +++++----- .../0005-Update-version-fetcher-repo.patch | 4 +- ...006-Leaves-Server-Config-And-Command.patch | 10 ++--- .../server/0007-Leaves-Protocol-Core.patch | 10 ++--- patches/server/0010-Fakeplayer-support.patch | 44 +++++++++---------- ...Add-isShrink-to-EntityResurrectEvent.patch | 4 +- ...-Budding-Amethyst-can-push-by-piston.patch | 4 +- patches/server/0018-No-chat-sign.patch | 8 ++-- ...reams-and-iterators-from-range-check.patch | 4 +- patches/server/0034-BBOR-Protocol.patch | 4 +- patches/server/0035-PCA-sync-protocol.patch | 4 +- ...Alternative-block-placement-Protocol.patch | 4 +- .../0038-Player-operation-limiter.patch | 6 +-- .../server/0040-Stackable-ShulkerBoxes.patch | 14 +++--- .../0042-MC-Technical-Survival-Mode.patch | 12 ++--- .../0043-Return-nether-portal-fix.patch | 12 ++--- patches/server/0045-Xaero-Map-Protocol.patch | 4 +- .../0048-Fix-update-suppression-crash.patch | 6 +-- ...e-distance-check-for-UseItemOnPacket.patch | 4 +- .../0060-Optimized-dragon-respawn.patch | 6 +-- .../0077-Cache-BlockStatePairKey-hash.patch | 6 +-- .../server/0079-Disable-packet-limit.patch | 4 +- .../0080-Reduce-array-allocations.patch | 30 ++++++------- .../server/0081-Optimize-sun-burn-tick.patch | 6 +-- .../0094-Force-peaceful-mode-switch.patch | 8 ++-- patches/server/0095-Replay-Mod-API.patch | 16 +++---- patches/server/0102-Force-Void-Trade.patch | 14 +++--- .../server/0104-CCE-update-suppression.patch | 4 +- ...0106-Disable-moved-wrongly-threshold.patch | 10 ++--- patches/server/0123-Bytebuf-API.patch | 10 ++--- .../0124-Allow-grindstone-overstacking.patch | 6 +-- ...sable-crystal-portal-proximity-check.patch | 8 ++-- .../0132-Old-BlockEntity-behaviour.patch | 6 +-- .../0133-Fix-Spigot-EndPlatform-destroy.patch | 25 ----------- 39 files changed, 172 insertions(+), 197 deletions(-) delete mode 100644 patches/server/0133-Fix-Spigot-EndPlatform-destroy.patch diff --git a/gradle.properties b/gradle.properties index 7a0ff7b4..b8e0b7b9 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,7 +1,7 @@ group=org.leavesmc.leaves version=1.21.1-R0.1-SNAPSHOT mcVersion=1.21.1 -paperRef=7c9240f4a63b13be1fdcedbfb0270f9b49b75518 +paperRef=13a23951d7142c3c4c39bd5e9bddac190b90c151 preVersion=false updatingMinecraft=false org.gradle.jvmargs=-Xmx2G diff --git a/patches/api/0001-Leaves-Server-Config.patch b/patches/api/0001-Leaves-Server-Config.patch index 440a6dba..597df93d 100644 --- a/patches/api/0001-Leaves-Server-Config.patch +++ b/patches/api/0001-Leaves-Server-Config.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Leaves Server Config diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java -index c043d239c449bf4bb13a24467f2f6c67b4d28d2d..594deedd08c3b3255fe6838471d945759f09a182 100644 +index 6246251caf2c6f025c824b8e7a944b8d48751fa1..80949894308e597676745e312474fe0c9672a23e 100644 --- a/src/main/java/org/bukkit/Server.java +++ b/src/main/java/org/bukkit/Server.java -@@ -2253,6 +2253,14 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi +@@ -2264,6 +2264,14 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi throw new UnsupportedOperationException("Not supported yet."); } // Paper end diff --git a/patches/api/0003-Add-fakeplayer-api.patch b/patches/api/0003-Add-fakeplayer-api.patch index 62003ac4..725ba330 100644 --- a/patches/api/0003-Add-fakeplayer-api.patch +++ b/patches/api/0003-Add-fakeplayer-api.patch @@ -14,10 +14,10 @@ index 97e78e27ee0eea2c8b24886eeb19164d552323fe..9764fa643039f215627c20a33ca70c9e /.factorypath + diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java -index 4705c1d91e39fcc3c608b1f1a38a30d063ccf06e..30cebbf2e194c56450328a7dc04c92c81edce284 100644 +index e20e4239a5a1f952e1c70e899549989d5e42f73c..5f6078bc80e20c9482a96d2bf1095bb32fbfc28c 100644 --- a/src/main/java/org/bukkit/Bukkit.java +++ b/src/main/java/org/bukkit/Bukkit.java -@@ -2906,6 +2906,17 @@ public final class Bukkit { +@@ -2917,6 +2917,17 @@ public final class Bukkit { } // Paper end - Folia region threading API @@ -36,7 +36,7 @@ index 4705c1d91e39fcc3c608b1f1a38a30d063ccf06e..30cebbf2e194c56450328a7dc04c92c8 public static Server.Spigot spigot() { return server.spigot(); diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java -index 594deedd08c3b3255fe6838471d945759f09a182..6fa638198f75458177af795f00250ce970591315 100644 +index 80949894308e597676745e312474fe0c9672a23e..133ae299ba12e0da9c5fa252a06bbf4f2b7b9016 100644 --- a/src/main/java/org/bukkit/Server.java +++ b/src/main/java/org/bukkit/Server.java @@ -62,6 +62,7 @@ import org.jetbrains.annotations.ApiStatus; @@ -47,7 +47,7 @@ index 594deedd08c3b3255fe6838471d945759f09a182..6fa638198f75458177af795f00250ce9 /** * Represents a server implementation. -@@ -2551,4 +2552,13 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi +@@ -2562,4 +2563,13 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi */ boolean isOwnedByCurrentRegion(@NotNull Entity entity); // Paper end - Folia region threading API diff --git a/patches/api/0009-Replay-Mod-API.patch b/patches/api/0009-Replay-Mod-API.patch index d1d58273..a09b0308 100644 --- a/patches/api/0009-Replay-Mod-API.patch +++ b/patches/api/0009-Replay-Mod-API.patch @@ -14,10 +14,10 @@ index 9764fa643039f215627c20a33ca70c9e36b2d599..97e78e27ee0eea2c8b24886eeb19164d /.factorypath - diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java -index 30cebbf2e194c56450328a7dc04c92c81edce284..bdbfce47b1e04d0d1ddbbd75f41b7cc56154238f 100644 +index 5f6078bc80e20c9482a96d2bf1095bb32fbfc28c..d0a9b96f4ab200892d589a68b27585a08780f7ac 100644 --- a/src/main/java/org/bukkit/Bukkit.java +++ b/src/main/java/org/bukkit/Bukkit.java -@@ -2916,6 +2916,11 @@ public final class Bukkit { +@@ -2927,6 +2927,11 @@ public final class Bukkit { return server.getBotManager(); } // Leaves end - Bot API @@ -30,7 +30,7 @@ index 30cebbf2e194c56450328a7dc04c92c81edce284..bdbfce47b1e04d0d1ddbbd75f41b7cc5 @NotNull public static Server.Spigot spigot() { diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java -index 6fa638198f75458177af795f00250ce970591315..df914ed9db06414cd59279ae1b9226c1cf69f113 100644 +index 133ae299ba12e0da9c5fa252a06bbf4f2b7b9016..f752dbd0ed8a62cb2b7c812925dde645c3ecb85c 100644 --- a/src/main/java/org/bukkit/Server.java +++ b/src/main/java/org/bukkit/Server.java @@ -63,6 +63,7 @@ import org.jetbrains.annotations.Contract; @@ -41,7 +41,7 @@ index 6fa638198f75458177af795f00250ce970591315..df914ed9db06414cd59279ae1b9226c1 /** * Represents a server implementation. -@@ -2561,4 +2562,7 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi +@@ -2572,4 +2573,7 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi */ @NotNull BotManager getBotManager(); // Leaves end - Bot API diff --git a/patches/api/0010-Bytebuf-API.patch b/patches/api/0010-Bytebuf-API.patch index 3c015270..19268959 100644 --- a/patches/api/0010-Bytebuf-API.patch +++ b/patches/api/0010-Bytebuf-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Bytebuf API diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java -index bdbfce47b1e04d0d1ddbbd75f41b7cc56154238f..989bd5a0248b4fec9efbfc45b67871ede9a745bc 100644 +index d0a9b96f4ab200892d589a68b27585a08780f7ac..7fbd9d2b533e8791132ba6ac21fad83d704922a0 100644 --- a/src/main/java/org/bukkit/Bukkit.java +++ b/src/main/java/org/bukkit/Bukkit.java -@@ -2922,6 +2922,12 @@ public final class Bukkit { +@@ -2933,6 +2933,12 @@ public final class Bukkit { } // Leaves end - Photographer API @@ -22,10 +22,10 @@ index bdbfce47b1e04d0d1ddbbd75f41b7cc56154238f..989bd5a0248b4fec9efbfc45b67871ed public static Server.Spigot spigot() { return server.spigot(); diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java -index df914ed9db06414cd59279ae1b9226c1cf69f113..d00b9e5f76d93335371f4999f972ecfe6c22aa13 100644 +index f752dbd0ed8a62cb2b7c812925dde645c3ecb85c..90fbc5fb7b8936af365e8f4cbbd7bff6d1b4cf68 100644 --- a/src/main/java/org/bukkit/Server.java +++ b/src/main/java/org/bukkit/Server.java -@@ -2565,4 +2565,8 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi +@@ -2576,4 +2576,8 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi // Leaves start - Photographer API @NotNull PhotographerManager getPhotographerManager(); // Leaves end - Photographer API diff --git a/patches/server/0003-Delete-Timings.patch b/patches/server/0003-Delete-Timings.patch index 2825fcee..57618b4e 100644 --- a/patches/server/0003-Delete-Timings.patch +++ b/patches/server/0003-Delete-Timings.patch @@ -741,7 +741,7 @@ index 0c3c82b28e581286b798ee58ca4193efc2faff4a..fe6a5a6377bcb577b21471ae93639f8d // return true as command was handled return 1; diff --git a/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java b/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java -index 214ea75502d4abf9ebbc99a3811e4d2f8465227e..68c1fa35fccb98245dfb9f68ba14b1c16b13c5e1 100644 +index 690086adcb1f87adc0b3ab664fde735ad3e1093a..959160c5859733d4029278054d9c970130d93ab8 100644 --- a/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java +++ b/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java @@ -1,6 +1,5 @@ @@ -751,7 +751,7 @@ index 214ea75502d4abf9ebbc99a3811e4d2f8465227e..68c1fa35fccb98245dfb9f68ba14b1c1 import com.mojang.logging.LogUtils; import io.papermc.paper.configuration.constraint.Constraints; import io.papermc.paper.configuration.type.number.DoubleOr; -@@ -118,7 +117,6 @@ public class GlobalConfiguration extends ConfigurationPart { +@@ -119,7 +118,6 @@ public class GlobalConfiguration extends ConfigurationPart { @PostProcess private void postProcess() { @@ -1008,7 +1008,7 @@ index 0b4a70ebd312038d5b128c9e1f990666d1642a1a..a108ebfe472c908e86e0af2cfd9cb630 // Paper start if (waitableArray[0] != null) { diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java -index 1e0a6e5a3c907ab55ee6f2780a7d43bd455f2b7b..460e3c572884db5862a3f6101cf44d900d77e43b 100644 +index af8cb316ac169aa8d98a88765b85bb013b9ba961..50e79870db5424e47c9cb5f3866557008f580071 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java @@ -1,6 +1,5 @@ @@ -1136,7 +1136,7 @@ index dcb5651d1d9b10b40430fb2f713beedf68336704..68e445c21e0acbdf6bb74d50ddd32e0e gameprofilerfiller.pop(); gameprofilerfiller.pop(); diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index 2fe9d9b38c01d04416843fdd48d3e33899b7de63..af57e7aefc757be8ed9e2238e1e01973f57bf091 100644 +index c96f3dcd365bc140b1f4680ef6bd770c80f8eda1..2c509f2c5e6e6824392f1f90dde524ad2c0fc2cc 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -1,7 +1,6 @@ @@ -1331,7 +1331,7 @@ index 2fe9d9b38c01d04416843fdd48d3e33899b7de63..af57e7aefc757be8ed9e2238e1e01973 // Paper start - add close param if (close) { diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 43eeb8ce4bc350c2b524ade11ca25d8d4d21bea5..f9141e1997ef88ff5478d4a01b6bc719125631f2 100644 +index c13922d2fb1c15f895b14d4cb6d5379b59ea1ef8..9bb0dde8c3e6b3d17b3798a408658a8ffefd831f 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -1,6 +1,5 @@ @@ -1341,7 +1341,7 @@ index 43eeb8ce4bc350c2b524ade11ca25d8d4d21bea5..f9141e1997ef88ff5478d4a01b6bc719 import com.google.common.collect.Lists; import com.google.common.collect.Maps; import com.google.common.collect.Sets; -@@ -1190,7 +1189,6 @@ public abstract class PlayerList { +@@ -1199,7 +1198,6 @@ public abstract class PlayerList { public void saveAll(int interval) { io.papermc.paper.util.MCUtil.ensureMain("Save Players" , () -> { // Paper - Ensure main @@ -1349,7 +1349,7 @@ index 43eeb8ce4bc350c2b524ade11ca25d8d4d21bea5..f9141e1997ef88ff5478d4a01b6bc719 int numSaved = 0; long now = MinecraftServer.currentTick; for (int i = 0; i < this.players.size(); ++i) { -@@ -1201,7 +1199,6 @@ public abstract class PlayerList { +@@ -1210,7 +1208,6 @@ public abstract class PlayerList { } // Paper end - Incremental chunk and player saving } @@ -1386,7 +1386,7 @@ index cb61462d4691a055a4b25f7b953609d8a154fdfe..b2b97c4c61ea5b6f7ec199fabbd1bd1c return this != EntityType.PLAYER && this != EntityType.LLAMA_SPIT && this != EntityType.WITHER && this != EntityType.BAT && this != EntityType.ITEM_FRAME && this != EntityType.GLOW_ITEM_FRAME && this != EntityType.LEASH_KNOT && this != EntityType.PAINTING && this != EntityType.END_CRYSTAL && this != EntityType.EVOKER_FANGS; } diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index ccd9dff20a60f019e0c320acfb526b8bf3e5f806..d614e54f65a42360c827429ba647846bc6c27909 100644 +index 30f4f1254fc295442d72d50479e8af635f2fe983..a0f6d383b430c8e320f041fe2221943830b021eb 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -157,7 +157,6 @@ import org.bukkit.event.entity.EntityTeleportEvent; @@ -1539,10 +1539,10 @@ index e524b27d185da3e88668f8ef107517272860bd66..8205d34ed80781b2aab1fb2ef59986b9 } diff --git a/src/main/java/net/minecraft/world/level/block/Block.java b/src/main/java/net/minecraft/world/level/block/Block.java -index a7108b2be0746aa1f0e574d8c6f5ffad6d369835..3a68a32a359f13850262ac1ec07810053f806f7c 100644 +index 29947de9eb6887f2e61516523ff08d8b581b0f53..ae86e1edde015e2ff6cd10c31e0a6065708241af 100644 --- a/src/main/java/net/minecraft/world/level/block/Block.java +++ b/src/main/java/net/minecraft/world/level/block/Block.java -@@ -103,13 +103,6 @@ public class Block extends BlockBehaviour implements ItemLike { +@@ -102,13 +102,6 @@ public class Block extends BlockBehaviour implements ItemLike { this != Blocks.STRUCTURE_BLOCK && this != Blocks.JIGSAW; } @@ -1740,7 +1740,7 @@ index b3e1adeb932da9b3bed16acd94e2f16da48a7c72..e9798517b9211c50a20ea5c69603aab3 } } diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java -index 28dbe30a98a6730839949bc9a6a90b78619ff84d..152de3c943b478be9ff2f0a4541bababef7a8723 100644 +index f78744b6d6075f584d9a88612661854f3f04aed1..6cfecd797d3cd7f9ff84755eea6dea5888ecd4f9 100644 --- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java +++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java @@ -200,7 +200,6 @@ public final class CraftMagicNumbers implements UnsafeValues { diff --git a/patches/server/0005-Update-version-fetcher-repo.patch b/patches/server/0005-Update-version-fetcher-repo.patch index 4ffef381..1df0d5f6 100644 --- a/patches/server/0005-Update-version-fetcher-repo.patch +++ b/patches/server/0005-Update-version-fetcher-repo.patch @@ -27,10 +27,10 @@ index 532306cacd52579cdf37e4aca25887b1ed3ba6a1..917ffaae401f3374d07d7fb7c024234a if (data == null) { return null; diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java -index 46c038690a75a0bedcaf906b4c24b44add22d0fe..3926092cca4a27266bcbbc3bf54433f1a6e57ec3 100644 +index 6cfecd797d3cd7f9ff84755eea6dea5888ecd4f9..683a278b271bae086bf5997bc6b86ce593744734 100644 --- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java +++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java -@@ -486,7 +486,7 @@ public final class CraftMagicNumbers implements UnsafeValues { +@@ -482,7 +482,7 @@ public final class CraftMagicNumbers implements UnsafeValues { @Override public com.destroystokyo.paper.util.VersionFetcher getVersionFetcher() { diff --git a/patches/server/0006-Leaves-Server-Config-And-Command.patch b/patches/server/0006-Leaves-Server-Config-And-Command.patch index db93bda8..9384c033 100644 --- a/patches/server/0006-Leaves-Server-Config-And-Command.patch +++ b/patches/server/0006-Leaves-Server-Config-And-Command.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Leaves Server Config And Command diff --git a/build.gradle.kts b/build.gradle.kts -index cf8a410dedf26e48617ccad7e899edc26cf5f7c9..143f5bf36f550ccfa414dbbf9c00c9710798f66b 100644 +index ff37a984cdbf20d7f0d7b75c7f60a5d2c1e2b894..9179c02fcbd71bd4ca5dadef96770afaf33220f3 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -216,6 +216,14 @@ tasks.registerRunTask("runDevServer") { @@ -38,7 +38,7 @@ index a108ebfe472c908e86e0af2cfd9cb63083f58eb5..f97b2cb3ea855e6e250cabf357a050cd this.setPvpAllowed(dedicatedserverproperties.pvp); diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index f6de1c6e8fd9086b7bd725f75ee2606583591d6a..a45a6fa9a2338626ba0d08061f327d41ac457f14 100644 +index b7af2d4300facf41a025c8ca322bf6541949b3ab..2568bac002ee9835e1de6b2a2cbdbdbd6aea52da 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -1098,6 +1098,7 @@ public final class CraftServer implements Server { @@ -49,7 +49,7 @@ index f6de1c6e8fd9086b7bd725f75ee2606583591d6a..a45a6fa9a2338626ba0d08061f327d41 this.reloadData(); org.spigotmc.SpigotConfig.registerCommands(); // Spigot io.papermc.paper.command.PaperCommands.registerCommands(this.console); // Paper -@@ -2990,6 +2991,14 @@ public final class CraftServer implements Server { +@@ -2987,6 +2988,14 @@ public final class CraftServer implements Server { { return CraftServer.this.console.paperConfigurations.createLegacyObject(CraftServer.this.console); } @@ -85,7 +85,7 @@ index d97771ecaf06b92d92b5ca0224ae0866e36703a6..439305bb4f5ce232aa6237276c121d53 .withRequiredArg() diff --git a/src/main/java/org/leavesmc/leaves/LeavesConfig.java b/src/main/java/org/leavesmc/leaves/LeavesConfig.java new file mode 100644 -index 0000000000000000000000000000000000000000..10cf4d4aed544e0e0dd6698119734eb9e9cc92e2 +index 0000000000000000000000000000000000000000..57bd1c9b79f7be0a63ca9a3f9d1360fa6df16463 --- /dev/null +++ b/src/main/java/org/leavesmc/leaves/LeavesConfig.java @@ -0,0 +1,889 @@ @@ -973,7 +973,7 @@ index 0000000000000000000000000000000000000000..10cf4d4aed544e0e0dd6698119734eb9 + @GlobalConfig(name = "vanilla-hopper", category = "fix") + public static boolean vanillaHopper = false; + -+ @GlobalConfig(name = "spigot-EndPlatform-destroy", category = "fix") ++ @RemovedConfig(name = "spigot-EndPlatform-destroy", category = "fix") + public static boolean spigotEndPlatformDestroy = false; + + // Leaves end - region diff --git a/patches/server/0007-Leaves-Protocol-Core.patch b/patches/server/0007-Leaves-Protocol-Core.patch index 3f4a5b29..57df3f4e 100644 --- a/patches/server/0007-Leaves-Protocol-Core.patch +++ b/patches/server/0007-Leaves-Protocol-Core.patch @@ -60,10 +60,10 @@ index 0d362b80044f05e3c6cae9d0f3ab9af6349b5fed..7ce0fb36690e12f3f36c9a43e45ac718 ((Runnable) this.tickables.get(i)).run(); } diff --git a/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java -index b43f87ff4b9853b5d4bbea5ff9686d64d9d0d26b..01c2e26f92d5d1e46b98ebd20727beb779c98095 100644 +index 6998f32f8d79dbdb6b31ffaa126602fc4a428616..7bcadf3b793fd4c5d58e0e3e01a373b2e1a7a628 100644 --- a/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java -@@ -149,6 +149,11 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack +@@ -154,6 +154,11 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack @Override public void handleCustomPayload(ServerboundCustomPayloadPacket packet) { @@ -75,7 +75,7 @@ index b43f87ff4b9853b5d4bbea5ff9686d64d9d0d26b..01c2e26f92d5d1e46b98ebd20727beb7 // Paper start - Brand support if (packet.payload() instanceof net.minecraft.network.protocol.common.custom.BrandPayload brandPayload) { this.player.clientBrandName = brandPayload.brand(); -@@ -166,6 +171,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack +@@ -171,6 +176,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack String channels = payload.toString(com.google.common.base.Charsets.UTF_8); for (String channel : channels.split("\0")) { this.getCraftPlayer().addChannel(channel); @@ -84,7 +84,7 @@ index b43f87ff4b9853b5d4bbea5ff9686d64d9d0d26b..01c2e26f92d5d1e46b98ebd20727beb7 } catch (Exception ex) { ServerGamePacketListenerImpl.LOGGER.error("Couldn\'t register custom payload", ex); diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index f9141e1997ef88ff5478d4a01b6bc719125631f2..8ccd40b562691e757c7b5efa1497d93a95040a9a 100644 +index 9bb0dde8c3e6b3d17b3798a408658a8ffefd831f..e6a1942d44c589d6815824646b5517a5938385c3 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -349,6 +349,8 @@ public abstract class PlayerList { @@ -105,7 +105,7 @@ index f9141e1997ef88ff5478d4a01b6bc719125631f2..8ccd40b562691e757c7b5efa1497d93a ServerLevel worldserver = entityplayer.serverLevel(); diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index a02aafe76e1bd09e0f62a4b0bed648553ef92d47..7bd4373071204f13985e92bd64f6533cf43f39b5 100644 +index 2568bac002ee9835e1de6b2a2cbdbdbd6aea52da..275704db5b984584504749437e8ecdc60d4aa871 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -476,6 +476,7 @@ public final class CraftServer implements Server { diff --git a/patches/server/0010-Fakeplayer-support.patch b/patches/server/0010-Fakeplayer-support.patch index b8f0cef7..028a08a7 100644 --- a/patches/server/0010-Fakeplayer-support.patch +++ b/patches/server/0010-Fakeplayer-support.patch @@ -130,10 +130,10 @@ index f97b2cb3ea855e6e250cabf357a050cd52be8f70..4ac40259f31f3deef6b5fe4456576bbd org.spigotmc.SpigotConfig.init((java.io.File) this.options.valueOf("spigot-settings")); org.spigotmc.SpigotConfig.registerCommands(); diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java -index 460e3c572884db5862a3f6101cf44d900d77e43b..6d67546a1794db1eb3d80a94aa2e7386712106b2 100644 +index 50e79870db5424e47c9cb5f3866557008f580071..0451f7499121a53ce1bd13130581548f60b61996 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java -@@ -1267,6 +1267,13 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -1268,6 +1268,13 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider } } else if (this.seenBy.remove(player.connection)) { this.serverEntity.removePairing(player); @@ -148,7 +148,7 @@ index 460e3c572884db5862a3f6101cf44d900d77e43b..6d67546a1794db1eb3d80a94aa2e7386 } diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index b835b259d9e371ff18b1704249b290d1ecbe06e1..49e7d9bc75e029a8800f7369681e43efd14cd322 100644 +index b696d57fe7b250203671dd407571618f546f0c21..51668af88555fc0cca347f56b9aaafbed0d41b04 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -228,6 +228,7 @@ public class ServerLevel extends Level implements WorldGenLevel, ca.spottedleaf. @@ -205,7 +205,7 @@ index b835b259d9e371ff18b1704249b290d1ecbe06e1..49e7d9bc75e029a8800f7369681e43ef } diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 763cffdc2e1e2e7cc9af88cc46bbaa240a20fd0d..339e1552184fa8b7bf5baee4d482cdf859bbfb8b 100644 +index c396580a9cfd86ff261bed439bb4662ae88010b5..c2263ef7fb67db7c01bac7aecf218ee8cb7369cb 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java @@ -212,7 +212,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple @@ -256,7 +256,7 @@ index 763cffdc2e1e2e7cc9af88cc46bbaa240a20fd0d..339e1552184fa8b7bf5baee4d482cdf8 if (this.levitationStartPos != null) { CriteriaTriggers.LEVITATION.trigger(this, this.levitationStartPos, this.tickCount - this.levitationStartTime); } -@@ -1417,6 +1421,12 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple +@@ -1416,6 +1420,12 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple this.lastSentHealth = -1.0F; this.lastSentFood = -1; @@ -270,7 +270,7 @@ index 763cffdc2e1e2e7cc9af88cc46bbaa240a20fd0d..339e1552184fa8b7bf5baee4d482cdf8 PlayerChangedWorldEvent changeEvent = new PlayerChangedWorldEvent(this.getBukkitEntity(), worldserver1.getWorld()); this.level().getCraftServer().getPluginManager().callEvent(changeEvent); diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 8ccd40b562691e757c7b5efa1497d93a95040a9a..69f44d0351e8127e38cbe9e74c05b365c37b2c44 100644 +index e6a1942d44c589d6815824646b5517a5938385c3..e53e5011af49da4222f4c38e31f1500158c5a5a7 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -123,6 +123,8 @@ import org.bukkit.event.player.PlayerRespawnEvent.RespawnReason; @@ -302,7 +302,7 @@ index 8ccd40b562691e757c7b5efa1497d93a95040a9a..69f44d0351e8127e38cbe9e74c05b365 final net.kyori.adventure.text.Component jm = playerJoinEvent.joinMessage(); if (jm != null && !jm.equals(net.kyori.adventure.text.Component.empty())) { // Paper - Adventure -@@ -937,6 +952,12 @@ public abstract class PlayerList { +@@ -941,6 +956,12 @@ public abstract class PlayerList { } // Paper end - Add PlayerPostRespawnEvent @@ -315,7 +315,7 @@ index 8ccd40b562691e757c7b5efa1497d93a95040a9a..69f44d0351e8127e38cbe9e74c05b365 // CraftBukkit end return entityplayer1; -@@ -1069,11 +1090,16 @@ public abstract class PlayerList { +@@ -1078,11 +1099,16 @@ public abstract class PlayerList { } public String[] getPlayerNamesArray() { @@ -333,7 +333,7 @@ index 8ccd40b562691e757c7b5efa1497d93a95040a9a..69f44d0351e8127e38cbe9e74c05b365 return astring; } -@@ -1159,7 +1185,13 @@ public abstract class PlayerList { +@@ -1168,7 +1194,13 @@ public abstract class PlayerList { @Nullable public ServerPlayer getPlayerByName(String name) { @@ -348,7 +348,7 @@ index 8ccd40b562691e757c7b5efa1497d93a95040a9a..69f44d0351e8127e38cbe9e74c05b365 } public void broadcast(@Nullable net.minecraft.world.entity.player.Player player, double x, double y, double z, double distance, ResourceKey worldKey, Packet packet) { -@@ -1499,7 +1531,13 @@ public abstract class PlayerList { +@@ -1508,7 +1540,13 @@ public abstract class PlayerList { @Nullable public ServerPlayer getPlayer(UUID uuid) { @@ -364,7 +364,7 @@ index 8ccd40b562691e757c7b5efa1497d93a95040a9a..69f44d0351e8127e38cbe9e74c05b365 public boolean canBypassPlayerLimit(GameProfile profile) { diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 7d7258c56cfade2d82acdf83dfa20cd0416c0dab..1beefbd05c13181214e188f50e88fb67f6712a45 100644 +index a1946e6346a8d4afa0f7ebe69e7ac866432e08ab..cb67c961ad3a34fb58172c3f4176e82fadfe199e 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -1455,7 +1455,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess @@ -425,7 +425,7 @@ index 1223c5d23d0ea6aed068bdf0f5725e2ad49fc82c..0e00f59a8962dd6356d483ef5be3209a public int timeUntilHooked; public float fishAngle; diff --git a/src/main/java/net/minecraft/world/inventory/AbstractContainerMenu.java b/src/main/java/net/minecraft/world/inventory/AbstractContainerMenu.java -index 32910f677b0522ac8ec513fa0d00b714b52cfae4..961a7193fda00fa62acea9c39fda1c93f7fbe412 100644 +index dd4218e108f87f3305b76fbc8d88f488b447c609..9bb703f2af1f201772b5309a4d80b3fbe23a7201 100644 --- a/src/main/java/net/minecraft/world/inventory/AbstractContainerMenu.java +++ b/src/main/java/net/minecraft/world/inventory/AbstractContainerMenu.java @@ -406,6 +406,8 @@ public abstract class AbstractContainerMenu { @@ -490,7 +490,7 @@ index fee8367d2812db559b15970f0a60023bedaaefc5..f6b59b00bb1611aff8d161d1ad03df7f } diff --git a/src/main/java/net/minecraft/world/level/storage/PlayerDataStorage.java b/src/main/java/net/minecraft/world/level/storage/PlayerDataStorage.java -index 8ab7ca373a885fbe658013c9c6a2e38d32d77bb2..2262eaab7af5f1d7c37ef028479842c0fb45f3ee 100644 +index b148cf247acdd36f856d0495cde4cc5ad32b5a2f..011d6c813781251c7f4041ad3a8396fbde28ff75 100644 --- a/src/main/java/net/minecraft/world/level/storage/PlayerDataStorage.java +++ b/src/main/java/net/minecraft/world/level/storage/PlayerDataStorage.java @@ -21,7 +21,7 @@ import net.minecraft.world.entity.player.Player; @@ -503,7 +503,7 @@ index 8ab7ca373a885fbe658013c9c6a2e38d32d77bb2..2262eaab7af5f1d7c37ef028479842c0 private static final Logger LOGGER = LogUtils.getLogger(); private final File playerDir; diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index f2a0a1f32bf456c302e5d18b91367aa0c041cc6c..97d09246b5bab3fe85491d06c7b16f932bcd1cb2 100644 +index 275704db5b984584504749437e8ecdc60d4aa871..51365bf3a487725c79a8a3adae0821ced4f7abab 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -310,6 +310,7 @@ public final class CraftServer implements Server { @@ -531,7 +531,7 @@ index f2a0a1f32bf456c302e5d18b91367aa0c041cc6c..97d09246b5bab3fe85491d06c7b16f93 return false; } -@@ -3229,4 +3231,11 @@ public final class CraftServer implements Server { +@@ -3226,4 +3228,11 @@ public final class CraftServer implements Server { return this.potionBrewer; } // Paper end @@ -544,7 +544,7 @@ index f2a0a1f32bf456c302e5d18b91367aa0c041cc6c..97d09246b5bab3fe85491d06c7b16f93 + // Leaves end - Bot API } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 362ca138a5cd5ad19f1300015c2571794adc3649..7daa86bff793c040a10125e033b36fbd59a09a05 100644 +index cd3381d8225e0322b3e285b3c4aa0a1265a91cc0..9fbf9772b94cbead2567e3485e6e0e3f6fe57aa1 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -210,7 +210,7 @@ public class CraftWorld extends CraftRegionAccessor implements World { @@ -556,7 +556,7 @@ index 362ca138a5cd5ad19f1300015c2571794adc3649..7daa86bff793c040a10125e033b36fbd } @Override -@@ -1247,9 +1247,9 @@ public class CraftWorld extends CraftRegionAccessor implements World { +@@ -1252,9 +1252,9 @@ public class CraftWorld extends CraftRegionAccessor implements World { @Override public List getPlayers() { @@ -568,7 +568,7 @@ index 362ca138a5cd5ad19f1300015c2571794adc3649..7daa86bff793c040a10125e033b36fbd HumanEntity bukkitEntity = human.getBukkitEntity(); if ((bukkitEntity != null) && (bukkitEntity instanceof Player)) { -@@ -1934,7 +1934,7 @@ public class CraftWorld extends CraftRegionAccessor implements World { +@@ -1939,7 +1939,7 @@ public class CraftWorld extends CraftRegionAccessor implements World { public void playSound(final net.kyori.adventure.sound.Sound sound) { org.spigotmc.AsyncCatcher.catchOp("play sound"); // Paper final long seed = sound.seed().orElseGet(this.world.getRandom()::nextLong); @@ -577,7 +577,7 @@ index 362ca138a5cd5ad19f1300015c2571794adc3649..7daa86bff793c040a10125e033b36fbd player.connection.send(io.papermc.paper.adventure.PaperAdventure.asSoundPacket(sound, player.getX(), player.getY(), player.getZ(), seed, null)); } } -@@ -1950,7 +1950,7 @@ public class CraftWorld extends CraftRegionAccessor implements World { +@@ -1955,7 +1955,7 @@ public class CraftWorld extends CraftRegionAccessor implements World { org.spigotmc.AsyncCatcher.catchOp("play sound"); // Paper final long seed = sound.seed().orElseGet(this.getHandle().getRandom()::nextLong); if (emitter == net.kyori.adventure.sound.Sound.Emitter.self()) { @@ -586,7 +586,7 @@ index 362ca138a5cd5ad19f1300015c2571794adc3649..7daa86bff793c040a10125e033b36fbd player.connection.send(io.papermc.paper.adventure.PaperAdventure.asSoundPacket(sound, player, seed, null)); } } else if (emitter instanceof CraftEntity craftEntity) { -@@ -2171,7 +2171,7 @@ public class CraftWorld extends CraftRegionAccessor implements World { +@@ -2176,7 +2176,7 @@ public class CraftWorld extends CraftRegionAccessor implements World { Preconditions.checkArgument(particle.getDataType().isInstance(data), "data (%s) should be %s", data.getClass(), particle.getDataType()); } this.getHandle().sendParticles( @@ -609,10 +609,10 @@ index cd789c235acf740ec29c30b180e7fbe1a140caa9..9c3df47ae65289c27a1d63ac06ca41c0 if (entity instanceof EnderDragonPart complexPart) { if (complexPart.parentMob instanceof EnderDragon) { diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 8dd85b9ca3b3e3429de4d0ec0654982589c6e93e..de9f63fb3b8dcf11a9271794850ce448b020f14f 100644 +index 4632eb883e9f5efde520ee543bcad25827c0da2c..d710803137a325f34e0628405d5ddfd0bce16a95 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -@@ -1025,7 +1025,10 @@ public class CraftEventFactory { +@@ -1027,7 +1027,10 @@ public class CraftEventFactory { event.setKeepInventory(keepInventory); event.setKeepLevel(victim.keepLevel); // SPIGOT-2222: pre-set keepLevel populateFields(victim, event); // Paper - make cancellable diff --git a/patches/server/0013-Add-isShrink-to-EntityResurrectEvent.patch b/patches/server/0013-Add-isShrink-to-EntityResurrectEvent.patch index e80f75b6..70581d77 100644 --- a/patches/server/0013-Add-isShrink-to-EntityResurrectEvent.patch +++ b/patches/server/0013-Add-isShrink-to-EntityResurrectEvent.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add isShrink to EntityResurrectEvent diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 428b42c2ac49cce7d4d99abaf6518c771d19117e..11c3fa7e974ff57f29d237b5b0f9eb3854497a44 100644 +index a0f6d383b430c8e320f041fe2221943830b021eb..98df8261434739e3648b4b1e473606921c9a27c6 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -1662,12 +1662,12 @@ public abstract class LivingEntity extends Entity implements Attackable { @@ -23,7 +23,7 @@ index 428b42c2ac49cce7d4d99abaf6518c771d19117e..11c3fa7e974ff57f29d237b5b0f9eb38 itemstack1.shrink(1); } if (itemstack != null && this instanceof ServerPlayer) { -@@ -4663,3 +4663,4 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -4666,3 +4666,4 @@ public abstract class LivingEntity extends Entity implements Attackable { } } diff --git a/patches/server/0014-Budding-Amethyst-can-push-by-piston.patch b/patches/server/0014-Budding-Amethyst-can-push-by-piston.patch index 2d80c264..fae4770d 100644 --- a/patches/server/0014-Budding-Amethyst-can-push-by-piston.patch +++ b/patches/server/0014-Budding-Amethyst-can-push-by-piston.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Budding Amethyst can push by piston diff --git a/src/main/java/net/minecraft/world/level/block/Block.java b/src/main/java/net/minecraft/world/level/block/Block.java -index 3a68a32a359f13850262ac1ec07810053f806f7c..997280cd6131b14396d6fb37c293a6d4cc118412 100644 +index ae86e1edde015e2ff6cd10c31e0a6065708241af..7130209f48c488e2d184f31335f0511735963c55 100644 --- a/src/main/java/net/minecraft/world/level/block/Block.java +++ b/src/main/java/net/minecraft/world/level/block/Block.java -@@ -589,6 +589,12 @@ public class Block extends BlockBehaviour implements ItemLike { +@@ -588,6 +588,12 @@ public class Block extends BlockBehaviour implements ItemLike { } // Spigot end diff --git a/patches/server/0018-No-chat-sign.patch b/patches/server/0018-No-chat-sign.patch index 909c01fe..d548085b 100644 --- a/patches/server/0018-No-chat-sign.patch +++ b/patches/server/0018-No-chat-sign.patch @@ -120,10 +120,10 @@ index 4ac40259f31f3deef6b5fe4456576bbd44cc2569..e45acea31d61462c877c902b238209f1 } diff --git a/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java -index 01c2e26f92d5d1e46b98ebd20727beb779c98095..ced6a08caf546e245bd6a631df3dc9f8085ed871 100644 +index 7bcadf3b793fd4c5d58e0e3e01a373b2e1a7a628..427dede2feca3350c45c4e70fe8efcbb2e6525c3 100644 --- a/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java -@@ -296,10 +296,24 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack +@@ -301,10 +301,24 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack } public void send(Packet packet) { @@ -149,10 +149,10 @@ index 01c2e26f92d5d1e46b98ebd20727beb779c98095..ced6a08caf546e245bd6a631df3dc9f8 if (packet == null || this.processedDisconnect) { // Spigot return; diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 69f44d0351e8127e38cbe9e74c05b365c37b2c44..8ea03896e1d7f247d484628ec787d8a4f4488664 100644 +index e53e5011af49da4222f4c38e31f1500158c5a5a7..b690a584c156c5d1a7b8818e73a8e616fb373ce5 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java -@@ -1446,7 +1446,7 @@ public abstract class PlayerList { +@@ -1455,7 +1455,7 @@ public abstract class PlayerList { } public boolean verifyChatTrusted(PlayerChatMessage message) { // Paper - private -> public diff --git a/patches/server/0028-Remove-streams-and-iterators-from-range-check.patch b/patches/server/0028-Remove-streams-and-iterators-from-range-check.patch index 920ebd4f..35db91a9 100644 --- a/patches/server/0028-Remove-streams-and-iterators-from-range-check.patch +++ b/patches/server/0028-Remove-streams-and-iterators-from-range-check.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Remove streams and iterators from range check This patch is Powered by Pufferfish(https://github.com/pufferfish-gg/Pufferfish) diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java -index 14494e49cdd9d07be125823b07731d04768a64b3..5fe7ae8b873f71a0caf886e6036a4f58c835c4c2 100644 +index 0451f7499121a53ce1bd13130581548f60b61996..e0650881a3f90532fc446607cf5ae34da4a2a1dc 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java -@@ -1283,19 +1283,45 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -1284,19 +1284,45 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider return ChunkMap.this.level.getServer().getScaledTrackingDistance(initialDistance); } diff --git a/patches/server/0034-BBOR-Protocol.patch b/patches/server/0034-BBOR-Protocol.patch index 0ba5fbc8..baac864b 100644 --- a/patches/server/0034-BBOR-Protocol.patch +++ b/patches/server/0034-BBOR-Protocol.patch @@ -5,10 +5,10 @@ Subject: [PATCH] BBOR Protocol diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 8ea03896e1d7f247d484628ec787d8a4f4488664..db71de592d157a2fd84ab821dd5ca54a60418769 100644 +index b690a584c156c5d1a7b8818e73a8e616fb373ce5..2fc4d42619611a2724aff9bc114c9118212ad974 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java -@@ -1586,6 +1586,7 @@ public abstract class PlayerList { +@@ -1595,6 +1595,7 @@ public abstract class PlayerList { entityplayer.getRecipeBook().sendInitialRecipeBook(entityplayer); } diff --git a/patches/server/0035-PCA-sync-protocol.patch b/patches/server/0035-PCA-sync-protocol.patch index 7f5279a1..1963ba1b 100644 --- a/patches/server/0035-PCA-sync-protocol.patch +++ b/patches/server/0035-PCA-sync-protocol.patch @@ -22,10 +22,10 @@ index 1f5ed236fb7c0c1b0181675747d25d233f534284..08559ff5409d362bc674f63d6e46ced6 this.syncSaddleToClients(); diff --git a/src/main/java/net/minecraft/world/entity/npc/AbstractVillager.java b/src/main/java/net/minecraft/world/entity/npc/AbstractVillager.java -index 49b35fab8ee98a384ee12d36bbe2ac813342f1d6..915b44434eebdd200bef38b4e5e8fcdf5cdcf5ad 100644 +index d28ebcae036168dd65a5f3236d12ee416308c23f..ebdb1546fb057bf4881d53538f8e44c14fe88b74 100644 --- a/src/main/java/net/minecraft/world/entity/npc/AbstractVillager.java +++ b/src/main/java/net/minecraft/world/entity/npc/AbstractVillager.java -@@ -71,6 +71,15 @@ public abstract class AbstractVillager extends AgeableMob implements InventoryCa +@@ -69,6 +69,15 @@ public abstract class AbstractVillager extends AgeableMob implements InventoryCa super(type, world); this.setPathfindingMalus(PathType.DANGER_FIRE, 16.0F); this.setPathfindingMalus(PathType.DAMAGE_FIRE, -1.0F); diff --git a/patches/server/0037-Alternative-block-placement-Protocol.patch b/patches/server/0037-Alternative-block-placement-Protocol.patch index 5da551c3..32bff813 100644 --- a/patches/server/0037-Alternative-block-placement-Protocol.patch +++ b/patches/server/0037-Alternative-block-placement-Protocol.patch @@ -63,10 +63,10 @@ index f8f909ebdad5e96379e8bd8c610164ef0697368e..0b761f3ae15ad4a3b8152f497a604032 if (iblockdata2 != null && this.canPlace(world, iblockdata2, blockposition)) { iblockdata1 = iblockdata2; diff --git a/src/main/java/net/minecraft/world/level/block/Block.java b/src/main/java/net/minecraft/world/level/block/Block.java -index 997280cd6131b14396d6fb37c293a6d4cc118412..9740426bbe54e23d833cf93346de344ff089168b 100644 +index 7130209f48c488e2d184f31335f0511735963c55..0c31c53b1512f0c47a525eff04c1b783cb782fd3 100644 --- a/src/main/java/net/minecraft/world/level/block/Block.java +++ b/src/main/java/net/minecraft/world/level/block/Block.java -@@ -412,6 +412,33 @@ public class Block extends BlockBehaviour implements ItemLike { +@@ -411,6 +411,33 @@ public class Block extends BlockBehaviour implements ItemLike { public void stepOn(Level world, BlockPos pos, BlockState state, Entity entity) {} diff --git a/patches/server/0038-Player-operation-limiter.patch b/patches/server/0038-Player-operation-limiter.patch index 886c0899..440e1e99 100644 --- a/patches/server/0038-Player-operation-limiter.patch +++ b/patches/server/0038-Player-operation-limiter.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Player operation limiter This patch is Powered by plusls-carpet-addition(https://github.com/plusls/plusls-carpet-addition) diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 339e1552184fa8b7bf5baee4d482cdf859bbfb8b..aace0e975b2f7eb8a994f086d3358f6419c71c58 100644 +index c2263ef7fb67db7c01bac7aecf218ee8cb7369cb..b4ddddc0bf56ef1993d5db5727287cbeb19e6e53 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java @@ -302,6 +302,10 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple @@ -28,7 +28,7 @@ index 339e1552184fa8b7bf5baee4d482cdf859bbfb8b..aace0e975b2f7eb8a994f086d3358f64 this.gameMode.tick(); this.wardenSpawnTracker.tick(); --this.spawnInvulnerableTime; -@@ -2952,5 +2957,32 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple +@@ -2955,5 +2960,32 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple public CraftPlayer getBukkitEntity() { return (CraftPlayer) super.getBukkitEntity(); } @@ -62,7 +62,7 @@ index 339e1552184fa8b7bf5baee4d482cdf859bbfb8b..aace0e975b2f7eb8a994f086d3358f64 // CraftBukkit end } diff --git a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java -index cc01ead133cc6859ca5d7a1d0ac3c12955e590da..dea6b2cb7df6a9bb23cc56b0f97eaad9209c6527 100644 +index ee9e4521079137d7b72194e8789810e7a89b8e75..171c2c2fe69e48a3b73348ee73e47417b80dec23 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java @@ -339,6 +339,19 @@ public class ServerPlayerGameMode { diff --git a/patches/server/0040-Stackable-ShulkerBoxes.patch b/patches/server/0040-Stackable-ShulkerBoxes.patch index 4d88dedc..e1fecb5f 100644 --- a/patches/server/0040-Stackable-ShulkerBoxes.patch +++ b/patches/server/0040-Stackable-ShulkerBoxes.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Stackable ShulkerBoxes This patch is Powered by fabric-carpet(https://github.com/gnembon/fabric-carpet) and plusls-carpet-addition(https://github.com/plusls/plusls-carpet-addition) diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 60ff21c8df4168f14da04a12073bde47cd4693c4..29499366e2a76b1b676cba49c7903e2f0e2e8faf 100644 +index fcccf989c25f0a259b160c4ff7873f7009e64d14..af8a2b3b37aba58cb402040e178c46f53aa3e93d 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -3308,7 +3308,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -3407,7 +3407,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl } boolean flag1 = packet.slotNum() >= 1 && packet.slotNum() <= 45; @@ -167,10 +167,10 @@ index eb11482f48c9f330b7fa62a278fd6f07d3a642e1..8631f3a5ce5aa24f195d5031dad6d289 if (this.add(i, stack.split(j)) && notifiesClient && this.player instanceof ServerPlayer) { ((ServerPlayer) this.player).connection.send(new ClientboundContainerSetSlotPacket(-2, 0, i, this.getItem(i))); diff --git a/src/main/java/net/minecraft/world/entity/vehicle/ContainerEntity.java b/src/main/java/net/minecraft/world/entity/vehicle/ContainerEntity.java -index 845eff7401b811c179dc9dee70eca0d724be5c80..c88b98bd4ebec40649b9cfcf47ca20359ea2fb52 100644 +index 9fdeaaa67a39b7b4bd2ac8f58dd38b87c6540e3e..a0cb30bb04742a8ae4a9c4c8e17707e4530b40ed 100644 --- a/src/main/java/net/minecraft/world/entity/vehicle/ContainerEntity.java +++ b/src/main/java/net/minecraft/world/entity/vehicle/ContainerEntity.java -@@ -162,7 +162,7 @@ public interface ContainerEntity extends Container, MenuProvider { +@@ -166,7 +166,7 @@ public interface ContainerEntity extends Container, MenuProvider { default void setChestVehicleItem(int slot, ItemStack stack) { this.unpackChestVehicleLootTable(null); this.getItemStacks().set(slot, stack); @@ -180,7 +180,7 @@ index 845eff7401b811c179dc9dee70eca0d724be5c80..c88b98bd4ebec40649b9cfcf47ca2035 default SlotAccess getChestVehicleSlot(int slot) { diff --git a/src/main/java/net/minecraft/world/inventory/AbstractContainerMenu.java b/src/main/java/net/minecraft/world/inventory/AbstractContainerMenu.java -index 961a7193fda00fa62acea9c39fda1c93f7fbe412..11bb1168f27a3a95b5e88f106e070a482702d50d 100644 +index 9bb703f2af1f201772b5309a4d80b3fbe23a7201..ac9f80727e973b5303e4494310fbcb78203d9102 100644 --- a/src/main/java/net/minecraft/world/inventory/AbstractContainerMenu.java +++ b/src/main/java/net/minecraft/world/inventory/AbstractContainerMenu.java @@ -456,7 +456,7 @@ public abstract class AbstractContainerMenu { @@ -278,7 +278,7 @@ index c39c773112fb8b534b926f2f2b47fe6fbb69fcb2..ae9338b8a5598e7a257b469adae72858 @Nullable diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index b6a2f3e4f22f36e75a1630bd456c2f471edbb398..4a790406e8031feba3b8bdc6e2fb9d17d1a7fbff 100644 +index eec0ec43590be7e8ae5b530a7404c98b5e23cb53..2a2b9631a16c16f41261b7e042acd14d600df230 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java @@ -225,7 +225,7 @@ public final class ItemStack implements DataComponentHolder { @@ -337,7 +337,7 @@ index 9ad4600ebee09d81b1785103ad17de47cf1f2ede..7092a4d4a583f4e01cc02bca17f3bd1b this.cookingTotalTime = AbstractFurnaceBlockEntity.getTotalCookTime(this.level, this.recipeType, this, this.cookSpeedMultiplier); // Paper - cook speed multiplier API this.cookingProgress = 0; diff --git a/src/main/java/net/minecraft/world/level/block/entity/BaseContainerBlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/BaseContainerBlockEntity.java -index 15fd1fe1b55b6421d2c09e8385c9f69fa0152e56..f9b8604470e5d50448b83cdcb33ec826e9944857 100644 +index 2ddf349fde5b310ec3f74baee1f3d33e09d5286c..76d85d7a34888731c083d33be906205576fed840 100644 --- a/src/main/java/net/minecraft/world/level/block/entity/BaseContainerBlockEntity.java +++ b/src/main/java/net/minecraft/world/level/block/entity/BaseContainerBlockEntity.java @@ -158,7 +158,7 @@ public abstract class BaseContainerBlockEntity extends BlockEntity implements Co diff --git a/patches/server/0042-MC-Technical-Survival-Mode.patch b/patches/server/0042-MC-Technical-Survival-Mode.patch index 9e58f497..f54a171a 100644 --- a/patches/server/0042-MC-Technical-Survival-Mode.patch +++ b/patches/server/0042-MC-Technical-Survival-Mode.patch @@ -27,10 +27,10 @@ index 8fe9a0bf5a6c27d8a505afc2f51b3dccc905423b..979d70561c1a3b9b539f413ba689a89a } return player.displayName(); diff --git a/src/main/java/io/papermc/paper/configuration/PaperConfigurations.java b/src/main/java/io/papermc/paper/configuration/PaperConfigurations.java -index 783eac6e458c6f1a0584301fb84a2fe341868f34..fab68378705def88f4bf9d243747ac3420fe8b31 100644 +index 1029b6de6f36b08bf634b4056ef5701383f6f258..64bb056d409c19eca724caa8512e6a597623170e 100644 --- a/src/main/java/io/papermc/paper/configuration/PaperConfigurations.java +++ b/src/main/java/io/papermc/paper/configuration/PaperConfigurations.java -@@ -317,6 +317,7 @@ public class PaperConfigurations extends Configurations list) { // CraftBukkit - return boolean diff --git a/patches/server/0077-Cache-BlockStatePairKey-hash.patch b/patches/server/0077-Cache-BlockStatePairKey-hash.patch index a66f8d16..462ba53b 100644 --- a/patches/server/0077-Cache-BlockStatePairKey-hash.patch +++ b/patches/server/0077-Cache-BlockStatePairKey-hash.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Cache BlockStatePairKey hash This patch is Powered by Gale(https://github.com/GaleMC/Gale) diff --git a/src/main/java/net/minecraft/world/level/block/Block.java b/src/main/java/net/minecraft/world/level/block/Block.java -index 9740426bbe54e23d833cf93346de344ff089168b..ad79aab6b9c2cb6636f86225fb7f68858c3b8d53 100644 +index 0c31c53b1512f0c47a525eff04c1b783cb782fd3..e09b35bfed9880ea6c8168ff6099f1a1a5fb6527 100644 --- a/src/main/java/net/minecraft/world/level/block/Block.java +++ b/src/main/java/net/minecraft/world/level/block/Block.java -@@ -627,11 +627,18 @@ public class Block extends BlockBehaviour implements ItemLike { +@@ -626,11 +626,18 @@ public class Block extends BlockBehaviour implements ItemLike { private final BlockState first; private final BlockState second; private final Direction direction; @@ -28,7 +28,7 @@ index 9740426bbe54e23d833cf93346de344ff089168b..ad79aab6b9c2cb6636f86225fb7f6885 } public boolean equals(Object object) { -@@ -647,11 +654,17 @@ public class Block extends BlockBehaviour implements ItemLike { +@@ -646,11 +653,17 @@ public class Block extends BlockBehaviour implements ItemLike { } public int hashCode() { diff --git a/patches/server/0079-Disable-packet-limit.patch b/patches/server/0079-Disable-packet-limit.patch index d7582fb5..748c7861 100644 --- a/patches/server/0079-Disable-packet-limit.patch +++ b/patches/server/0079-Disable-packet-limit.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Disable packet limit diff --git a/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java b/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java -index 68c1fa35fccb98245dfb9f68ba14b1c16b13c5e1..0bdc0750b1950ae7405aa962dc6627b66c53dfe0 100644 +index 959160c5859733d4029278054d9c970130d93ab8..239b180914547aa800406cfe19519f5153b3c9ef 100644 --- a/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java +++ b/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java -@@ -275,7 +275,7 @@ public class GlobalConfiguration extends ConfigurationPart { +@@ -276,7 +276,7 @@ public class GlobalConfiguration extends ConfigurationPart { } public boolean isEnabled() { diff --git a/patches/server/0080-Reduce-array-allocations.patch b/patches/server/0080-Reduce-array-allocations.patch index 7dd067b7..cea7e484 100644 --- a/patches/server/0080-Reduce-array-allocations.patch +++ b/patches/server/0080-Reduce-array-allocations.patch @@ -52,7 +52,7 @@ index fcfbca333234c09f7c056bbfcd9ac8860b20a8db..18503ef068924d4be4d40390af8db70d public static int getLocationKey(final int x, final int y, final int z) { diff --git a/src/main/java/ca/spottedleaf/moonrise/patches/chunk_system/level/entity/ChunkEntitySlices.java b/src/main/java/ca/spottedleaf/moonrise/patches/chunk_system/level/entity/ChunkEntitySlices.java -index 87d2b3ec165e2e9e4bdbedd7adddaa2130ed507b..aa17f322c6d5bfcada09d32f67f5df8f13f579ca 100644 +index 5c7f2471a0b15ac2e714527296ad2aa7291999eb..56ca2488154bd5f064c0a97bf778dc07da4a0662 100644 --- a/src/main/java/ca/spottedleaf/moonrise/patches/chunk_system/level/entity/ChunkEntitySlices.java +++ b/src/main/java/ca/spottedleaf/moonrise/patches/chunk_system/level/entity/ChunkEntitySlices.java @@ -27,6 +27,7 @@ import java.util.Iterator; @@ -218,7 +218,7 @@ index 0846e11c82295ccf93683f877962ec7804dad677..b747b3858befe48996ea707cf126f6f8 for (int j = 0; j < i; ++j) { diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index 542531451c63392262fa81ec62ff7143e455e04c..64b63fe65f12d21e589c946c76e54f8f9fc8aeef 100644 +index 618ff4d64d5bbebe5b73a575ec52ee17a4392c42..ede3a1466b411b331a837f423ef48a925bf7e44e 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -181,6 +181,7 @@ import org.bukkit.event.server.MapInitializeEvent; @@ -230,7 +230,7 @@ index 542531451c63392262fa81ec62ff7143e455e04c..64b63fe65f12d21e589c946c76e54f8f public class ServerLevel extends Level implements WorldGenLevel, ca.spottedleaf.moonrise.patches.chunk_system.level.ChunkSystemServerLevel, ca.spottedleaf.moonrise.patches.chunk_system.level.ChunkSystemLevelReader { // Paper - rewrite chunk system diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index e3b150807c04a487b9165f71ba9923e17568ba61..bfaec4b4dbe74b09e4c4e56268e38ce475304796 100644 +index 96594a76f4c6756214feec62f8e3ecb656493ae6..2e08a927f9c3c4a4cfcad16b7a835b80efefdfca 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -249,6 +249,7 @@ import org.bukkit.inventory.EquipmentSlot; @@ -241,7 +241,7 @@ index e3b150807c04a487b9165f71ba9923e17568ba61..bfaec4b4dbe74b09e4c4e56268e38ce4 public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl implements ServerGamePacketListener, ServerPlayerConnection, TickablePacketListener { -@@ -772,7 +773,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -806,7 +807,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl // Paper start final int index; if (packet.getCommand().length() > 64 && ((index = packet.getCommand().indexOf(' ')) == -1 || index >= 64)) { @@ -251,7 +251,7 @@ index e3b150807c04a487b9165f71ba9923e17568ba61..bfaec4b4dbe74b09e4c4e56268e38ce4 } // Paper end diff --git a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java -index b0f7a378f19b9837c060c891002cd5db756cdae1..8b13bd7aec76f30c5b5920758393066540798ab3 100644 +index 40638b439966619e9c70a18a32abd95b2178fe9f..153e918f1059bb09ad074eb06bbdbbdc6f673b05 100644 --- a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java @@ -51,6 +51,7 @@ import org.bukkit.craftbukkit.entity.CraftPlayer; @@ -262,7 +262,7 @@ index b0f7a378f19b9837c060c891002cd5db756cdae1..8b13bd7aec76f30c5b59207583930665 public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, TickablePacketListener, CraftPlayer.TransferCookieConnection { -@@ -167,12 +168,12 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, +@@ -172,12 +173,12 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, @Override public void handleHello(ServerboundHelloPacket packet) { @@ -277,7 +277,7 @@ index b0f7a378f19b9837c060c891002cd5db756cdae1..8b13bd7aec76f30c5b59207583930665 } // Paper end - Validate usernames this.requestedUsername = packet.name(); -@@ -270,7 +271,7 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, +@@ -275,7 +276,7 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, @Override public void handleKey(ServerboundKeyPacket packet) { @@ -287,10 +287,10 @@ index b0f7a378f19b9837c060c891002cd5db756cdae1..8b13bd7aec76f30c5b59207583930665 final String s; diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 6573da85f0bd62759bd80cd50403ecc76911bb81..103d9c9132fc8ed8fe590cd66a348c048432de34 100644 +index 0ba56ea6ca96cd7adb47dad756c8ed2972a2d587..875f88b62d62cc94b1ec09f9cedefc2722ddb5cc 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java -@@ -946,13 +946,9 @@ public abstract class PlayerList { +@@ -950,13 +950,9 @@ public abstract class PlayerList { final ResourceKey OVERWORLD = Level.OVERWORLD; final ResourceKey THE_NETHER = Level.NETHER; if (!((fromDim != OVERWORLD || toDim != THE_NETHER) && (fromDim != THE_NETHER || toDim != OVERWORLD))) { @@ -357,7 +357,7 @@ index 2fa2a4eef21e786f738f36616c3160defa95bce8..36c98f611f043ebadffd1b110ba3002b private EquipmentSlot(final EquipmentSlot.Type type, final int entityId, final int maxCount, final int armorStandId, final String name) { this.type = type; diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 31504985a81b48dab5d999310019dbdb191eb2d5..af8f8161b940afb1b77dee7cc2711e42738a6bed 100644 +index ec5ac957bd463496a1d82e22db10be7d1b2de2dd..6d6bca222e5c9d676fc5416fb7f14036f0d87deb 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -3280,7 +3280,7 @@ public abstract class LivingEntity extends Entity implements Attackable { @@ -370,10 +370,10 @@ index 31504985a81b48dab5d999310019dbdb191eb2d5..af8f8161b940afb1b77dee7cc2711e42 for (int j = 0; j < i; ++j) { diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java -index 9f2ef5ea9f380e78d4a150df9f16ff6bfc398b75..33de05de648c88539a4792c63a903102f0faa7b2 100644 +index 32a039bc4a99cb9b5db5c3a0e596f1b67a3c8738..69d37babce0b8d38d24abe9664bc0a8be8982820 100644 --- a/src/main/java/net/minecraft/world/entity/Mob.java +++ b/src/main/java/net/minecraft/world/entity/Mob.java -@@ -1150,7 +1150,7 @@ public abstract class Mob extends LivingEntity implements EquipmentUser, Leashab +@@ -1154,7 +1154,7 @@ public abstract class Mob extends LivingEntity implements EquipmentUser, Leashab @Override protected void dropCustomDeathLoot(ServerLevel world, DamageSource source, boolean causedByPlayer) { super.dropCustomDeathLoot(world, source, causedByPlayer); @@ -382,7 +382,7 @@ index 9f2ef5ea9f380e78d4a150df9f16ff6bfc398b75..33de05de648c88539a4792c63a903102 int i = aenumitemslot.length; for (int j = 0; j < i; ++j) { -@@ -1280,7 +1280,7 @@ public abstract class Mob extends LivingEntity implements EquipmentUser, Leashab +@@ -1284,7 +1284,7 @@ public abstract class Mob extends LivingEntity implements EquipmentUser, Leashab } boolean flag = true; @@ -391,7 +391,7 @@ index 9f2ef5ea9f380e78d4a150df9f16ff6bfc398b75..33de05de648c88539a4792c63a903102 int j = aenumitemslot.length; for (int k = 0; k < j; ++k) { -@@ -1365,7 +1365,7 @@ public abstract class Mob extends LivingEntity implements EquipmentUser, Leashab +@@ -1369,7 +1369,7 @@ public abstract class Mob extends LivingEntity implements EquipmentUser, Leashab protected void populateDefaultEquipmentEnchantments(ServerLevelAccessor world, RandomSource random, DifficultyInstance localDifficulty) { this.enchantSpawnedWeapon(world, random, localDifficulty); @@ -400,7 +400,7 @@ index 9f2ef5ea9f380e78d4a150df9f16ff6bfc398b75..33de05de648c88539a4792c63a903102 int i = aenumitemslot.length; for (int j = 0; j < i; ++j) { -@@ -1570,7 +1570,7 @@ public abstract class Mob extends LivingEntity implements EquipmentUser, Leashab +@@ -1574,7 +1574,7 @@ public abstract class Mob extends LivingEntity implements EquipmentUser, Leashab t0.setInvulnerable(this.isInvulnerable()); if (flag) { t0.setCanPickUpLoot(this.canPickUpLoot()); diff --git a/patches/server/0081-Optimize-sun-burn-tick.patch b/patches/server/0081-Optimize-sun-burn-tick.patch index 2db3c4da..a8b3fc6c 100644 --- a/patches/server/0081-Optimize-sun-burn-tick.patch +++ b/patches/server/0081-Optimize-sun-burn-tick.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Optimize sun burn tick This patch is Powered by Gale(https://github.com/GaleMC/Gale) diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 5a882339c89e55f29369ee013babf89afc5194ce..e5ead8e57e8c527e0906816b741db20b346880d1 100644 +index 0c4c7d6145e46077b2ae56aafe6688d7c2496d3a..837c89bfecdadecb05598bc4c7fd058012188688 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -2078,8 +2078,22 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess @@ -34,10 +34,10 @@ index 5a882339c89e55f29369ee013babf89afc5194ce..e5ead8e57e8c527e0906816b741db20b public void absMoveTo(double x, double y, double z, float yaw, float pitch) { this.absMoveTo(x, y, z); diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java -index 33de05de648c88539a4792c63a903102f0faa7b2..9ad75d9ef0cc8c9faa81c5c674ab7dbba4f6f471 100644 +index 69d37babce0b8d38d24abe9664bc0a8be8982820..cff93b927757cbf39d2a574b4f79ccc19280a62e 100644 --- a/src/main/java/net/minecraft/world/entity/Mob.java +++ b/src/main/java/net/minecraft/world/entity/Mob.java -@@ -1750,15 +1750,41 @@ public abstract class Mob extends LivingEntity implements EquipmentUser, Leashab +@@ -1754,15 +1754,41 @@ public abstract class Mob extends LivingEntity implements EquipmentUser, Leashab protected void playAttackSound() {} diff --git a/patches/server/0094-Force-peaceful-mode-switch.patch b/patches/server/0094-Force-peaceful-mode-switch.patch index e2bee6f8..8f0319a1 100644 --- a/patches/server/0094-Force-peaceful-mode-switch.patch +++ b/patches/server/0094-Force-peaceful-mode-switch.patch @@ -99,12 +99,12 @@ index 7cb97b7623b603aa5469c92f5a6816673c994540..adc3169fb375f03c532d0abdaf336bab boolean spawnThisTick = true; int limit = enumcreaturetype.getMaxInstancesPerChunk(); diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 7daa86bff793c040a10125e033b36fbd59a09a05..3c019e6d4af27a4305acb6640dc9a86d443101d9 100644 +index 9fbf9772b94cbead2567e3485e6e0e3f6fe57aa1..416772fdcbab1a47230cc158ea59c26aaedfbee8 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -@@ -2372,6 +2372,18 @@ public class CraftWorld extends CraftRegionAccessor implements World { - return CraftFeatureFlag.getFromNMS(this.getHandle().enabledFeatures()).stream().map(FeatureFlag.class::cast).collect(Collectors.toUnmodifiableSet()); - } +@@ -2374,6 +2374,18 @@ public class CraftWorld extends CraftRegionAccessor implements World { + + // Paper - replace feature flag API + // Leaves start - unsupported settings + @Override diff --git a/patches/server/0095-Replay-Mod-API.patch b/patches/server/0095-Replay-Mod-API.patch index bdcdbe22..edc38fd5 100644 --- a/patches/server/0095-Replay-Mod-API.patch +++ b/patches/server/0095-Replay-Mod-API.patch @@ -19,7 +19,7 @@ index 0724bd95143cb5dc69b5f1eb2e67ecd679e09a99..e1d66ac593c6da954ef02def16601dc4 } // Leaves end - skip bot diff --git a/src/main/java/net/minecraft/commands/arguments/EntityArgument.java b/src/main/java/net/minecraft/commands/arguments/EntityArgument.java -index 208b56fff4925cad8d4e0bc843c07372fad034c8..4ab562d9fb6d255c5512ed097cae6fd7e0e706aa 100644 +index 716d37ea7c398c4f15f362c7759daca9d3fe32cb..2b586b222bdeddfb5a6a746fa4e60501fb73e847 100644 --- a/src/main/java/net/minecraft/commands/arguments/EntityArgument.java +++ b/src/main/java/net/minecraft/commands/arguments/EntityArgument.java @@ -154,6 +154,7 @@ public class EntityArgument implements ArgumentType { @@ -108,7 +108,7 @@ index c8d39e6e1c570c9219f6066da273dc0130920519..96a074281d16a7f64058619da4b102f3 if (((List) object).size() >= i) { return (List) object; diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index dc3972dd9340febc7540cc32160291c4945dec85..7ad8f7cbcf4238ba2d6771ef51fb09a42d0cdb96 100644 +index 1c0a99c335162a9cd983d4c4d2cfeaf12be93899..a598fcf9d67ec29668b36f70d6980831f7de2fea 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -1692,7 +1692,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop !playerList.isOp(player.getGameProfile())) .map(player -> player.getGameProfile().getName()), diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index 64b63fe65f12d21e589c946c76e54f8f9fc8aeef..04d8c32316814d31e4216215c4c84cc7f6cbb884 100644 +index ede3a1466b411b331a837f423ef48a925bf7e44e..8f6d909d74150b6647603b47eed43f2ce2490b4b 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -2522,7 +2522,7 @@ public class ServerLevel extends Level implements WorldGenLevel, ca.spottedleaf. @@ -169,7 +169,7 @@ index 64b63fe65f12d21e589c946c76e54f8f9fc8aeef..04d8c32316814d31e4216215c4c84cc7 } // Leaves end - skip diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 103d9c9132fc8ed8fe590cd66a348c048432de34..47c4eefe1dd006a26b011182ccf659f943e9be60 100644 +index 875f88b62d62cc94b1ec09f9cedefc2722ddb5cc..57affff03dab850a2d4b37da2d2f8f0177d7dac9 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -124,6 +124,7 @@ import org.bukkit.event.player.PlayerSpawnChangeEvent; @@ -390,7 +390,7 @@ index 103d9c9132fc8ed8fe590cd66a348c048432de34..47c4eefe1dd006a26b011182ccf659f9 } } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 97d09246b5bab3fe85491d06c7b16f932bcd1cb2..d4b4b4a4baf2321fa682d26885e07186375b53e7 100644 +index 51365bf3a487725c79a8a3adae0821ced4f7abab..2b7577c3f437e7cb3c3aa000d70fb966c9b4617a 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -311,6 +311,7 @@ public final class CraftServer implements Server { @@ -410,7 +410,7 @@ index 97d09246b5bab3fe85491d06c7b16f932bcd1cb2..d4b4b4a4baf2321fa682d26885e07186 @Override public CraftPlayer apply(ServerPlayer player) { return player.getBukkitEntity(); -@@ -3238,4 +3239,11 @@ public final class CraftServer implements Server { +@@ -3235,4 +3236,11 @@ public final class CraftServer implements Server { return botManager; } // Leaves end - Bot API @@ -435,10 +435,10 @@ index 9c3df47ae65289c27a1d63ac06ca41c074ff374e..01d902e9fbf029fcd8aa21e541e54785 // Special case complex part, since there is no extra entity type for them if (entity instanceof EnderDragonPart complexPart) { diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index a0d5082590ee03060f0dbb4770d196efc316c328..d85413bb9b6b7e60de97d084d27a457409ee4ddc 100644 +index ad740739437be632fc7fedec488a7d0c49534688..f56812b623da3f07fe4f794c077ef96fa022d3f8 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -2243,7 +2243,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -2242,7 +2242,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @Override public boolean canSee(Player player) { diff --git a/patches/server/0102-Force-Void-Trade.patch b/patches/server/0102-Force-Void-Trade.patch index e9c3f7d0..c3e0eb21 100644 --- a/patches/server/0102-Force-Void-Trade.patch +++ b/patches/server/0102-Force-Void-Trade.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Force Void Trade diff --git a/src/main/java/net/minecraft/world/entity/npc/AbstractVillager.java b/src/main/java/net/minecraft/world/entity/npc/AbstractVillager.java -index 915b44434eebdd200bef38b4e5e8fcdf5cdcf5ad..04ffe95c123bc595d06f1055d4da4a91844334ae 100644 +index ebdb1546fb057bf4881d53538f8e44c14fe88b74..c3c70493e418e70c4cb6ef3cb67caf2a2cf23896 100644 --- a/src/main/java/net/minecraft/world/entity/npc/AbstractVillager.java +++ b/src/main/java/net/minecraft/world/entity/npc/AbstractVillager.java -@@ -66,6 +66,7 @@ public abstract class AbstractVillager extends AgeableMob implements InventoryCa +@@ -64,6 +64,7 @@ public abstract class AbstractVillager extends AgeableMob implements InventoryCa @Nullable protected MerchantOffers offers; private final SimpleContainer inventory = new SimpleContainer(8, (org.bukkit.craftbukkit.entity.CraftAbstractVillager) this.getBukkitEntity()); // CraftBukkit add argument @@ -16,7 +16,7 @@ index 915b44434eebdd200bef38b4e5e8fcdf5cdcf5ad..04ffe95c123bc595d06f1055d4da4a91 public AbstractVillager(EntityType type, Level world) { super(type, world); -@@ -156,7 +157,13 @@ public abstract class AbstractVillager extends AgeableMob implements InventoryCa +@@ -154,7 +155,13 @@ public abstract class AbstractVillager extends AgeableMob implements InventoryCa @Override public void processTrade(MerchantOffer recipe, @Nullable io.papermc.paper.event.player.PlayerPurchaseEvent event) { // The MerchantRecipe passed in here is the one set by the PlayerPurchaseEvent if (event == null || event.willIncreaseTradeUses()) { @@ -31,7 +31,7 @@ index 915b44434eebdd200bef38b4e5e8fcdf5cdcf5ad..04ffe95c123bc595d06f1055d4da4a91 } if (event == null || event.isRewardingExp()) { this.rewardTradeXp(recipe); -@@ -168,7 +175,7 @@ public abstract class AbstractVillager extends AgeableMob implements InventoryCa +@@ -166,7 +173,7 @@ public abstract class AbstractVillager extends AgeableMob implements InventoryCa @Override public void notifyTrade(MerchantOffer offer) { // offer.increaseUses(); // Paper - Add PlayerTradeEvent and PlayerPurchaseEvent @@ -40,7 +40,7 @@ index 915b44434eebdd200bef38b4e5e8fcdf5cdcf5ad..04ffe95c123bc595d06f1055d4da4a91 // this.rewardTradeXp(offer); // Paper - Add PlayerTradeEvent and PlayerPurchaseEvent if (this.tradingPlayer instanceof ServerPlayer) { CriteriaTriggers.TRADE.trigger((ServerPlayer) this.tradingPlayer, this, offer.getResult()); -@@ -186,7 +193,7 @@ public abstract class AbstractVillager extends AgeableMob implements InventoryCa +@@ -184,7 +191,7 @@ public abstract class AbstractVillager extends AgeableMob implements InventoryCa @Override public void notifyTradeUpdated(ItemStack stack) { if (!this.level().isClientSide && this.ambientSoundTime > -this.getAmbientSoundInterval() + 20) { @@ -49,7 +49,7 @@ index 915b44434eebdd200bef38b4e5e8fcdf5cdcf5ad..04ffe95c123bc595d06f1055d4da4a91 this.makeSound(this.getTradeUpdatedSound(!stack.isEmpty())); } -@@ -243,6 +250,12 @@ public abstract class AbstractVillager extends AgeableMob implements InventoryCa +@@ -241,6 +248,12 @@ public abstract class AbstractVillager extends AgeableMob implements InventoryCa } protected void stopTrading() { @@ -62,7 +62,7 @@ index 915b44434eebdd200bef38b4e5e8fcdf5cdcf5ad..04ffe95c123bc595d06f1055d4da4a91 this.setTradingPlayer((Player) null); } -@@ -322,4 +335,10 @@ public abstract class AbstractVillager extends AgeableMob implements InventoryCa +@@ -320,4 +333,10 @@ public abstract class AbstractVillager extends AgeableMob implements InventoryCa public boolean isClientSide() { return this.level().isClientSide; } diff --git a/patches/server/0104-CCE-update-suppression.patch b/patches/server/0104-CCE-update-suppression.patch index 8b48ef97..e46273b8 100644 --- a/patches/server/0104-CCE-update-suppression.patch +++ b/patches/server/0104-CCE-update-suppression.patch @@ -5,10 +5,10 @@ Subject: [PATCH] CCE update suppression diff --git a/src/main/java/net/minecraft/world/level/block/ShulkerBoxBlock.java b/src/main/java/net/minecraft/world/level/block/ShulkerBoxBlock.java -index c6737d4beb558da68b6fa39fd7595b9e453989b1..e70bf963cd960098709262b0a0b34e62562313d8 100644 +index 8e899549f09b8429cd63bd5c895253325f65ccab..7d88524eb5b193600c8985c68bb9ed10e3fe3c4d 100644 --- a/src/main/java/net/minecraft/world/level/block/ShulkerBoxBlock.java +++ b/src/main/java/net/minecraft/world/level/block/ShulkerBoxBlock.java -@@ -230,17 +230,21 @@ public class ShulkerBoxBlock extends BaseEntityBlock { +@@ -243,17 +243,21 @@ public class ShulkerBoxBlock extends BaseEntityBlock { @Override protected int getAnalogOutputSignal(BlockState state, Level world, BlockPos pos) { diff --git a/patches/server/0106-Disable-moved-wrongly-threshold.patch b/patches/server/0106-Disable-moved-wrongly-threshold.patch index 70a2b6d2..3f9d4d01 100644 --- a/patches/server/0106-Disable-moved-wrongly-threshold.patch +++ b/patches/server/0106-Disable-moved-wrongly-threshold.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Disable moved wrongly threshold diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index bfaec4b4dbe74b09e4c4e56268e38ce475304796..bbf8df2972835890b866e16a9be46474ff0ff680 100644 +index 2e08a927f9c3c4a4cfcad16b7a835b80efefdfca..614907d64362ae51b3f19a6d5652e23be28f795c 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -569,7 +569,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl @@ -17,16 +17,16 @@ index bfaec4b4dbe74b09e4c4e56268e38ce475304796..bbf8df2972835890b866e16a9be46474 // CraftBukkit end ServerGamePacketListenerImpl.LOGGER.warn("{} (vehicle of {}) moved too quickly! {},{},{}", new Object[]{entity.getName().getString(), this.player.getName().getString(), d6, d7, d8}); this.send(new ClientboundMoveVehiclePacket(entity)); -@@ -604,7 +604,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -605,7 +605,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl d10 = d6 * d6 + d7 * d7 + d8 * d8; boolean flag2 = false; - if (d10 > org.spigotmc.SpigotConfig.movedWronglyThreshold) { // Spigot + if (!org.leavesmc.leaves.LeavesConfig.disableMovedWronglyThreshold && d10 > org.spigotmc.SpigotConfig.movedWronglyThreshold) { // Spigot // Leaves - disable can - flag2 = true; + flag2 = true; // Paper - diff on change, this should be moved wrongly ServerGamePacketListenerImpl.LOGGER.warn("{} (vehicle of {}) moved wrongly! {}", new Object[]{entity.getName().getString(), this.player.getName().getString(), Math.sqrt(d10)}); } -@@ -1376,7 +1376,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -1414,7 +1414,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl io.papermc.paper.event.player.PlayerFailMoveEvent event = fireFailMove(io.papermc.paper.event.player.PlayerFailMoveEvent.FailReason.MOVED_TOO_QUICKLY, toX, toY, toZ, toYaw, toPitch, true); if (!event.isAllowed()) { @@ -35,7 +35,7 @@ index bfaec4b4dbe74b09e4c4e56268e38ce475304796..bbf8df2972835890b866e16a9be46474 ServerGamePacketListenerImpl.LOGGER.warn("{} moved too quickly! {},{},{}", new Object[]{this.player.getName().getString(), d6, d7, d8}); this.teleport(this.player.getX(), this.player.getY(), this.player.getZ(), this.player.getYRot(), this.player.getXRot()); return; -@@ -1445,7 +1445,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -1484,7 +1484,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl d10 = d6 * d6 + d7 * d7 + d8 * d8; boolean movedWrongly = false; // Paper - Add fail move event; rename diff --git a/patches/server/0123-Bytebuf-API.patch b/patches/server/0123-Bytebuf-API.patch index ce5ea399..5d811535 100644 --- a/patches/server/0123-Bytebuf-API.patch +++ b/patches/server/0123-Bytebuf-API.patch @@ -18,7 +18,7 @@ index 2de8da4dbe2f7b9da740a90829f18bff0b3d5b8c..a8af45393b4733ea3b6639ad7d890896 } diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 47c4eefe1dd006a26b011182ccf659f943e9be60..8bf517952e53f358bb70da68e9fa68765a78a189 100644 +index 57affff03dab850a2d4b37da2d2f8f0177d7dac9..3d35d75918dac54dab83080d03dd01c749f77ce8 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -466,6 +466,12 @@ public abstract class PlayerList { @@ -35,7 +35,7 @@ index 47c4eefe1dd006a26b011182ccf659f943e9be60..8bf517952e53f358bb70da68e9fa6876 // Leaves start - bot support diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index d4b4b4a4baf2321fa682d26885e07186375b53e7..ed64760e80a5aea1426a67da790f0d04d2b42490 100644 +index 2b7577c3f437e7cb3c3aa000d70fb966c9b4617a..bc761acab810d92afc6ec49565051eb297c35ef5 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -312,6 +312,7 @@ public final class CraftServer implements Server { @@ -46,7 +46,7 @@ index d4b4b4a4baf2321fa682d26885e07186375b53e7..ed64760e80a5aea1426a67da790f0d04 // Paper start - Folia region threading API private final io.papermc.paper.threadedregions.scheduler.FallbackRegionScheduler regionizedScheduler = new io.papermc.paper.threadedregions.scheduler.FallbackRegionScheduler(); -@@ -3246,4 +3247,15 @@ public final class CraftServer implements Server { +@@ -3243,4 +3244,15 @@ public final class CraftServer implements Server { return photographerManager; } // Leaves end - replay mod api @@ -63,10 +63,10 @@ index d4b4b4a4baf2321fa682d26885e07186375b53e7..ed64760e80a5aea1426a67da790f0d04 + // Leaves end - Bytebuf API } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index d85413bb9b6b7e60de97d084d27a457409ee4ddc..f3c0dc934b08721243e0ce331e7243059007a3fd 100644 +index f56812b623da3f07fe4f794c077ef96fa022d3f8..9a7321106900ede79cc221e21405f9b41e5c86bf 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -3554,4 +3554,16 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -3553,4 +3553,16 @@ public class CraftPlayer extends CraftHumanEntity implements Player { ((ca.spottedleaf.moonrise.patches.chunk_system.player.ChunkSystemServerPlayer)this.getHandle()) .moonrise$getViewDistanceHolder().setSendViewDistance(viewDistance); } diff --git a/patches/server/0124-Allow-grindstone-overstacking.patch b/patches/server/0124-Allow-grindstone-overstacking.patch index 1f45b9c0..8b57b8f0 100644 --- a/patches/server/0124-Allow-grindstone-overstacking.patch +++ b/patches/server/0124-Allow-grindstone-overstacking.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Allow grindstone overstacking diff --git a/src/main/java/net/minecraft/world/inventory/GrindstoneMenu.java b/src/main/java/net/minecraft/world/inventory/GrindstoneMenu.java -index 1678f6c8b2c7db761783e53043169bf12bc2cb29..13cfda7c065e0332133a1e1b60b454ae44e87d35 100644 +index 138f77d13dda574def523d74fa55bc71b5bfa01b..620fac433487caa4d22cb865e8b77c2e372462df 100644 --- a/src/main/java/net/minecraft/world/inventory/GrindstoneMenu.java +++ b/src/main/java/net/minecraft/world/inventory/GrindstoneMenu.java -@@ -202,7 +202,7 @@ public class GrindstoneMenu extends AbstractContainerMenu { +@@ -206,7 +206,7 @@ public class GrindstoneMenu extends AbstractContainerMenu { byte b0 = 1; if (!firstInput.isDamageableItem()) { @@ -17,7 +17,7 @@ index 1678f6c8b2c7db761783e53043169bf12bc2cb29..13cfda7c065e0332133a1e1b60b454ae return ItemStack.EMPTY; } -@@ -286,7 +286,7 @@ public class GrindstoneMenu extends AbstractContainerMenu { +@@ -290,7 +290,7 @@ public class GrindstoneMenu extends AbstractContainerMenu { ItemStack itemstack3 = this.repairSlots.getItem(1); if (slot == 2) { diff --git a/patches/server/0127-Disable-crystal-portal-proximity-check.patch b/patches/server/0127-Disable-crystal-portal-proximity-check.patch index 89316a94..6a86ba99 100644 --- a/patches/server/0127-Disable-crystal-portal-proximity-check.patch +++ b/patches/server/0127-Disable-crystal-portal-proximity-check.patch @@ -28,10 +28,10 @@ index 5f51e64cb0611a4ba6bdcdcacbcba1063a7f3a5c..29c9543a1afa03b2d2864d366d526029 } diff --git a/src/main/java/net/minecraft/world/level/dimension/end/EndDragonFight.java b/src/main/java/net/minecraft/world/level/dimension/end/EndDragonFight.java -index 478cba8137d153fe922ca7f402d306d8c12bcb31..cf76806da53ad2e34074744e97f081b37be65a10 100644 +index 6f867139ef83ca6d1fc26f98c4d9e4b7ce689580..98b4c79b46f2ca073d92c3bbade826df8b7c9206 100644 --- a/src/main/java/net/minecraft/world/level/dimension/end/EndDragonFight.java +++ b/src/main/java/net/minecraft/world/level/dimension/end/EndDragonFight.java -@@ -617,12 +617,14 @@ public class EndDragonFight { +@@ -619,12 +619,14 @@ public class EndDragonFight { } public boolean tryRespawn() { // CraftBukkit - return boolean @@ -46,7 +46,7 @@ index 478cba8137d153fe922ca7f402d306d8c12bcb31..cf76806da53ad2e34074744e97f081b3 if (this.dragonKilled && this.respawnStage == null) { BlockPos blockposition = this.portalLocation; -@@ -640,6 +642,7 @@ public class EndDragonFight { +@@ -642,6 +644,7 @@ public class EndDragonFight { blockposition = this.portalLocation; } @@ -54,7 +54,7 @@ index 478cba8137d153fe922ca7f402d306d8c12bcb31..cf76806da53ad2e34074744e97f081b3 // Paper start - Perf: Do crystal-portal proximity check before entity lookup if (placedEndCrystalPos != null) { // The end crystal must be 0 or 1 higher than the portal origin -@@ -655,6 +658,7 @@ public class EndDragonFight { +@@ -657,6 +660,7 @@ public class EndDragonFight { } } // Paper end - Perf: Do crystal-portal proximity check before entity lookup diff --git a/patches/server/0132-Old-BlockEntity-behaviour.patch b/patches/server/0132-Old-BlockEntity-behaviour.patch index f7c8043a..1f9ce2f6 100644 --- a/patches/server/0132-Old-BlockEntity-behaviour.patch +++ b/patches/server/0132-Old-BlockEntity-behaviour.patch @@ -23,7 +23,7 @@ index ca3a8ead09cf0d3c1352ac266b749bc0bca2ff9a..b705ee10371e77d027b88afc790f346f break label32; } diff --git a/src/main/java/net/minecraft/world/level/block/LecternBlock.java b/src/main/java/net/minecraft/world/level/block/LecternBlock.java -index 0c52e1f8bc233bb66e53f4c69e1d8757382bbe81..142009c9eeca22e42ed3ff04cf8f1ba623d6254b 100644 +index ebb79907391fe3128d3d16fbe9d8cb0b22bcc9f7..a16f165f7cbf4795b8e5cea6df0b1775058a4474 100644 --- a/src/main/java/net/minecraft/world/level/block/LecternBlock.java +++ b/src/main/java/net/minecraft/world/level/block/LecternBlock.java @@ -209,10 +209,11 @@ public class LecternBlock extends BaseEntityBlock { @@ -57,10 +57,10 @@ index 8d57c68d2f20f7c0d5c1be5d5b12e6926aad8c58..f1341d0f6545dfb13d14a37a68fda5b3 } } diff --git a/src/main/java/net/minecraft/world/level/block/ShulkerBoxBlock.java b/src/main/java/net/minecraft/world/level/block/ShulkerBoxBlock.java -index e70bf963cd960098709262b0a0b34e62562313d8..14286ebb28c467e1948601407466a31320cfd6e9 100644 +index 7d88524eb5b193600c8985c68bb9ed10e3fe3c4d..7f966d72b3124a79a5941c574ede329184666389 100644 --- a/src/main/java/net/minecraft/world/level/block/ShulkerBoxBlock.java +++ b/src/main/java/net/minecraft/world/level/block/ShulkerBoxBlock.java -@@ -173,10 +173,11 @@ public class ShulkerBoxBlock extends BaseEntityBlock { +@@ -186,10 +186,11 @@ public class ShulkerBoxBlock extends BaseEntityBlock { protected void onRemove(BlockState state, Level world, BlockPos pos, BlockState newState, boolean moved) { if (!state.is(newState.getBlock())) { BlockEntity blockEntity = world.getBlockEntity(pos); diff --git a/patches/server/0133-Fix-Spigot-EndPlatform-destroy.patch b/patches/server/0133-Fix-Spigot-EndPlatform-destroy.patch deleted file mode 100644 index e2d4c258..00000000 --- a/patches/server/0133-Fix-Spigot-EndPlatform-destroy.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: violetc <58360096+s-yh-china@users.noreply.github.com> -Date: Fri, 16 Aug 2024 02:02:06 +0800 -Subject: [PATCH] Fix Spigot EndPlatform destroy - - -diff --git a/src/main/java/net/minecraft/world/level/levelgen/feature/EndPlatformFeature.java b/src/main/java/net/minecraft/world/level/levelgen/feature/EndPlatformFeature.java -index 0bc659a8427b89b5e3211220c55b52eec6a20494..3746721baa1897111c2d30c9e0f388dddca099da 100644 ---- a/src/main/java/net/minecraft/world/level/levelgen/feature/EndPlatformFeature.java -+++ b/src/main/java/net/minecraft/world/level/levelgen/feature/EndPlatformFeature.java -@@ -44,7 +44,13 @@ public class EndPlatformFeature extends Feature { - // CraftBukkit start - if (!blockList.getBlockState(blockposition_mutableblockposition1).is(block)) { - if (flag) { -- blockList.destroyBlock(blockposition_mutableblockposition1, true, (Entity) null); -+ // Leaves start - spigot! -+ if (!org.leavesmc.leaves.LeavesConfig.spigotEndPlatformDestroy) { -+ blockList.destroyBlock(blockposition_mutableblockposition1, true, (Entity) null); -+ } else { -+ worldaccess.destroyBlock(blockposition_mutableblockposition1, true, (Entity) null); -+ } -+ // Leaves end - spigot! - } - - blockList.setBlock(blockposition_mutableblockposition1, block.defaultBlockState(), 3);