From dc4a1cba431981f1d29c75d368e77eff61291050 Mon Sep 17 00:00:00 2001 From: BillyGalbreath Date: Sun, 16 May 2021 19:10:49 -0500 Subject: [PATCH] Updated Upstream (Paper & Tuinity) Upstream has released updates that appear to apply and compile correctly Paper Changes: dc7b7a160 Fix missing username console death message (#5654) (#5658) c639a52a6 Add basic Datapack API (#5653) (#5653) 99c1d9da6 Updated Upstream (CraftBukkit) (#5652) 2d50c17e2 [CI-SKIP] Add PR rebasing steps (#5634) 2c5f8085e Remove boat interaction event (Fixes #5539) 96ee1fb8f fix WorldSaveEvent not firing with /save-all (#5650) e90e7829e remove unneeded patch (#5641) d875bacc2 Activate warning by default when people are doing silly things (#5642) cb896d471 Updated Upstream (Bukkit/CraftBukkit/Spigot) (#5643) ecbf5a38e Revert "Updated Upstream (Bukkit/CraftBukkit/Spigot) (#5636)" 20fc4ab70 Updated Upstream (Bukkit/CraftBukkit/Spigot) (#5636) 20d8812ea Fix CraftPotionBrewer cache (#5632) Tuinity Changes: 1222573d0 Fix incorrect status dataconverter for pre 1.13 chunks --- Paper | 2 +- patches/api/0001-Tuinity-API-Changes.patch | 4 +- patches/api/0002-Airplane-API-Changes.patch | 11 ++- patches/api/0003-Purpur-config-files.patch | 2 +- patches/api/0009-Bring-back-server-name.patch | 10 +- patches/api/0012-Lagging-threshold.patch | 8 +- ...oc-warnings-missing-param-and-return.patch | 2 +- ...on-change-for-adventure-deprecations.patch | 4 +- .../server/0001-Tuinity-Server-Changes.patch | 93 +++++++++++++++---- .../server/0002-Airplane-Server-Changes.patch | 12 +-- patches/server/0003-Rebrand.patch | 10 +- patches/server/0004-Purpur-config-files.patch | 14 +-- patches/server/0009-AFK-API.patch | 6 +- .../server/0010-Bring-back-server-name.patch | 6 +- patches/server/0013-Lagging-threshold.patch | 4 +- .../0017-Player-invulnerabilities.patch | 12 +-- patches/server/0021-Silk-touch-spawners.patch | 2 +- .../0025-Disable-outdated-build-check.patch | 4 +- .../0028-Zombie-horse-naturally-spawn.patch | 2 +- .../server/0046-Signs-allow-color-codes.patch | 4 +- ...-Minecart-settings-and-WASD-controls.patch | 4 +- ...050-Players-should-not-cram-to-death.patch | 4 +- ...0074-Add-5-second-tps-average-in-tps.patch | 4 +- ...leport-to-spawn-if-outside-world-bor.patch | 4 +- .../0099-Add-no-random-tick-block-list.patch | 2 +- patches/server/0103-Ridables.patch | 6 +- ...ggling-special-MobSpawners-per-world.patch | 2 +- .../0118-Configurable-daylight-cycle.patch | 2 +- ...22-Add-tablist-suffix-option-for-afk.patch | 4 +- ...mes-from-item-forms-of-entities-to-e.patch | 4 +- .../0138-Add-boat-fall-damage-config.patch | 4 +- .../server/0165-Fix-stuck-in-portals.patch | 4 +- ...-to-ignore-nearby-mobs-when-sleeping.patch | 4 +- .../0186-Config-for-skipping-night.patch | 2 +- patches/server/0212-Optimize-collisions.patch | 2 +- 35 files changed, 161 insertions(+), 103 deletions(-) diff --git a/Paper b/Paper index cd6ae8816..dc7b7a160 160000 --- a/Paper +++ b/Paper @@ -1 +1 @@ -Subproject commit cd6ae8816e88658fec22de384164c936d38833c4 +Subproject commit dc7b7a160042c14fd811ac52eefee0057626004b diff --git a/patches/api/0001-Tuinity-API-Changes.patch b/patches/api/0001-Tuinity-API-Changes.patch index 6eaa6ee77..4d3243b73 100644 --- a/patches/api/0001-Tuinity-API-Changes.patch +++ b/patches/api/0001-Tuinity-API-Changes.patch @@ -169,7 +169,7 @@ permanent authorization for you to choose that version for the Library. diff --git a/pom.xml b/pom.xml -index c2e9ca1cc7f14d3a696385edc3cb341f902fa2fd..4d826aa8ea1139e66514767da6ba17811f7ecc5c 100644 +index 73fbd5d5a591871a3a386fb5c455cd96a3992e7a..6fd6066b16d4dbf8695be16ec8b2d135d4d04901 100644 --- a/pom.xml +++ b/pom.xml @@ -3,18 +3,18 @@ @@ -198,7 +198,7 @@ index c2e9ca1cc7f14d3a696385edc3cb341f902fa2fd..4d826aa8ea1139e66514767da6ba1781 diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java -index f3e27d2d02a9407bb1b091b8c1125ad5abf99e55..b3e7b2a8eaa3980e34bc74a846320b7871dc6e4b 100644 +index 5f2b9a91b03a3e8b2dc5ce7743e31bea882500e4..82c3dfe78b3f99f16cac390a4bd7f4e054e67d33 100644 --- a/src/main/java/org/bukkit/Server.java +++ b/src/main/java/org/bukkit/Server.java @@ -1595,6 +1595,14 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi diff --git a/patches/api/0002-Airplane-API-Changes.patch b/patches/api/0002-Airplane-API-Changes.patch index d91ba77c5..289819c06 100644 --- a/patches/api/0002-Airplane-API-Changes.patch +++ b/patches/api/0002-Airplane-API-Changes.patch @@ -626,14 +626,17 @@ copy of the Program in return for a fee. END OF TERMS AND CONDITIONS diff --git a/src/main/java/org/bukkit/plugin/java/PluginClassLoader.java b/src/main/java/org/bukkit/plugin/java/PluginClassLoader.java -index 7760be3e34fa20825faf145d9fb5b2855c1a4602..79d839034d38c941745c6b91f973f908d6cdb8ee 100644 +index 81da90531cc3a7ab13d455860f89411081825949..bccd68dd74fd5152d8c4feacb0e5d4409199de5d 100644 --- a/src/main/java/org/bukkit/plugin/java/PluginClassLoader.java +++ b/src/main/java/org/bukkit/plugin/java/PluginClassLoader.java -@@ -111,6 +111,7 @@ public final class PluginClassLoader extends URLClassLoader { // Spigot - return findClass(name, true); +@@ -153,8 +153,8 @@ public final class PluginClassLoader extends URLClassLoader { // Spigot + throw new ClassNotFoundException(name); } +- @Override +- protected Class findClass(String name) throws ClassNotFoundException { + public Class _airplane_findClass(@NotNull String name) throws ClassNotFoundException { return this.classes.get(name); } // Airplane - Class findClass(@NotNull String name, boolean checkGlobal) throws ClassNotFoundException { ++ @Override protected Class findClass(String name) throws ClassNotFoundException { if (name.startsWith("org.bukkit.") || name.startsWith("net.minecraft.")) { throw new ClassNotFoundException(name); + } diff --git a/patches/api/0003-Purpur-config-files.patch b/patches/api/0003-Purpur-config-files.patch index ce0aa85d7..3c4ee00da 100644 --- a/patches/api/0003-Purpur-config-files.patch +++ b/patches/api/0003-Purpur-config-files.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Purpur config files diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java -index b3e7b2a8eaa3980e34bc74a846320b7871dc6e4b..c4aa05ae1fbc67b455f82ca6c08c7706659269ad 100644 +index 82c3dfe78b3f99f16cac390a4bd7f4e054e67d33..f14acae6712495c7e5dac0b98b42f14edaa83fb1 100644 --- a/src/main/java/org/bukkit/Server.java +++ b/src/main/java/org/bukkit/Server.java @@ -1603,6 +1603,18 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi diff --git a/patches/api/0009-Bring-back-server-name.patch b/patches/api/0009-Bring-back-server-name.patch index 0b7f12152..a8e20228e 100644 --- a/patches/api/0009-Bring-back-server-name.patch +++ b/patches/api/0009-Bring-back-server-name.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Bring back server name diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java -index 5f7208196684d9c8373df28b7cfb5f9e21baa41e..7eab52112a488150636a1457f5d7aba84da6cbf5 100644 +index bd834cd9b1d05327da195b76719e90ac14943dbb..6d9003e1f97d638a50b48620edb6ab096cc0d808 100644 --- a/src/main/java/org/bukkit/Bukkit.java +++ b/src/main/java/org/bukkit/Bukkit.java -@@ -1943,4 +1943,15 @@ public final class Bukkit { +@@ -1951,4 +1951,15 @@ public final class Bukkit { public static Server.Spigot spigot() { return server.spigot(); } @@ -25,12 +25,12 @@ index 5f7208196684d9c8373df28b7cfb5f9e21baa41e..7eab52112a488150636a1457f5d7aba8 + // Purpur end } diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java -index c4aa05ae1fbc67b455f82ca6c08c7706659269ad..ce2909995791f3b334d253afc382baea9e49dd1d 100644 +index f14acae6712495c7e5dac0b98b42f14edaa83fb1..53f7ab9245fdcb45a7e55778d1941233a46a3005 100644 --- a/src/main/java/org/bukkit/Server.java +++ b/src/main/java/org/bukkit/Server.java -@@ -1719,4 +1719,13 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi +@@ -1725,4 +1725,13 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi @NotNull - com.destroystokyo.paper.entity.ai.MobGoals getMobGoals(); + io.papermc.paper.resource.DatapackManager getDatapackManager(); // Paper end + + // Purpur start diff --git a/patches/api/0012-Lagging-threshold.patch b/patches/api/0012-Lagging-threshold.patch index 4b19f99e4..b93ac4991 100644 --- a/patches/api/0012-Lagging-threshold.patch +++ b/patches/api/0012-Lagging-threshold.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Lagging threshold diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java -index 7eab52112a488150636a1457f5d7aba84da6cbf5..801bef2a060962b5c4f92234401e5bc34a62141a 100644 +index 6d9003e1f97d638a50b48620edb6ab096cc0d808..aab8a4edc172f23773464e17da77c623088b55a8 100644 --- a/src/main/java/org/bukkit/Bukkit.java +++ b/src/main/java/org/bukkit/Bukkit.java -@@ -1953,5 +1953,14 @@ public final class Bukkit { +@@ -1961,5 +1961,14 @@ public final class Bukkit { public static String getServerName() { return server.getServerName(); } @@ -24,10 +24,10 @@ index 7eab52112a488150636a1457f5d7aba84da6cbf5..801bef2a060962b5c4f92234401e5bc3 // Purpur end } diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java -index ce2909995791f3b334d253afc382baea9e49dd1d..28a1fe3af1546daa779df46468e0ff8ad823f9ca 100644 +index 53f7ab9245fdcb45a7e55778d1941233a46a3005..6bb74e60705e6ea91c0ea06c6ea3f5348718a9ce 100644 --- a/src/main/java/org/bukkit/Server.java +++ b/src/main/java/org/bukkit/Server.java -@@ -1727,5 +1727,12 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi +@@ -1733,5 +1733,12 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi */ @NotNull String getServerName(); diff --git a/patches/api/0033-Fix-javadoc-warnings-missing-param-and-return.patch b/patches/api/0033-Fix-javadoc-warnings-missing-param-and-return.patch index 4b57dc39a..b078e1410 100644 --- a/patches/api/0033-Fix-javadoc-warnings-missing-param-and-return.patch +++ b/patches/api/0033-Fix-javadoc-warnings-missing-param-and-return.patch @@ -520,7 +520,7 @@ index 3afd5f5c0208a4ee93b5dbfc2aab2b9d2e8a7544..7838731e0e16bdccfb79e74ceb64148f /** diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java -index 28a1fe3af1546daa779df46468e0ff8ad823f9ca..7a3be414ef9d54d7a852ba92d704011fa7f125ac 100644 +index 6bb74e60705e6ea91c0ea06c6ea3f5348718a9ce..f2d0bfdbe6b64d0176ded222eead6c4898e74944 100644 --- a/src/main/java/org/bukkit/Server.java +++ b/src/main/java/org/bukkit/Server.java @@ -1568,6 +1568,9 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi diff --git a/patches/api/0039-Conflict-on-change-for-adventure-deprecations.patch b/patches/api/0039-Conflict-on-change-for-adventure-deprecations.patch index 1d6144537..8e63c1f39 100644 --- a/patches/api/0039-Conflict-on-change-for-adventure-deprecations.patch +++ b/patches/api/0039-Conflict-on-change-for-adventure-deprecations.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Conflict on change for adventure deprecations diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java -index 801bef2a060962b5c4f92234401e5bc34a62141a..d754200879bda29d582998433e1a304a6988bbbb 100644 +index aab8a4edc172f23773464e17da77c623088b55a8..582f4fd769cdb58441d13422a409fd6190f0a384 100644 --- a/src/main/java/org/bukkit/Bukkit.java +++ b/src/main/java/org/bukkit/Bukkit.java @@ -303,7 +303,7 @@ public final class Bukkit { @@ -72,7 +72,7 @@ index 801bef2a060962b5c4f92234401e5bc34a62141a..d754200879bda29d582998433e1a304a return server.getShutdownMessage(); } diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java -index 7a3be414ef9d54d7a852ba92d704011fa7f125ac..0a3acc1aa156900aa2a6a5682ffb8c3dc25e7534 100644 +index f2d0bfdbe6b64d0176ded222eead6c4898e74944..29cc63f0504d3ba98f2b346b6a01e62d1483738a 100644 --- a/src/main/java/org/bukkit/Server.java +++ b/src/main/java/org/bukkit/Server.java @@ -250,7 +250,7 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi diff --git a/patches/server/0001-Tuinity-Server-Changes.patch b/patches/server/0001-Tuinity-Server-Changes.patch index f6e03e58d..d164710a1 100644 --- a/patches/server/0001-Tuinity-Server-Changes.patch +++ b/patches/server/0001-Tuinity-Server-Changes.patch @@ -169,7 +169,7 @@ permanent authorization for you to choose that version for the Library. diff --git a/pom.xml b/pom.xml -index ab57297272c2d6f3d21067081bcaf8775b8fff09..de7da911833569c97b7f800a43ee7354d19677e2 100644 +index 1a9204c869dd36e80932b1366352db15ebd70723..642ee96ead8176f5c5a811946b050f4fa5dab6e2 100644 --- a/pom.xml +++ b/pom.xml @@ -1,11 +1,11 @@ @@ -223,7 +223,7 @@ index ab57297272c2d6f3d21067081bcaf8775b8fff09..de7da911833569c97b7f800a43ee7354 io.papermc minecraft-server -@@ -112,11 +119,7 @@ +@@ -107,11 +114,7 @@ cleaner 1.0-SNAPSHOT @@ -236,7 +236,7 @@ index ab57297272c2d6f3d21067081bcaf8775b8fff09..de7da911833569c97b7f800a43ee7354 com.googlecode.json-simple -@@ -156,19 +159,26 @@ +@@ -183,19 +186,26 @@ 4.8.47 test @@ -12072,10 +12072,10 @@ index c5e54c519e1f686761faa53b5e9579c514a65332..fe040615ff03478a20cdf8376f89a6b7 try { boolean execChunkTask = com.destroystokyo.paper.io.chunk.ChunkTaskManager.pollChunkWaitQueue() || ChunkProviderServer.this.world.asyncChunkTaskManager.pollNextChunkTask(); // Paper diff --git a/src/main/java/net/minecraft/server/level/EntityPlayer.java b/src/main/java/net/minecraft/server/level/EntityPlayer.java -index 10e9e5328f783832b957113a8672f45f90ace813..19f160d9802cabe727b280b8f7e831439b4015de 100644 +index 8683d6ddc5d8ce4a302fa6e2665b7dcd64f6a00a..aea8d85aa087d896ea93f944b8d3403ea90c9bf4 100644 --- a/src/main/java/net/minecraft/server/level/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/level/EntityPlayer.java -@@ -261,7 +261,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -262,7 +262,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { double lastEntitySpawnRadiusSquared; // Paper - optimise isOutsideRange, this field is in blocks @@ -12084,7 +12084,7 @@ index 10e9e5328f783832b957113a8672f45f90ace813..19f160d9802cabe727b280b8f7e83143 public org.bukkit.event.player.PlayerQuitEvent.QuitReason quitReason = null; // Paper - there are a lot of changes to do if we change all methods leading to the event public EntityPlayer(MinecraftServer minecraftserver, WorldServer worldserver, GameProfile gameprofile, PlayerInteractManager playerinteractmanager) { -@@ -370,7 +370,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -371,7 +371,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { if (blockposition1 != null) { this.setPositionRotation(blockposition1, 0.0F, 0.0F); @@ -12093,7 +12093,7 @@ index 10e9e5328f783832b957113a8672f45f90ace813..19f160d9802cabe727b280b8f7e83143 break; } } -@@ -378,7 +378,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -379,7 +379,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { } else { this.setPositionRotation(blockposition, 0.0F, 0.0F); @@ -12102,7 +12102,7 @@ index 10e9e5328f783832b957113a8672f45f90ace813..19f160d9802cabe727b280b8f7e83143 this.setPosition(this.locX(), this.locY() + 1.0D, this.locZ()); } } -@@ -661,6 +661,185 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -662,6 +662,185 @@ public class EntityPlayer extends EntityHuman implements ICrafting { } } @@ -12288,7 +12288,7 @@ index 10e9e5328f783832b957113a8672f45f90ace813..19f160d9802cabe727b280b8f7e83143 if (this.getHealth() != this.lastHealthSent || this.lastFoodSent != this.foodData.getFoodLevel() || this.foodData.getSaturationLevel() == 0.0F != this.lastSentSaturationZero) { this.playerConnection.sendPacket(new PacketPlayOutUpdateHealth(this.getBukkitEntity().getScaledHealth(), this.foodData.getFoodLevel(), this.foodData.getSaturationLevel())); // CraftBukkit this.lastHealthSent = this.getHealth(); -@@ -1545,6 +1724,17 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -1554,6 +1733,17 @@ public class EntityPlayer extends EntityHuman implements ICrafting { this.playerConnection.sendPacket(new PacketPlayOutCloseWindow(this.activeContainer.windowId)); this.o(); } @@ -14042,7 +14042,7 @@ index 3c804c7b20a14ea6e510810e2be10c1cc89ff5c1..3738c51b5e673c439d88a7ef7f4614f3 return new TicketType<>(s, comparator, 0L); } diff --git a/src/main/java/net/minecraft/server/level/WorldServer.java b/src/main/java/net/minecraft/server/level/WorldServer.java -index 7e032845fe9a46d33236444d62405a41e29daa17..a8a2c29874e95dc08b85eb41882fc947108fbe5b 100644 +index 6aace2155258d8257d53ebfcb20c37ea7497c02c..479605b5f8660b6968027a3d7b59075a04e44521 100644 --- a/src/main/java/net/minecraft/server/level/WorldServer.java +++ b/src/main/java/net/minecraft/server/level/WorldServer.java @@ -168,12 +168,13 @@ import org.bukkit.event.server.MapInitializeEvent; @@ -15395,6 +15395,61 @@ index c617b7dd5a992770fc87113987807947ae68be81..7ce5bd130441a3bc32ee5fa3630edce2 } private static JsonElement a(UserCache.UserCacheEntry usercache_usercacheentry, DateFormat dateformat) { +diff --git a/src/main/java/net/minecraft/util/datafix/fixes/DataConverterProtoChunk.java b/src/main/java/net/minecraft/util/datafix/fixes/DataConverterProtoChunk.java +index 3a114931cb88791bf73d08accf13993ba8842af2..81fe9111fcfd298698c2e98f453e2c42f5ce7760 100644 +--- a/src/main/java/net/minecraft/util/datafix/fixes/DataConverterProtoChunk.java ++++ b/src/main/java/net/minecraft/util/datafix/fixes/DataConverterProtoChunk.java +@@ -43,13 +43,21 @@ public class DataConverterProtoChunk extends DataFix { + return dynamic.asStreamOpt().result(); + }); + Dynamic dynamic = (Dynamic) typed1.get(DSL.remainderFinder()); +- boolean flag = dynamic.get("TerrainPopulated").asBoolean(false) && (!dynamic.get("LightPopulated").asNumber().result().isPresent() || dynamic.get("LightPopulated").asBoolean(false)); +- +- dynamic = dynamic.set("Status", dynamic.createString(flag ? "mobs_spawned" : "empty")); ++ // Tuinity start - fix incorrect status conversion ++ // Vanilla is setting chunks to incorrect status here, they should be using at minimum carved. ++ // for populated chunks, it should be at minimum decorated ++ // and for lit and populated, mobs_spawned is correct (technically mobs_spawned should be for populated, ++ // but if it's not lit then it can't be set above lit) ++ final boolean terrainPopulated = dynamic.get("TerrainPopulated").asBoolean(false); ++ final boolean lightPopulated = dynamic.get("LightPopulated").asBoolean(false) || dynamic.get("LightPopulated").asNumber().result().isPresent(); ++ final String newStatus = !terrainPopulated ? "carved" : (lightPopulated ? "mobs_spawned" : "decorated"); ++ ++ dynamic = dynamic.set("Status", dynamic.createString(newStatus)); + dynamic = dynamic.set("hasLegacyStructureData", dynamic.createBoolean(true)); +- Dynamic dynamic1; ++ // Tuinity end - fix incorrect status conversion ++ Dynamic dynamic1; // Tuinity - decompile fix + +- if (flag) { ++ if (true) { // Tuinity - fix incorrect status conversion + Optional optional1 = dynamic.get("Biomes").asByteBufferOpt().result(); + + if (optional1.isPresent()) { +@@ -70,7 +78,7 @@ public class DataConverterProtoChunk extends DataFix { + }).collect(Collectors.toList()); + + if (optional.isPresent()) { +- ((Stream) optional.get()).forEach((dynamic2) -> { ++ optional.get().forEach((dynamic2) -> { // Tuinity - decompile fix + int j = dynamic2.get("x").asInt(0); + int k = dynamic2.get("y").asInt(0); + int l = dynamic2.get("z").asInt(0); +@@ -78,11 +86,11 @@ public class DataConverterProtoChunk extends DataFix { + + ((ShortList) list.get(k >> 4)).add(short0); + }); ++ Dynamic finalDynamic = dynamic; // Tuinity - decompile fix + dynamic = dynamic.set("ToBeTicked", dynamic.createList(list.stream().map((shortlist) -> { +- Stream stream = shortlist.stream(); ++ Stream stream = shortlist.stream(); // Tuinity - decompile fix + +- dynamic.getClass(); +- return dynamic.createList(stream.map(dynamic::createShort)); ++ return finalDynamic.createList(stream.map(finalDynamic::createShort)); + }))); + } + diff --git a/src/main/java/net/minecraft/util/worldupdate/WorldUpgrader.java b/src/main/java/net/minecraft/util/worldupdate/WorldUpgrader.java index a4970654496c52fcd02c5c055ff5ac551bd19da3..6725b31a5183d5af7f8f7566ed21eb61797ef4c9 100644 --- a/src/main/java/net/minecraft/util/worldupdate/WorldUpgrader.java @@ -20663,10 +20718,10 @@ index e50731723d266ba65b2163df2e935afb8b013a93..a6736d15282715d920bab85eb92074cd } value.append("},"); diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 6cc8eb04f42592aa12f76bb4a0a863ea509741b2..55f2834373ccc7362836b4fab4ae2f069f31fd63 100644 +index 554d13d65952af1b98db074ebc4a2d90474029f6..1d07fa90736b0c4995b5d7dc0cafe9303fa30c84 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -232,7 +232,7 @@ import javax.annotation.Nullable; // Paper +@@ -233,7 +233,7 @@ import javax.annotation.Nullable; // Paper import javax.annotation.Nonnull; // Paper public final class CraftServer implements Server { @@ -20675,7 +20730,7 @@ index 6cc8eb04f42592aa12f76bb4a0a863ea509741b2..55f2834373ccc7362836b4fab4ae2f06 private final String serverVersion; private final String bukkitVersion = Versioning.getBukkitVersion(); private final Logger logger = Logger.getLogger("Minecraft"); -@@ -864,6 +864,7 @@ public final class CraftServer implements Server { +@@ -867,6 +867,7 @@ public final class CraftServer implements Server { org.spigotmc.SpigotConfig.init((File) console.options.valueOf("spigot-settings")); // Spigot com.destroystokyo.paper.PaperConfig.init((File) console.options.valueOf("paper-settings")); // Paper @@ -20683,7 +20738,7 @@ index 6cc8eb04f42592aa12f76bb4a0a863ea509741b2..55f2834373ccc7362836b4fab4ae2f06 for (WorldServer world : console.getWorlds()) { world.worldDataServer.setDifficulty(config.difficulty); world.setSpawnFlags(config.spawnMonsters, config.spawnAnimals); -@@ -898,6 +899,7 @@ public final class CraftServer implements Server { +@@ -901,6 +902,7 @@ public final class CraftServer implements Server { } world.spigotConfig.init(); // Spigot world.paperConfig.init(); // Paper @@ -20691,7 +20746,7 @@ index 6cc8eb04f42592aa12f76bb4a0a863ea509741b2..55f2834373ccc7362836b4fab4ae2f06 } Plugin[] pluginClone = pluginManager.getPlugins().clone(); // Paper -@@ -1917,7 +1919,10 @@ public final class CraftServer implements Server { +@@ -1920,7 +1922,10 @@ public final class CraftServer implements Server { @Override public boolean isPrimaryThread() { @@ -20703,7 +20758,7 @@ index 6cc8eb04f42592aa12f76bb4a0a863ea509741b2..55f2834373ccc7362836b4fab4ae2f06 } // Paper start -@@ -2351,6 +2356,14 @@ public final class CraftServer implements Server { +@@ -2354,6 +2359,14 @@ public final class CraftServer implements Server { return com.destroystokyo.paper.PaperConfig.config; } @@ -20882,10 +20937,10 @@ index 3b3eda95c0ff8b129adedbae6561bba2d01c2f3a..02807cc1fe14e747a7c18edf0fcdc386 // Spigot start private final org.bukkit.World.Spigot spigot = new org.bukkit.World.Spigot() diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java -index 154f3a6a3d37b94c40cb29c305e3aa5fb494850c..145748b5ca095cd555fd1f085a596bf0f58fea13 100644 +index 6cae7454f3cf5b246300bac489b38ea65e2185c9..969beec6ceaf43282337cf02af94033764c95bcc 100644 --- a/src/main/java/org/bukkit/craftbukkit/Main.java +++ b/src/main/java/org/bukkit/craftbukkit/Main.java -@@ -140,6 +140,13 @@ public class Main { +@@ -146,6 +146,13 @@ public class Main { .defaultsTo(new File("paper.yml")) .describedAs("Yml file"); // Paper end @@ -20899,7 +20954,7 @@ index 154f3a6a3d37b94c40cb29c305e3aa5fb494850c..145748b5ca095cd555fd1f085a596bf0 // Paper start acceptsAll(asList("server-name"), "Name of the server") -@@ -253,7 +260,7 @@ public class Main { +@@ -259,7 +266,7 @@ public class Main { if (buildDate.before(deadline.getTime())) { // Paper start - This is some stupid bullshit System.err.println("*** Warning, you've not updated in a while! ***"); diff --git a/patches/server/0002-Airplane-Server-Changes.patch b/patches/server/0002-Airplane-Server-Changes.patch index 882ab1395..f6ae01699 100644 --- a/patches/server/0002-Airplane-Server-Changes.patch +++ b/patches/server/0002-Airplane-Server-Changes.patch @@ -626,7 +626,7 @@ copy of the Program in return for a fee. END OF TERMS AND CONDITIONS diff --git a/pom.xml b/pom.xml -index de7da911833569c97b7f800a43ee7354d19677e2..c917f825378dd16a329105b4e7fcc8882755bc5a 100644 +index 642ee96ead8176f5c5a811946b050f4fa5dab6e2..efa2ea6b8422f900643eb2f0f65cf067c034cea3 100644 --- a/pom.xml +++ b/pom.xml @@ -39,8 +39,8 @@ @@ -640,7 +640,7 @@ index de7da911833569c97b7f800a43ee7354d19677e2..c917f825378dd16a329105b4e7fcc888 ${project.version} compile -@@ -166,6 +166,20 @@ +@@ -193,6 +193,20 @@ 1.1.0-SNAPSHOT compile @@ -1818,7 +1818,7 @@ index 33429be7da4d4c2b2469b8140e46e66d9921652c..0b48961a18da76dd25c0930f393f0ac9 return this.a(i); } diff --git a/src/main/java/net/minecraft/server/level/WorldServer.java b/src/main/java/net/minecraft/server/level/WorldServer.java -index a8a2c29874e95dc08b85eb41882fc947108fbe5b..e9c95187b5162e394ddbd528bacb5b1f1fb3a29f 100644 +index 479605b5f8660b6968027a3d7b59075a04e44521..4ed80e3bda7f984fa00320be647ac450c94fd72b 100644 --- a/src/main/java/net/minecraft/server/level/WorldServer.java +++ b/src/main/java/net/minecraft/server/level/WorldServer.java @@ -1107,7 +1107,28 @@ public class WorldServer extends World implements GeneratorAccessSeed { @@ -3251,10 +3251,10 @@ index dcb3e4b0cf34699ed77208f8122710bbdfa3d063..a51b47892c726f4b4b10d870991e9b85 } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 55f2834373ccc7362836b4fab4ae2f069f31fd63..6aa14f959e8f53ad16839e94315eae0727ad0b42 100644 +index 1d07fa90736b0c4995b5d7dc0cafe9303fa30c84..df4f58c42aef8e4dd3a2d640c8d14f8c81d5f2e2 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -232,7 +232,7 @@ import javax.annotation.Nullable; // Paper +@@ -233,7 +233,7 @@ import javax.annotation.Nullable; // Paper import javax.annotation.Nonnull; // Paper public final class CraftServer implements Server { @@ -3263,7 +3263,7 @@ index 55f2834373ccc7362836b4fab4ae2f069f31fd63..6aa14f959e8f53ad16839e94315eae07 private final String serverVersion; private final String bukkitVersion = Versioning.getBukkitVersion(); private final Logger logger = Logger.getLogger("Minecraft"); -@@ -978,6 +978,11 @@ public final class CraftServer implements Server { +@@ -981,6 +981,11 @@ public final class CraftServer implements Server { plugin.getDescription().getName(), "This plugin is not properly shutting down its async tasks when it is being shut down. This task may throw errors during the final shutdown logs and might not complete before process dies." )); diff --git a/patches/server/0003-Rebrand.patch b/patches/server/0003-Rebrand.patch index 9c23a2a0b..94edbb8e9 100644 --- a/patches/server/0003-Rebrand.patch +++ b/patches/server/0003-Rebrand.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Rebrand diff --git a/pom.xml b/pom.xml -index c917f825378dd16a329105b4e7fcc8882755bc5a..6fe8dad8df109531f2b38fbfcb58b6807dbb8cf0 100644 +index efa2ea6b8422f900643eb2f0f65cf067c034cea3..5136762f8e95cb1ea2564b6801703fb6f019fbe1 100644 --- a/pom.xml +++ b/pom.xml @@ -39,8 +39,10 @@ @@ -21,7 +21,7 @@ index c917f825378dd16a329105b4e7fcc8882755bc5a..6fe8dad8df109531f2b38fbfcb58b680 ${project.version} compile -@@ -182,6 +184,14 @@ +@@ -209,6 +211,14 @@ @@ -36,7 +36,7 @@ index c917f825378dd16a329105b4e7fcc8882755bc5a..6fe8dad8df109531f2b38fbfcb58b680 tuinity-${minecraft.version} -@@ -361,8 +371,15 @@ +@@ -414,8 +424,15 @@ org.eclipse.jdt ecj @@ -249,10 +249,10 @@ index 0000000000000000000000000000000000000000..cabfcebf9f944f7a2a2a1cffc7401435 + } +} diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 6aa14f959e8f53ad16839e94315eae0727ad0b42..066d4b2a2f8dff451a5fc8174dd7532a5f9b67d2 100644 +index df4f58c42aef8e4dd3a2d640c8d14f8c81d5f2e2..9c158c2f988364bed79cb45dbeb29fd08c63bf6f 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -232,7 +232,7 @@ import javax.annotation.Nullable; // Paper +@@ -233,7 +233,7 @@ import javax.annotation.Nullable; // Paper import javax.annotation.Nonnull; // Paper public final class CraftServer implements Server { diff --git a/patches/server/0004-Purpur-config-files.patch b/patches/server/0004-Purpur-config-files.patch index 2ea645f7c..9ad0ca17f 100644 --- a/patches/server/0004-Purpur-config-files.patch +++ b/patches/server/0004-Purpur-config-files.patch @@ -357,10 +357,10 @@ index 0000000000000000000000000000000000000000..536955124afaec5c8a070249c7432cb9 + } +} diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 066d4b2a2f8dff451a5fc8174dd7532a5f9b67d2..de05b0abd9fcd1de0955b493ba0a684d9a3dbc6c 100644 +index 9c158c2f988364bed79cb45dbeb29fd08c63bf6f..9b4edf52d0e1883edad06be296512a9f7c6cdd29 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -865,6 +865,7 @@ public final class CraftServer implements Server { +@@ -868,6 +868,7 @@ public final class CraftServer implements Server { org.spigotmc.SpigotConfig.init((File) console.options.valueOf("spigot-settings")); // Spigot com.destroystokyo.paper.PaperConfig.init((File) console.options.valueOf("paper-settings")); // Paper com.tuinity.tuinity.config.TuinityConfig.init((File) console.options.valueOf("tuinity-settings")); // Tuinity - Server Config @@ -368,7 +368,7 @@ index 066d4b2a2f8dff451a5fc8174dd7532a5f9b67d2..de05b0abd9fcd1de0955b493ba0a684d for (WorldServer world : console.getWorlds()) { world.worldDataServer.setDifficulty(config.difficulty); world.setSpawnFlags(config.spawnMonsters, config.spawnAnimals); -@@ -900,6 +901,7 @@ public final class CraftServer implements Server { +@@ -903,6 +904,7 @@ public final class CraftServer implements Server { world.spigotConfig.init(); // Spigot world.paperConfig.init(); // Paper world.tuinityConfig.init(); // Tuinity - Server Config @@ -376,7 +376,7 @@ index 066d4b2a2f8dff451a5fc8174dd7532a5f9b67d2..de05b0abd9fcd1de0955b493ba0a684d } Plugin[] pluginClone = pluginManager.getPlugins().clone(); // Paper -@@ -918,6 +920,7 @@ public final class CraftServer implements Server { +@@ -921,6 +923,7 @@ public final class CraftServer implements Server { reloadData(); org.spigotmc.SpigotConfig.registerCommands(); // Spigot com.destroystokyo.paper.PaperConfig.registerCommands(); // Paper @@ -384,7 +384,7 @@ index 066d4b2a2f8dff451a5fc8174dd7532a5f9b67d2..de05b0abd9fcd1de0955b493ba0a684d overrideAllCommandBlockCommands = commandsConfiguration.getStringList("command-block-overrides").contains("*"); ignoreVanillaPermissions = commandsConfiguration.getBoolean("ignore-vanilla-permissions"); -@@ -2369,6 +2372,18 @@ public final class CraftServer implements Server { +@@ -2372,6 +2375,18 @@ public final class CraftServer implements Server { } // Tuinity end - add config to timings report @@ -404,10 +404,10 @@ index 066d4b2a2f8dff451a5fc8174dd7532a5f9b67d2..de05b0abd9fcd1de0955b493ba0a684d public void restart() { org.spigotmc.RestartCommand.restart(); diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java -index 145748b5ca095cd555fd1f085a596bf0f58fea13..adf182b651ba8c7105483a4b18d1adfea37f91b9 100644 +index 969beec6ceaf43282337cf02af94033764c95bcc..e91e4e0e2f251fabeea9a3b734a6286337cda212 100644 --- a/src/main/java/org/bukkit/craftbukkit/Main.java +++ b/src/main/java/org/bukkit/craftbukkit/Main.java -@@ -148,6 +148,14 @@ public class Main { +@@ -154,6 +154,14 @@ public class Main { .describedAs("Yml file"); /* Conctete End - Server Config */ diff --git a/patches/server/0009-AFK-API.patch b/patches/server/0009-AFK-API.patch index 5a1e82696..6bd27066d 100644 --- a/patches/server/0009-AFK-API.patch +++ b/patches/server/0009-AFK-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] AFK API diff --git a/src/main/java/net/minecraft/server/level/EntityPlayer.java b/src/main/java/net/minecraft/server/level/EntityPlayer.java -index 19f160d9802cabe727b280b8f7e831439b4015de..45022ac20bea298630e151bf50b2e3322bef3b9a 100644 +index aea8d85aa087d896ea93f944b8d3403ea90c9bf4..3fdb32f8d8c647e2430fa364e5aaa40de803b025 100644 --- a/src/main/java/net/minecraft/server/level/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/level/EntityPlayer.java -@@ -2077,8 +2077,54 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -2086,8 +2086,54 @@ public class EntityPlayer extends EntityHuman implements ICrafting { public void resetIdleTimer() { this.ca = SystemUtils.getMonotonicMillis(); @@ -64,7 +64,7 @@ index 19f160d9802cabe727b280b8f7e831439b4015de..45022ac20bea298630e151bf50b2e332 return this.serverStatisticManager; } diff --git a/src/main/java/net/minecraft/server/level/WorldServer.java b/src/main/java/net/minecraft/server/level/WorldServer.java -index e9c95187b5162e394ddbd528bacb5b1f1fb3a29f..c3b9f28fbc153bf366093f6288272fd1c3c25a40 100644 +index 4ed80e3bda7f984fa00320be647ac450c94fd72b..05dc6c1b83479bed2857ef799df8291df9ac16e0 100644 --- a/src/main/java/net/minecraft/server/level/WorldServer.java +++ b/src/main/java/net/minecraft/server/level/WorldServer.java @@ -1002,7 +1002,7 @@ public class WorldServer extends World implements GeneratorAccessSeed { diff --git a/patches/server/0010-Bring-back-server-name.patch b/patches/server/0010-Bring-back-server-name.patch index 6d195f551..3c1c4b4cb 100644 --- a/patches/server/0010-Bring-back-server-name.patch +++ b/patches/server/0010-Bring-back-server-name.patch @@ -17,12 +17,12 @@ index 1fab9b9c7d41a0d2a551096c2c15f741a887fa2d..f33309f4c1ad92960d0634f3f5b8105c public final boolean spawnNpcs = this.getBoolean("spawn-npcs", true); public final boolean pvp = this.getBoolean("pvp", true); diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index de05b0abd9fcd1de0955b493ba0a684d9a3dbc6c..bfc575546f166e5d94859eb859ecb92c695acc1d 100644 +index 9b4edf52d0e1883edad06be296512a9f7c6cdd29..f3e2a6ec37045fae48166682d6cabe513d581833 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -2532,4 +2532,11 @@ public final class CraftServer implements Server { - return mobGoals; +@@ -2541,4 +2541,11 @@ public final class CraftServer implements Server { } + // Paper end + + // Purpur start diff --git a/patches/server/0013-Lagging-threshold.patch b/patches/server/0013-Lagging-threshold.patch index b3f771d1a..f3a9d8ccc 100644 --- a/patches/server/0013-Lagging-threshold.patch +++ b/patches/server/0013-Lagging-threshold.patch @@ -41,10 +41,10 @@ index 7eadf925c4e4429fa63fb02af9e87bf2ed68efa6..60ef024891e78e18c64435b7ee811807 public static boolean enderChestSixRows = false; public static boolean enderChestPermissionRows = false; diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index bfc575546f166e5d94859eb859ecb92c695acc1d..7cf34ecbeecd9cd82c6b768ecf5f5e115a504f0e 100644 +index f3e2a6ec37045fae48166682d6cabe513d581833..78599a8b9a6b9876435982ef4c11b84d41a227c8 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -2538,5 +2538,10 @@ public final class CraftServer implements Server { +@@ -2547,5 +2547,10 @@ public final class CraftServer implements Server { public String getServerName() { return getProperties().serverName; } diff --git a/patches/server/0017-Player-invulnerabilities.patch b/patches/server/0017-Player-invulnerabilities.patch index 080e1534d..08ef0dd4c 100644 --- a/patches/server/0017-Player-invulnerabilities.patch +++ b/patches/server/0017-Player-invulnerabilities.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Player invulnerabilities diff --git a/src/main/java/net/minecraft/server/level/EntityPlayer.java b/src/main/java/net/minecraft/server/level/EntityPlayer.java -index 45022ac20bea298630e151bf50b2e3322bef3b9a..0183a291efb849873a16011e76e587dbea41ee23 100644 +index 3fdb32f8d8c647e2430fa364e5aaa40de803b025..b336e47b21a0693ebfeae8eb752258a3e2f6d4f4 100644 --- a/src/main/java/net/minecraft/server/level/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/level/EntityPlayer.java -@@ -284,6 +284,8 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -285,6 +285,8 @@ public class EntityPlayer extends EntityHuman implements ICrafting { this.canPickUpLoot = true; this.maxHealthCache = this.getMaxHealth(); this.cachedSingleMobDistanceMap = new com.destroystokyo.paper.util.PooledHashSets.PooledObjectLinkedOpenHashSet<>(this); // Paper @@ -17,7 +17,7 @@ index 45022ac20bea298630e151bf50b2e3322bef3b9a..0183a291efb849873a16011e76e587db } // Paper start public BlockPosition getPointInFront(double inFront) { -@@ -1119,6 +1121,12 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -1120,6 +1122,12 @@ public class EntityPlayer extends EntityHuman implements ICrafting { } @@ -30,7 +30,7 @@ index 45022ac20bea298630e151bf50b2e3322bef3b9a..0183a291efb849873a16011e76e587db @Override public boolean damageEntity(DamageSource damagesource, float f) { if (this.isInvulnerable(damagesource)) { -@@ -1126,7 +1134,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -1127,7 +1135,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { } else { boolean flag = this.server.j() && this.canPvP() && "fall".equals(damagesource.translationIndex); @@ -39,7 +39,7 @@ index 45022ac20bea298630e151bf50b2e3322bef3b9a..0183a291efb849873a16011e76e587db return false; } else { if (damagesource instanceof EntityDamageSource) { -@@ -1302,6 +1310,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -1303,6 +1311,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { } // Paper end @@ -47,7 +47,7 @@ index 45022ac20bea298630e151bf50b2e3322bef3b9a..0183a291efb849873a16011e76e587db return this; } } -@@ -2495,9 +2504,17 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -2504,9 +2513,17 @@ public class EntityPlayer extends EntityHuman implements ICrafting { @Override public boolean isFrozen() { // Paper - protected > public diff --git a/patches/server/0021-Silk-touch-spawners.patch b/patches/server/0021-Silk-touch-spawners.patch index c0a79d036..c3c752278 100644 --- a/patches/server/0021-Silk-touch-spawners.patch +++ b/patches/server/0021-Silk-touch-spawners.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Silk touch spawners diff --git a/src/main/java/io/papermc/paper/adventure/PaperAdventure.java b/src/main/java/io/papermc/paper/adventure/PaperAdventure.java -index cd2da276c09dcf98c1c50dc66aa30dd3b67b43af..2ef13ce5cb7df206753f41a692d74c8d68354cfc 100644 +index c60457e9240c33a4721b82a00cef081fb320c8a7..5b5460c66291f1242ac7a20bc38514e214920739 100644 --- a/src/main/java/io/papermc/paper/adventure/PaperAdventure.java +++ b/src/main/java/io/papermc/paper/adventure/PaperAdventure.java @@ -81,6 +81,7 @@ public final class PaperAdventure { diff --git a/patches/server/0025-Disable-outdated-build-check.patch b/patches/server/0025-Disable-outdated-build-check.patch index f6fccf8e2..703938a62 100644 --- a/patches/server/0025-Disable-outdated-build-check.patch +++ b/patches/server/0025-Disable-outdated-build-check.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Disable outdated build check diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java -index adf182b651ba8c7105483a4b18d1adfea37f91b9..326548230af7f64aabc8cdd1a1c804e734c9e0e0 100644 +index e91e4e0e2f251fabeea9a3b734a6286337cda212..e0075a74c9aaa3bc039950a78370d40dba60338d 100644 --- a/src/main/java/org/bukkit/craftbukkit/Main.java +++ b/src/main/java/org/bukkit/craftbukkit/Main.java -@@ -260,7 +260,7 @@ public class Main { +@@ -266,7 +266,7 @@ public class Main { System.setProperty(TerminalConsoleAppender.JLINE_OVERRIDE_PROPERTY, "false"); // Paper } diff --git a/patches/server/0028-Zombie-horse-naturally-spawn.patch b/patches/server/0028-Zombie-horse-naturally-spawn.patch index 313b581c2..6ec375372 100644 --- a/patches/server/0028-Zombie-horse-naturally-spawn.patch +++ b/patches/server/0028-Zombie-horse-naturally-spawn.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Zombie horse naturally spawn diff --git a/src/main/java/net/minecraft/server/level/WorldServer.java b/src/main/java/net/minecraft/server/level/WorldServer.java -index c3b9f28fbc153bf366093f6288272fd1c3c25a40..ed81ed932abba0ea72668950f2359c6bc5438c03 100644 +index 05dc6c1b83479bed2857ef799df8291df9ac16e0..117fdc51a9ecd7504f9ce1ef9cb2e5aafc0de7d4 100644 --- a/src/main/java/net/minecraft/server/level/WorldServer.java +++ b/src/main/java/net/minecraft/server/level/WorldServer.java @@ -96,6 +96,7 @@ import net.minecraft.world.entity.ai.village.poi.VillagePlace; diff --git a/patches/server/0046-Signs-allow-color-codes.patch b/patches/server/0046-Signs-allow-color-codes.patch index 8e6d9a623..69a096a64 100644 --- a/patches/server/0046-Signs-allow-color-codes.patch +++ b/patches/server/0046-Signs-allow-color-codes.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Signs allow color codes diff --git a/src/main/java/net/minecraft/server/level/EntityPlayer.java b/src/main/java/net/minecraft/server/level/EntityPlayer.java -index 0183a291efb849873a16011e76e587dbea41ee23..7c57d12599375068e59d4c25ca27b469fc750f29 100644 +index b336e47b21a0693ebfeae8eb752258a3e2f6d4f4..7128e72f6496768293d305bdecb1f1f3cd2220b0 100644 --- a/src/main/java/net/minecraft/server/level/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/level/EntityPlayer.java -@@ -1585,6 +1585,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -1594,6 +1594,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { @Override public void openSign(TileEntitySign tileentitysign) { diff --git a/patches/server/0048-Minecart-settings-and-WASD-controls.patch b/patches/server/0048-Minecart-settings-and-WASD-controls.patch index 7ebe854a0..cee5fa1d2 100644 --- a/patches/server/0048-Minecart-settings-and-WASD-controls.patch +++ b/patches/server/0048-Minecart-settings-and-WASD-controls.patch @@ -22,10 +22,10 @@ index 2685a395a2eff9083cd8c654c4b7e2141b0ca99b..c2706c752f6ff5c131b6db469ae85dd7 super(i, j, k); } diff --git a/src/main/java/net/minecraft/server/level/EntityPlayer.java b/src/main/java/net/minecraft/server/level/EntityPlayer.java -index 7c57d12599375068e59d4c25ca27b469fc750f29..a3b11e10e996de80d1383b8d5d461a0671bd07c1 100644 +index 7128e72f6496768293d305bdecb1f1f3cd2220b0..ada349499fe4121f4e6ba2cf286d791cf80a1d6f 100644 --- a/src/main/java/net/minecraft/server/level/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/level/EntityPlayer.java -@@ -1132,6 +1132,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -1133,6 +1133,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { if (this.isInvulnerable(damagesource)) { return false; } else { diff --git a/patches/server/0050-Players-should-not-cram-to-death.patch b/patches/server/0050-Players-should-not-cram-to-death.patch index ed6555ddd..7280e6368 100644 --- a/patches/server/0050-Players-should-not-cram-to-death.patch +++ b/patches/server/0050-Players-should-not-cram-to-death.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Players should not cram to death diff --git a/src/main/java/net/minecraft/server/level/EntityPlayer.java b/src/main/java/net/minecraft/server/level/EntityPlayer.java -index a3b11e10e996de80d1383b8d5d461a0671bd07c1..c3ce73e6dc90035fd40489f9f68c17c5dc3101e9 100644 +index ada349499fe4121f4e6ba2cf286d791cf80a1d6f..7376cf0f5e3873747acf5acc7918b4bd54e67095 100644 --- a/src/main/java/net/minecraft/server/level/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/level/EntityPlayer.java -@@ -1562,7 +1562,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -1571,7 +1571,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { @Override public boolean isInvulnerable(DamageSource damagesource) { diff --git a/patches/server/0074-Add-5-second-tps-average-in-tps.patch b/patches/server/0074-Add-5-second-tps-average-in-tps.patch index 9cbc40fc0..70dceb91e 100644 --- a/patches/server/0074-Add-5-second-tps-average-in-tps.patch +++ b/patches/server/0074-Add-5-second-tps-average-in-tps.patch @@ -69,10 +69,10 @@ index 9fbec9f98bd0dd727ef58d7f3f18a8a8ab9910e2..0cea9db58772d8c69b5cfdd4a2987593 lagging = recentTps[0] < net.pl3x.purpur.PurpurConfig.laggingThreshold; // Purpur tickSection = curTime; diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 7cf34ecbeecd9cd82c6b768ecf5f5e115a504f0e..8294cbf0a0ff33099f2b87f6888e61775912b6b0 100644 +index 78599a8b9a6b9876435982ef4c11b84d41a227c8..3f98b998f0eeeea875d465ada39317b564cbb43f 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -2318,6 +2318,7 @@ public final class CraftServer implements Server { +@@ -2321,6 +2321,7 @@ public final class CraftServer implements Server { @Override public double[] getTPS() { return new double[] { diff --git a/patches/server/0086-Add-option-to-teleport-to-spawn-if-outside-world-bor.patch b/patches/server/0086-Add-option-to-teleport-to-spawn-if-outside-world-bor.patch index ee642b6fc..162ceef78 100644 --- a/patches/server/0086-Add-option-to-teleport-to-spawn-if-outside-world-bor.patch +++ b/patches/server/0086-Add-option-to-teleport-to-spawn-if-outside-world-bor.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add option to teleport to spawn if outside world border diff --git a/src/main/java/net/minecraft/server/level/EntityPlayer.java b/src/main/java/net/minecraft/server/level/EntityPlayer.java -index c3ce73e6dc90035fd40489f9f68c17c5dc3101e9..e86fb467475bd9ecd607be1a373fe80f905a496c 100644 +index 7376cf0f5e3873747acf5acc7918b4bd54e67095..69d46439801f8a9ba60337febbb423b65049fd3c 100644 --- a/src/main/java/net/minecraft/server/level/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/level/EntityPlayer.java -@@ -2562,4 +2562,26 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -2571,4 +2571,26 @@ public class EntityPlayer extends EntityHuman implements ICrafting { return (CraftPlayer) super.getBukkitEntity(); } // CraftBukkit end diff --git a/patches/server/0099-Add-no-random-tick-block-list.patch b/patches/server/0099-Add-no-random-tick-block-list.patch index 9a0651d3b..82a2b3930 100644 --- a/patches/server/0099-Add-no-random-tick-block-list.patch +++ b/patches/server/0099-Add-no-random-tick-block-list.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add no-random-tick block list diff --git a/src/main/java/net/minecraft/server/level/WorldServer.java b/src/main/java/net/minecraft/server/level/WorldServer.java -index ed81ed932abba0ea72668950f2359c6bc5438c03..449822699f5d9f78a89d747f01e16a64064c57cd 100644 +index 117fdc51a9ecd7504f9ce1ef9cb2e5aafc0de7d4..ff704bc64146584d3e8085b332bada39912f71f3 100644 --- a/src/main/java/net/minecraft/server/level/WorldServer.java +++ b/src/main/java/net/minecraft/server/level/WorldServer.java @@ -532,14 +532,14 @@ public class WorldServer extends World implements GeneratorAccessSeed { diff --git a/patches/server/0103-Ridables.patch b/patches/server/0103-Ridables.patch index 3bfcfcc62..e024f7413 100644 --- a/patches/server/0103-Ridables.patch +++ b/patches/server/0103-Ridables.patch @@ -68,7 +68,7 @@ index 0000000000000000000000000000000000000000..8b66d1215a6eef1302b5ecb46a4b3d50 + } +} diff --git a/src/main/java/net/minecraft/server/level/EntityPlayer.java b/src/main/java/net/minecraft/server/level/EntityPlayer.java -index e86fb467475bd9ecd607be1a373fe80f905a496c..b16b7fe6fbb39a0dc89da18edbba88714c89fc23 100644 +index 69d46439801f8a9ba60337febbb423b65049fd3c..326c0d4c9d849d271251a174a9231493133d3c5d 100644 --- a/src/main/java/net/minecraft/server/level/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/level/EntityPlayer.java @@ -80,7 +80,6 @@ import net.minecraft.server.network.PlayerConnection; @@ -87,7 +87,7 @@ index e86fb467475bd9ecd607be1a373fe80f905a496c..b16b7fe6fbb39a0dc89da18edbba8871 import net.minecraft.world.phys.AxisAlignedBB; import net.minecraft.world.phys.Vec3D; import net.minecraft.world.scores.ScoreboardScore; -@@ -642,6 +640,15 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -643,6 +641,15 @@ public class EntityPlayer extends EntityHuman implements ICrafting { } this.advancementDataPlayer.b(this); @@ -104,7 +104,7 @@ index e86fb467475bd9ecd607be1a373fe80f905a496c..b16b7fe6fbb39a0dc89da18edbba8871 public void playerTick() { diff --git a/src/main/java/net/minecraft/server/level/WorldServer.java b/src/main/java/net/minecraft/server/level/WorldServer.java -index 449822699f5d9f78a89d747f01e16a64064c57cd..132cf3beabc9206c7ba5fb557bb487fa813cc5a7 100644 +index ff704bc64146584d3e8085b332bada39912f71f3..faf6140085454b4e29869d6abe08353b7a301287 100644 --- a/src/main/java/net/minecraft/server/level/WorldServer.java +++ b/src/main/java/net/minecraft/server/level/WorldServer.java @@ -216,6 +216,7 @@ public class WorldServer extends World implements GeneratorAccessSeed { diff --git a/patches/server/0109-Allow-toggling-special-MobSpawners-per-world.patch b/patches/server/0109-Allow-toggling-special-MobSpawners-per-world.patch index bbfac6c30..2ccf0f1bf 100644 --- a/patches/server/0109-Allow-toggling-special-MobSpawners-per-world.patch +++ b/patches/server/0109-Allow-toggling-special-MobSpawners-per-world.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Allow toggling special MobSpawners per world In vanilla, these are all hardcoded on for world type 0 (overworld) and hardcoded off for every other world type. Default config behaviour matches this. diff --git a/src/main/java/net/minecraft/server/level/WorldServer.java b/src/main/java/net/minecraft/server/level/WorldServer.java -index 132cf3beabc9206c7ba5fb557bb487fa813cc5a7..9d5d71d9bfe24a0a5504fd9f70fbfed1591570f2 100644 +index faf6140085454b4e29869d6abe08353b7a301287..48ec845fbe34367a40fdd7e601e093054b82a345 100644 --- a/src/main/java/net/minecraft/server/level/WorldServer.java +++ b/src/main/java/net/minecraft/server/level/WorldServer.java @@ -92,6 +92,7 @@ import net.minecraft.world.entity.EnumCreatureType; diff --git a/patches/server/0118-Configurable-daylight-cycle.patch b/patches/server/0118-Configurable-daylight-cycle.patch index 280f2eab5..9f4c87c7f 100644 --- a/patches/server/0118-Configurable-daylight-cycle.patch +++ b/patches/server/0118-Configurable-daylight-cycle.patch @@ -18,7 +18,7 @@ index 3086ee023685781d94e2fb99fc8dff5264f01165..74c1047305cac5673e274096709c757e public PacketPlayOutUpdateTime() {} diff --git a/src/main/java/net/minecraft/server/level/WorldServer.java b/src/main/java/net/minecraft/server/level/WorldServer.java -index 9d5d71d9bfe24a0a5504fd9f70fbfed1591570f2..e76e54fb833ce69968d08f78836acf23e6436653 100644 +index 48ec845fbe34367a40fdd7e601e093054b82a345..590481914415374e2eb8b6b92d1469e7146620c3 100644 --- a/src/main/java/net/minecraft/server/level/WorldServer.java +++ b/src/main/java/net/minecraft/server/level/WorldServer.java @@ -64,6 +64,7 @@ import net.minecraft.network.protocol.game.PacketPlayOutExplosion; diff --git a/patches/server/0122-Add-tablist-suffix-option-for-afk.patch b/patches/server/0122-Add-tablist-suffix-option-for-afk.patch index 8cc36ebbd..1c62a5f93 100644 --- a/patches/server/0122-Add-tablist-suffix-option-for-afk.patch +++ b/patches/server/0122-Add-tablist-suffix-option-for-afk.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add tablist suffix option for afk diff --git a/src/main/java/net/minecraft/server/level/EntityPlayer.java b/src/main/java/net/minecraft/server/level/EntityPlayer.java -index b16b7fe6fbb39a0dc89da18edbba88714c89fc23..94077df06faf044aee3aba554de4095fbe9a8781 100644 +index 326c0d4c9d849d271251a174a9231493133d3c5d..999eb87c688f0bc5d3d4bb4beb9f468f0eadc184 100644 --- a/src/main/java/net/minecraft/server/level/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/level/EntityPlayer.java -@@ -2126,7 +2126,11 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -2135,7 +2135,11 @@ public class EntityPlayer extends EntityHuman implements ICrafting { } if (world.purpurConfig.idleTimeoutUpdateTabList) { diff --git a/patches/server/0126-Apply-display-names-from-item-forms-of-entities-to-e.patch b/patches/server/0126-Apply-display-names-from-item-forms-of-entities-to-e.patch index 52b56cbf0..df1db66dc 100644 --- a/patches/server/0126-Apply-display-names-from-item-forms-of-entities-to-e.patch +++ b/patches/server/0126-Apply-display-names-from-item-forms-of-entities-to-e.patch @@ -101,10 +101,10 @@ index cd46df5485ebfd597ea72360a27872d46174ee19..245d3fe09feb9dc27b097642d40664a9 world.playSound((EntityHuman) null, entityarmorstand.locX(), entityarmorstand.locY(), entityarmorstand.locZ(), SoundEffects.ENTITY_ARMOR_STAND_PLACE, SoundCategory.BLOCKS, 0.75F, 0.8F); } diff --git a/src/main/java/net/minecraft/world/item/ItemBoat.java b/src/main/java/net/minecraft/world/item/ItemBoat.java -index 1d812b3e27f87213afc3e441eb20ca984458ce2a..636a8bc76d436fc770b4e05a93f1991210b64230 100644 +index e24085facbc738c5eecbf85dee1b87072c41537c..8129381f8248fff81659dd27050a01e2986e0330 100644 --- a/src/main/java/net/minecraft/world/item/ItemBoat.java +++ b/src/main/java/net/minecraft/world/item/ItemBoat.java -@@ -65,6 +65,11 @@ public class ItemBoat extends Item { +@@ -67,6 +67,11 @@ public class ItemBoat extends Item { entityboat.setType(this.b); entityboat.yaw = entityhuman.yaw; diff --git a/patches/server/0138-Add-boat-fall-damage-config.patch b/patches/server/0138-Add-boat-fall-damage-config.patch index f945c7f39..507598b12 100644 --- a/patches/server/0138-Add-boat-fall-damage-config.patch +++ b/patches/server/0138-Add-boat-fall-damage-config.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add boat fall damage config diff --git a/src/main/java/net/minecraft/server/level/EntityPlayer.java b/src/main/java/net/minecraft/server/level/EntityPlayer.java -index 94077df06faf044aee3aba554de4095fbe9a8781..9ffe45df2540d128e84a3cb44c11c253a446eddc 100644 +index 999eb87c688f0bc5d3d4bb4beb9f468f0eadc184..27d65af750e7b420da9d2817d75f257e4f729339 100644 --- a/src/main/java/net/minecraft/server/level/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/level/EntityPlayer.java -@@ -1139,7 +1139,16 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -1140,7 +1140,16 @@ public class EntityPlayer extends EntityHuman implements ICrafting { if (this.isInvulnerable(damagesource)) { return false; } else { diff --git a/patches/server/0165-Fix-stuck-in-portals.patch b/patches/server/0165-Fix-stuck-in-portals.patch index 17976c357..cb3da9407 100644 --- a/patches/server/0165-Fix-stuck-in-portals.patch +++ b/patches/server/0165-Fix-stuck-in-portals.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Fix stuck in portals diff --git a/src/main/java/net/minecraft/server/level/EntityPlayer.java b/src/main/java/net/minecraft/server/level/EntityPlayer.java -index 9ffe45df2540d128e84a3cb44c11c253a446eddc..d72ffa37336437384191abd1e9cd65f1d652b3ce 100644 +index 27d65af750e7b420da9d2817d75f257e4f729339..d1a7fdf36c210f0412b2d9ca0539e1fddba172a6 100644 --- a/src/main/java/net/minecraft/server/level/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/level/EntityPlayer.java -@@ -1289,6 +1289,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -1290,6 +1290,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { playerlist.d(this); worldserver1.removePlayer(this); this.dead = false; diff --git a/patches/server/0177-Config-to-ignore-nearby-mobs-when-sleeping.patch b/patches/server/0177-Config-to-ignore-nearby-mobs-when-sleeping.patch index ce5cb05d7..c60e48709 100644 --- a/patches/server/0177-Config-to-ignore-nearby-mobs-when-sleeping.patch +++ b/patches/server/0177-Config-to-ignore-nearby-mobs-when-sleeping.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Config to ignore nearby mobs when sleeping diff --git a/src/main/java/net/minecraft/server/level/EntityPlayer.java b/src/main/java/net/minecraft/server/level/EntityPlayer.java -index d72ffa37336437384191abd1e9cd65f1d652b3ce..a88585c95d33d48b85ee8fd52b44dd5c09b5e81a 100644 +index d1a7fdf36c210f0412b2d9ca0539e1fddba172a6..2b6e4d727d1d7484cbf0084770a89708ad157876 100644 --- a/src/main/java/net/minecraft/server/level/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/level/EntityPlayer.java -@@ -1445,7 +1445,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -1454,7 +1454,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { return entitymonster.f((EntityHuman) this); }); diff --git a/patches/server/0186-Config-for-skipping-night.patch b/patches/server/0186-Config-for-skipping-night.patch index e46811585..55ba59bbe 100644 --- a/patches/server/0186-Config-for-skipping-night.patch +++ b/patches/server/0186-Config-for-skipping-night.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Config for skipping night diff --git a/src/main/java/net/minecraft/server/level/WorldServer.java b/src/main/java/net/minecraft/server/level/WorldServer.java -index e76e54fb833ce69968d08f78836acf23e6436653..db91e4ca583f676fe74d35a2368b3c39ab58cd9a 100644 +index 590481914415374e2eb8b6b92d1469e7146620c3..7cea2a2c7c614e7dc1bb9c0c901c64eb7a1bffa0 100644 --- a/src/main/java/net/minecraft/server/level/WorldServer.java +++ b/src/main/java/net/minecraft/server/level/WorldServer.java @@ -1028,7 +1028,7 @@ public class WorldServer extends World implements GeneratorAccessSeed { diff --git a/patches/server/0212-Optimize-collisions.patch b/patches/server/0212-Optimize-collisions.patch index c17a4b5bc..fa79b1618 100644 --- a/patches/server/0212-Optimize-collisions.patch +++ b/patches/server/0212-Optimize-collisions.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Optimize collisions diff --git a/src/main/java/net/minecraft/server/level/WorldServer.java b/src/main/java/net/minecraft/server/level/WorldServer.java -index db91e4ca583f676fe74d35a2368b3c39ab58cd9a..fbd60ebfcd04c288c8ea2353722d06ef4850dbeb 100644 +index 7cea2a2c7c614e7dc1bb9c0c901c64eb7a1bffa0..52cfaedd376021c9e43a5149ac82427d0bcd6904 100644 --- a/src/main/java/net/minecraft/server/level/WorldServer.java +++ b/src/main/java/net/minecraft/server/level/WorldServer.java @@ -678,16 +678,10 @@ public class WorldServer extends World implements GeneratorAccessSeed {