From ade1ed1d98e936bfce92cc50ba0444d05310add4 Mon Sep 17 00:00:00 2001 From: granny Date: Sun, 5 Mar 2023 03:32:31 -0800 Subject: [PATCH] Updated Upstream (Paper) Upstream has released updates that appear to apply and compile correctly Paper Changes: PaperMC/Paper@e574412 Replace ConfiguredStructure api with Structure (#8642) PaperMC/Paper@a172880 Update ForgeFlower to 2.0.627.2, fixes dev bundle not applying with Java 19 runtime PaperMC/Paper@4151f75 /paper entity list QOL improvements (#8876) PaperMC/Paper@8a815a0 Fix rendering for translatable death messages (#8534) PaperMC/Paper@d30cda1 Add TeleportFlags (#8855) PaperMC/Paper@3dcf4e4 Add EntityFertilizeEggEvent (#8041) PaperMC/Paper@f2075c4 Take in account waterlogged block for the event (#8623) PaperMC/Paper@e5e75dd Include previous spawn angle in SpawnChangeEvent (#8606) PaperMC/Paper@541753b Fix HumanEntity#drop not updating the client inventory (#6761) --- build.gradle.kts | 2 +- gradle.properties | 2 +- patches/api/0005-Purpur-client-support.patch | 4 ++-- patches/api/0007-Ridables.patch | 4 ++-- patches/api/0010-AFK-API.patch | 4 ++-- .../api/0017-Player-invulnerabilities.patch | 4 ++-- ...032-API-for-any-mob-to-burn-daylight.patch | 4 ++-- patches/api/0046-Debug-Marker-API.patch | 4 ++-- patches/api/0047-Add-death-screen-API.patch | 4 ++-- patches/api/0051-Fire-Immunity-API.patch | 4 ++-- .../0001-Pufferfish-Server-Changes.patch | 20 ++++++++-------- patches/server/0004-Purpur-config-files.patch | 12 +++++----- .../server/0005-Purpur-client-support.patch | 8 +++---- patches/server/0008-Ridables.patch | 24 +++++++++---------- patches/server/0012-AFK-API.patch | 8 +++---- .../server/0013-Bring-back-server-name.patch | 4 ++-- patches/server/0016-Lagging-threshold.patch | 6 ++--- .../0018-Player-invulnerabilities.patch | 8 +++---- ...0062-Add-5-second-tps-average-in-tps.patch | 6 ++--- ...0128-Add-EntityTeleportHinderedEvent.patch | 8 +++---- ...urable-ravager-griefable-blocks-list.patch | 6 ++--- .../0216-Extended-OfflinePlayer-API.patch | 4 ++-- ...the-ability-to-add-combustible-items.patch | 4 ++-- patches/server/0246-Allow-void-trading.patch | 6 ++--- .../0276-Allow-custom-ChatDecorators.patch | 4 ++-- patches/server/0278-Remove-Timings.patch | 10 ++++---- .../server/0279-Remove-Mojang-Profiler.patch | 18 +++++++------- patches/server/0282-Debug-Marker-API.patch | 10 ++++---- .../server/0287-Add-death-screen-API.patch | 4 ++-- patches/server/0295-Language-API.patch | 6 ++--- patches/server/0301-Fire-Immunity-API.patch | 4 ++-- 31 files changed, 108 insertions(+), 108 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index 526c3b66f..8f1900da7 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -48,7 +48,7 @@ repositories { dependencies { remapper("net.fabricmc:tiny-remapper:0.8.6:fat") - decompiler("net.minecraftforge:forgeflower:2.0.605.1") + decompiler("net.minecraftforge:forgeflower:2.0.627.2") paperclip("io.papermc:paperclip:3.0.2") } diff --git a/gradle.properties b/gradle.properties index ec99fd81b..603a996e1 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,7 +1,7 @@ group = org.purpurmc.purpur version = 1.19.3-R0.1-SNAPSHOT -paperCommit = f408c253ecc8bf14afe72aa847bf8478465663c1 +paperCommit = 541753be2513fcb3bdd0e60065b9cb61286b2bf2 org.gradle.caching = true org.gradle.parallel = true diff --git a/patches/api/0005-Purpur-client-support.patch b/patches/api/0005-Purpur-client-support.patch index d27abd60c..8c0ff90c8 100644 --- a/patches/api/0005-Purpur-client-support.patch +++ b/patches/api/0005-Purpur-client-support.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Purpur client support diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index d7d94b954262da0cbe11850cbc3ebd45e32c8c76..f4586e7326f4a146778cdc61fb087b8d5c141ab0 100644 +index 7e7a21b21afdf40d7516ce1a5f5c1c5d6048984a..15bb2a2fce70797af3b1befa7053d4b30f2053ef 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java -@@ -3000,4 +3000,13 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -2978,4 +2978,13 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM @Override Spigot spigot(); // Spigot end diff --git a/patches/api/0007-Ridables.patch b/patches/api/0007-Ridables.patch index 07345f126..b24b81964 100644 --- a/patches/api/0007-Ridables.patch +++ b/patches/api/0007-Ridables.patch @@ -22,10 +22,10 @@ index 998f629852e1103767e005405d1f39c2251ecd28..49cba8a3226e4e2f2b11f3171c29e975 * @deprecated removed in 1.16 */ diff --git a/src/main/java/org/bukkit/entity/Entity.java b/src/main/java/org/bukkit/entity/Entity.java -index cdbc7329cf5f67d66e31eb31e83b9e7997040f72..56afcc92854897ad5c971e576f96414bae766b7a 100644 +index 11cf1bb585e2754bda443b776e9fcaf0a6cc289e..6a28812fa0cad47ae8f569bf9b99c9ff45df2677 100644 --- a/src/main/java/org/bukkit/entity/Entity.java +++ b/src/main/java/org/bukkit/entity/Entity.java -@@ -970,4 +970,35 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent +@@ -927,4 +927,35 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent */ boolean wouldCollideUsing(@NotNull BoundingBox boundingBox); // Paper End - Collision API diff --git a/patches/api/0010-AFK-API.patch b/patches/api/0010-AFK-API.patch index 0a4c0f614..cfa3a1030 100644 --- a/patches/api/0010-AFK-API.patch +++ b/patches/api/0010-AFK-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] AFK API diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index f4586e7326f4a146778cdc61fb087b8d5c141ab0..0226881e26431dded883557f003c2d3a5ced349b 100644 +index 15bb2a2fce70797af3b1befa7053d4b30f2053ef..315fe7637889859115f060b6ab0b7625b6b69641 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java -@@ -3008,5 +3008,24 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -2986,5 +2986,24 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM * @return True if Player uses Purpur Client */ public boolean usesPurpurClient(); diff --git a/patches/api/0017-Player-invulnerabilities.patch b/patches/api/0017-Player-invulnerabilities.patch index bfad82e97..3da81cd8c 100644 --- a/patches/api/0017-Player-invulnerabilities.patch +++ b/patches/api/0017-Player-invulnerabilities.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Player invulnerabilities diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index 0226881e26431dded883557f003c2d3a5ced349b..9bbb58d173ab3e0c586273e9135c40184cb5e127 100644 +index 315fe7637889859115f060b6ab0b7625b6b69641..d713b34a5c57468530f2a7f8d3838d95fc1b01df 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java -@@ -3027,5 +3027,26 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -3005,5 +3005,26 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM * Reset the idle timer back to 0 */ void resetIdleTimer(); diff --git a/patches/api/0032-API-for-any-mob-to-burn-daylight.patch b/patches/api/0032-API-for-any-mob-to-burn-daylight.patch index 4d4f59bb5..1c6237494 100644 --- a/patches/api/0032-API-for-any-mob-to-burn-daylight.patch +++ b/patches/api/0032-API-for-any-mob-to-burn-daylight.patch @@ -6,10 +6,10 @@ Subject: [PATCH] API for any mob to burn daylight Co-authored by: Encode42 diff --git a/src/main/java/org/bukkit/entity/Entity.java b/src/main/java/org/bukkit/entity/Entity.java -index 56afcc92854897ad5c971e576f96414bae766b7a..d8f30fca0b5b9673c5dd8a78e87a378c60d04067 100644 +index 6a28812fa0cad47ae8f569bf9b99c9ff45df2677..4ed2d786bec410900bcc28f098d1e056e2eccbc6 100644 --- a/src/main/java/org/bukkit/entity/Entity.java +++ b/src/main/java/org/bukkit/entity/Entity.java -@@ -1000,5 +1000,12 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent +@@ -957,5 +957,12 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent * @return True if ridable in water */ boolean isRidableInWater(); diff --git a/patches/api/0046-Debug-Marker-API.patch b/patches/api/0046-Debug-Marker-API.patch index af9d848cb..695f1787e 100644 --- a/patches/api/0046-Debug-Marker-API.patch +++ b/patches/api/0046-Debug-Marker-API.patch @@ -260,10 +260,10 @@ index bb249f7d54fd90d63f609eedf0bbb463f1aa96f1..a38863ebd363f54994753937a10e0410 /** diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index 9bbb58d173ab3e0c586273e9135c40184cb5e127..9464ec6b436b79f015f50279aed2ed38e32d5909 100644 +index d713b34a5c57468530f2a7f8d3838d95fc1b01df..98210502756b828bd48897e241d8e7edc0227c9f 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java -@@ -3048,5 +3048,75 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -3026,5 +3026,75 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM * @param invulnerableTicks Invulnerable ticks remaining */ void setSpawnInvulnerableTicks(int invulnerableTicks); diff --git a/patches/api/0047-Add-death-screen-API.patch b/patches/api/0047-Add-death-screen-API.patch index 9beedba45..952608956 100644 --- a/patches/api/0047-Add-death-screen-API.patch +++ b/patches/api/0047-Add-death-screen-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add death screen API diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index 9464ec6b436b79f015f50279aed2ed38e32d5909..d5ad02c1fa2b840289d316400952aaebb8c5dad1 100644 +index 98210502756b828bd48897e241d8e7edc0227c9f..5ff9f0d9bc2bc08af251a677a8c98d6f288da8a8 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java -@@ -3118,5 +3118,21 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -3096,5 +3096,21 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM * Clears all debug block highlights */ void clearBlockHighlights(); diff --git a/patches/api/0051-Fire-Immunity-API.patch b/patches/api/0051-Fire-Immunity-API.patch index 3d67f1429..ddc7359a0 100644 --- a/patches/api/0051-Fire-Immunity-API.patch +++ b/patches/api/0051-Fire-Immunity-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Fire Immunity API diff --git a/src/main/java/org/bukkit/entity/Entity.java b/src/main/java/org/bukkit/entity/Entity.java -index d8f30fca0b5b9673c5dd8a78e87a378c60d04067..8a980916176b2179168833f1d14872176837154e 100644 +index 4ed2d786bec410900bcc28f098d1e056e2eccbc6..649babbfdd495e8c9471c2f6518d2eb9d9568ba4 100644 --- a/src/main/java/org/bukkit/entity/Entity.java +++ b/src/main/java/org/bukkit/entity/Entity.java -@@ -1007,5 +1007,18 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent +@@ -964,5 +964,18 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent * @return True if in daylight */ boolean isInDaylight(); diff --git a/patches/server/0001-Pufferfish-Server-Changes.patch b/patches/server/0001-Pufferfish-Server-Changes.patch index 9678a64c6..34a3bb408 100644 --- a/patches/server/0001-Pufferfish-Server-Changes.patch +++ b/patches/server/0001-Pufferfish-Server-Changes.patch @@ -1492,10 +1492,10 @@ index 8d442c5a498ecf288a0cc0c54889c6e2fda849ce..01bdf134fc21220ab7ecca51f2dcd51c } } diff --git a/src/main/java/io/papermc/paper/util/MCUtil.java b/src/main/java/io/papermc/paper/util/MCUtil.java -index d1a59c2af0557a816c094983ec60097fb4de060c..9cbc6e0350c982e7b7a58a32ab34ff2446c4fd1b 100644 +index 6efb8b10f17c70b05128039376d254e6beda3841..57e8c6673c7cfe447a75f15506e8000062d813fe 100644 --- a/src/main/java/io/papermc/paper/util/MCUtil.java +++ b/src/main/java/io/papermc/paper/util/MCUtil.java -@@ -209,7 +209,7 @@ public final class MCUtil { +@@ -210,7 +210,7 @@ public final class MCUtil { } public static long getCoordinateKey(final Entity entity) { @@ -1505,7 +1505,7 @@ index d1a59c2af0557a816c094983ec60097fb4de060c..9cbc6e0350c982e7b7a58a32ab34ff24 public static long getCoordinateKey(final ChunkPos pair) { diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 710ca7d3a5659953f64bc6dccdd93b43300961cc..68d16efaf9c2d997afabadcf1ee24c5de685b5b3 100644 +index 753a917d34a1e1c1521a8916bc8e44a6acd90a46..33a5e900c2cab99c311fa5f5b71a609cf8f802cb 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -309,6 +309,8 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop { @@ -3546,7 +3546,7 @@ index ebe65474a4a05ff1637d7f37ebcfe690af59def5..42142c512b12e5b269c19f1e821c50e7 @Nullable diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 1ca7a4aa8ccd34e2aedbe3963950ba3717c558b7..81dbb98d8e96c81e724af7eb7ab815d102b52f41 100644 +index bbb8335dae0a3e2761e6bbb8dc723bcf28cd82ba..7ddf52de4b095f63c75b696008fcdde6345fc3c8 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -261,7 +261,7 @@ import javax.annotation.Nullable; // Paper @@ -3558,7 +3558,7 @@ index 1ca7a4aa8ccd34e2aedbe3963950ba3717c558b7..81dbb98d8e96c81e724af7eb7ab815d1 private final String serverVersion; private final String bukkitVersion = Versioning.getBukkitVersion(); private final Logger logger = Logger.getLogger("Minecraft"); -@@ -1049,6 +1049,11 @@ public final class CraftServer implements Server { +@@ -1048,6 +1048,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." )); @@ -3583,7 +3583,7 @@ index f7ea77dd82d978ad307f99c743efacfb34478b3d..009ab06182359862b8f543030ec4fe4e } } diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java -index 4c50d0422fcc6860e502f8b745aac2695f47073d..258db803682fcc4f76c792ef741b77e63a65ce98 100644 +index 1244c1ca5e0907298b1ca6de538db82b2209ec4d..6aa2121e286dd6d43201a38722ea0cdd205baaa7 100644 --- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java +++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java @@ -468,7 +468,7 @@ public final class CraftMagicNumbers implements UnsafeValues { diff --git a/patches/server/0004-Purpur-config-files.patch b/patches/server/0004-Purpur-config-files.patch index 439d4dce6..cf054e254 100644 --- a/patches/server/0004-Purpur-config-files.patch +++ b/patches/server/0004-Purpur-config-files.patch @@ -84,7 +84,7 @@ index ad4fdbdcf09f30d10e61ccf47f8fb9ce6bd92e73..ca6a2fee12ac8a89dae57aa2787462f1 io.papermc.paper.brigadier.PaperBrigadierProviderImpl.INSTANCE.getClass(); // init PaperBrigadierProvider // Paper end diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 42299fd6ae663b01bb5f010b96887caa744dcb96..816f906f98adc180f37d2b216628e576ac837448 100644 +index e5f6740dfe7abb77ee3a4af9c2b53a014819c7e1..a8fe157c54b758db73639b21d7ef0fd646034af6 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java @@ -173,6 +173,8 @@ public abstract class Level implements LevelAccessor, AutoCloseable { @@ -105,10 +105,10 @@ index 42299fd6ae663b01bb5f010b96887caa744dcb96..816f906f98adc180f37d2b216628e576 this.world = new CraftWorld((ServerLevel) this, gen, biomeProvider, env); diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index be998ee2d790ded8dfbeb20d92ba70594a5baafa..234ba3e20fd79040c1386a5c5a47a924b3d42164 100644 +index 9d15cb8151a4008061c5788cbf4f4fa494cfe49d..fdb314838159f77b3fb12d61e74d12f582fb2bcf 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -962,6 +962,7 @@ public final class CraftServer implements Server { +@@ -961,6 +961,7 @@ public final class CraftServer implements Server { org.spigotmc.SpigotConfig.init((File) console.options.valueOf("spigot-settings")); // Spigot this.console.paperConfigurations.reloadConfigs(this.console); @@ -116,7 +116,7 @@ index be998ee2d790ded8dfbeb20d92ba70594a5baafa..234ba3e20fd79040c1386a5c5a47a924 for (ServerLevel world : this.console.getAllLevels()) { // world.serverLevelData.setDifficulty(config.difficulty); // Paper - per level difficulty world.setSpawnSettings(world.serverLevelData.getDifficulty() != Difficulty.PEACEFUL && config.spawnMonsters, config.spawnAnimals); // Paper - per level difficulty (from MinecraftServer#setDifficulty(ServerLevel, Difficulty, boolean)) -@@ -977,6 +978,7 @@ public final class CraftServer implements Server { +@@ -976,6 +977,7 @@ public final class CraftServer implements Server { } } world.spigotConfig.init(); // Spigot @@ -124,7 +124,7 @@ index be998ee2d790ded8dfbeb20d92ba70594a5baafa..234ba3e20fd79040c1386a5c5a47a924 } Plugin[] pluginClone = pluginManager.getPlugins().clone(); // Paper -@@ -992,6 +994,7 @@ public final class CraftServer implements Server { +@@ -991,6 +993,7 @@ public final class CraftServer implements Server { this.reloadData(); org.spigotmc.SpigotConfig.registerCommands(); // Spigot io.papermc.paper.command.PaperCommands.registerCommands(this.console); // Paper @@ -132,7 +132,7 @@ index be998ee2d790ded8dfbeb20d92ba70594a5baafa..234ba3e20fd79040c1386a5c5a47a924 this.overrideAllCommandBlockCommands = this.commandsConfiguration.getStringList("command-block-overrides").contains("*"); this.ignoreVanillaPermissions = this.commandsConfiguration.getBoolean("ignore-vanilla-permissions"); -@@ -2752,6 +2755,18 @@ public final class CraftServer implements Server { +@@ -2751,6 +2754,18 @@ public final class CraftServer implements Server { return CraftServer.this.console.paperConfigurations.createLegacyObject(CraftServer.this.console); } diff --git a/patches/server/0005-Purpur-client-support.patch b/patches/server/0005-Purpur-client-support.patch index 570790a5c..c14ce7eec 100644 --- a/patches/server/0005-Purpur-client-support.patch +++ b/patches/server/0005-Purpur-client-support.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Purpur client support diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 9160725f031c9698a00229c3dfa19d39b4a826c1..74d332479556ec01cc3fb8d13fe82a77e2fbf3e9 100644 +index 289429eb464548acc80262a49444f49f8f57fc0c..7b6b3312860633f70e64641c0a0c520572874b70 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java @@ -268,6 +268,7 @@ public class ServerPlayer extends Player { @@ -17,7 +17,7 @@ index 9160725f031c9698a00229c3dfa19d39b4a826c1..74d332479556ec01cc3fb8d13fe82a77 public ServerPlayer(MinecraftServer server, ServerLevel world, GameProfile profile) { super(world, world.getSharedSpawnPos(), world.getSharedSpawnAngle(), profile); diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index d04a30ee940a785b848240ae6b1aa9705deb7902..9c5f191205b5f413890e78e316a08e6f5542bdc1 100644 +index c6a1bde35274bdd0e008a6ca5af006a5d7bcd8bb..564ded1c42675917915f70de6c62324641aba5af 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -3511,6 +3511,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic @@ -43,10 +43,10 @@ index d04a30ee940a785b848240ae6b1aa9705deb7902..9c5f191205b5f413890e78e316a08e6f try { byte[] data = new byte[packet.data.readableBytes()]; diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 03430916a8107c1b0f04d84e1dce494e2da06e7a..b3135e6d66fe8f176a98adb8230e788c4c0d662e 100644 +index c33e92cee1291c0ca1863fa8f33cd3b1c5449e92..09ff0a13bbd295174809e21e2665b8a133851c06 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -3058,4 +3058,11 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -3066,4 +3066,11 @@ public class CraftPlayer extends CraftHumanEntity implements Player { return this.spigot; } // Spigot end diff --git a/patches/server/0008-Ridables.patch b/patches/server/0008-Ridables.patch index 0d6f17468..f0b342856 100644 --- a/patches/server/0008-Ridables.patch +++ b/patches/server/0008-Ridables.patch @@ -22,7 +22,7 @@ index b1d12c78edf21cc29a9f9ca54e7957ddc8875ffb..a3e398d3bcc88f9c0feaa6ca8dc646f3 super(x, y, z); } diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 861cd9f092a19aca520c2be4ba7a6ee3d9aee263..7191a7e9a7fcb4268c5aaf85bf9c896fa2bfd676 100644 +index 51163298e6ce111bdb19d55ce367cd69c7fe5f89..f145f11d95d767f9e3483934dff882e14e73f144 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -1517,6 +1517,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop { diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index ccb905ad68465199516534a2ab74f7b3092297a8..af87c06e9a135ed22ea575d36d739951707b3c66 100644 +index 485fa33df4ca52be51b8e095b5e63fe67eb63ea0..cbde5ff539768c8c787709b1f5ff893ddb99e950 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -222,6 +222,7 @@ public class ServerLevel extends Level implements WorldGenLevel { @@ -46,7 +46,7 @@ index ccb905ad68465199516534a2ab74f7b3092297a8..af87c06e9a135ed22ea575d36d739951 final Throwable thr = new Throwable(entity + " Added to world at " + new java.util.Date()); io.papermc.paper.util.StacktraceDeobfuscator.INSTANCE.deobfuscateThrowable(thr); diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index f3024b03ff7709893d6e39f54504597bb59f5315..f6360f2973c03e0105361f9e001360ec01488ce6 100644 +index e226c784118bf682560678c5cac08b0777be2837..19cff8ba18d28f4c7cc7dfc71ce6ce3501b7bcb8 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java @@ -701,6 +701,15 @@ public class ServerPlayer extends Player { @@ -66,7 +66,7 @@ index f3024b03ff7709893d6e39f54504597bb59f5315..f6360f2973c03e0105361f9e001360ec public void doTick() { diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 9c5f191205b5f413890e78e316a08e6f5542bdc1..422c06e58f8dce24127a2178d3d23cdd034a2369 100644 +index 564ded1c42675917915f70de6c62324641aba5af..d598c5097a96fae63e146857fe9e7173e3e8c831 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -716,7 +716,6 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic @@ -2076,7 +2076,7 @@ index b05b560b7570e97bc234b75f26233909fcf575b3..7df3ee0f4b1a467d95f3eade65c0846b return "entity.minecraft.tropical_fish.predefined." + variant; } diff --git a/src/main/java/net/minecraft/world/entity/animal/Turtle.java b/src/main/java/net/minecraft/world/entity/animal/Turtle.java -index 25503678e7d049a8b3172cfad8a5606958c32302..1d188320b10a640e4667b775e996b4fcdd5a1e73 100644 +index 7f9ec1888eb9c02705426d60cf4e3aa7c6d43115..aec5d241d6461b93e1776615bfa882c89ca5836a 100644 --- a/src/main/java/net/minecraft/world/entity/animal/Turtle.java +++ b/src/main/java/net/minecraft/world/entity/animal/Turtle.java @@ -82,6 +82,23 @@ public class Turtle extends Animal { @@ -2329,7 +2329,7 @@ index 02219f5ca614fefffa1ceb3c7036dfe1c90c8676..ac7b58d4ad0e3c3d3fe8aaf7a6b42377 } diff --git a/src/main/java/net/minecraft/world/entity/animal/frog/Frog.java b/src/main/java/net/minecraft/world/entity/animal/frog/Frog.java -index 0a051c7e7f5a172a9b906de04ef2a0419eda26eb..844004cefd85fdc3fb1628449e8452bd6207a77b 100644 +index d1cc0ffd153c0902f0110adbbcd98f1d2089fa27..645e2446d1a68ea9c2ba0c2f7cb8117cc00bace9 100644 --- a/src/main/java/net/minecraft/world/entity/animal/frog/Frog.java +++ b/src/main/java/net/minecraft/world/entity/animal/frog/Frog.java @@ -84,16 +84,65 @@ public class Frog extends Animal implements VariantHolder { @@ -2399,7 +2399,7 @@ index 0a051c7e7f5a172a9b906de04ef2a0419eda26eb..844004cefd85fdc3fb1628449e8452bd @Override protected Brain.Provider brainProvider() { return Brain.provider(MEMORY_TYPES, SENSOR_TYPES); -@@ -383,7 +432,7 @@ public class Frog extends Animal implements VariantHolder { +@@ -394,7 +443,7 @@ public class Frog extends Animal implements VariantHolder { return world.getBlockState(pos.below()).is(BlockTags.FROGS_SPAWNABLE_ON) && isBrightEnoughToSpawn(world, pos); } @@ -2928,7 +2928,7 @@ index c7caaebfb4b9f28cbe700d88fdcf232a500e8ca7..7506ba57b1e5488d50ee577ed6147e7f this.dragonFight.updateDragon(this); } diff --git a/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java b/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java -index b781c849737225c00f1dd8d45a6d08cebc000263..7b715180a95e6990581ce28621f2176078ba14c2 100644 +index 08a432f76a72ad628b8febe393196286182fbe07..2be183e14940c1fda9a6536f55b2400ffa3938cf 100644 --- a/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java +++ b/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java @@ -83,16 +83,30 @@ public class WitherBoss extends Monster implements PowerableMob, RangedAttackMob @@ -4094,7 +4094,7 @@ index cec545c3baa6599d47b9cf1a4b97de8771062a22..a12352cb50edd8bd7a8f514e714e352b this.targetSelector.addGoal(2, new NearestAttackableTargetGoal<>(this, Player.class, true)); this.targetSelector.addGoal(3, new NearestAttackableTargetGoal<>(this, AbstractVillager.class, false)); diff --git a/src/main/java/net/minecraft/world/entity/monster/Ravager.java b/src/main/java/net/minecraft/world/entity/monster/Ravager.java -index 6a0b4f86e5157494a917cf5efecb730081bae628..e497d0ff3cafd16d3aed9a858a506d1c6f4e140a 100644 +index 40443f7d0c9f5697f529bfbbd16695c00bbd7322..27dd3f7c3fa5e7602d87976be7d00ce9d9cb9be2 100644 --- a/src/main/java/net/minecraft/world/entity/monster/Ravager.java +++ b/src/main/java/net/minecraft/world/entity/monster/Ravager.java @@ -69,14 +69,39 @@ public class Ravager extends Raider { @@ -5115,7 +5115,7 @@ index e92e6fb4cf97f4d5406b5b5d5786bfa5fb55f536..64fb6f2ea7b792d131feca7278034336 this.setTradingPlayer(player); this.openTradingScreen(player, this.getDisplayName(), 1); diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java -index f6e4194856d4a2710a169b5823e74da1ba2c9130..bc9198a76f6b5aa5d526882e214d731d5b06f52b 100644 +index 1116116e4ba6c5ecec400cd371b70b9e14efd92b..34906d3237388d548604de2577f64ff084ed0838 100644 --- a/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java @@ -194,6 +194,19 @@ public abstract class Player extends LivingEntity { @@ -5156,10 +5156,10 @@ index 4132c1113f5437a776e5e3c1cb306904775aed88..1a945a32c3d3705a318ebca72a365931 public void tick() { super.tick(); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -index 78f53ee557276de85f0431ebcb146445b1f4fb92..ba898640a8f693e8bae43281b170d3505154b273 100644 +index 750ac80eed6ba03e138dd4c03f57ddfe4a123276..6cb23251487a1e61cef636b631145421527d1d80 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -@@ -1404,4 +1404,27 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { +@@ -1407,4 +1407,27 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { return !this.getHandle().level.noCollision(this.getHandle(), aabb); } // Paper End - Collision API diff --git a/patches/server/0012-AFK-API.patch b/patches/server/0012-AFK-API.patch index efddc41dd..84a304d2c 100644 --- a/patches/server/0012-AFK-API.patch +++ b/patches/server/0012-AFK-API.patch @@ -5,7 +5,7 @@ Subject: [PATCH] AFK API diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index e036f9d554a5871a56f21917a8222a6463f594b0..7107c727d241859c475d609974e3bb3fb7f15974 100644 +index 19cff8ba18d28f4c7cc7dfc71ce6ce3501b7bcb8..4f25737b205ed299d02a2a763c7add71eaba0569 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java @@ -2051,8 +2051,63 @@ public class ServerPlayer extends Player { @@ -73,7 +73,7 @@ index e036f9d554a5871a56f21917a8222a6463f594b0..7107c727d241859c475d609974e3bb3f return this.stats; } diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 422c06e58f8dce24127a2178d3d23cdd034a2369..96dbffd6e892734a120bcb3b19bd15bdf027df8f 100644 +index d598c5097a96fae63e146857fe9e7173e3e8c831..d5537a7125b57b2bf24523213d2274fcd588959a 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -335,6 +335,20 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic @@ -218,7 +218,7 @@ index 3b959f42d958bf0f426853aee56753d6c455fcdb..d17abb283ea818244df0379d6b57fc63 if (range < 0.0D || d < range * range) { return true; diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index b3135e6d66fe8f176a98adb8230e788c4c0d662e..7c5cab418adbac2d8e84338e7851b6b626840d5a 100644 +index 09ff0a13bbd295174809e21e2665b8a133851c06..27bb2aa985e8b2834712797119dbd692e50ad40e 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -524,10 +524,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @@ -238,7 +238,7 @@ index b3135e6d66fe8f176a98adb8230e788c4c0d662e..7c5cab418adbac2d8e84338e7851b6b6 for (ServerPlayer player : (List) server.getHandle().players) { if (player.getBukkitEntity().canSee(this)) { player.connection.send(new ClientboundPlayerInfoUpdatePacket(ClientboundPlayerInfoUpdatePacket.Action.UPDATE_DISPLAY_NAME, this.getHandle())); -@@ -3064,5 +3069,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -3072,5 +3077,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player { public boolean usesPurpurClient() { return getHandle().purpurClient; } diff --git a/patches/server/0013-Bring-back-server-name.patch b/patches/server/0013-Bring-back-server-name.patch index 2366e99ce..77a1b85e9 100644 --- a/patches/server/0013-Bring-back-server-name.patch +++ b/patches/server/0013-Bring-back-server-name.patch @@ -17,10 +17,10 @@ index c7e4330c93baff1f3027d7c75cf857b673d38970..5134fed0cd0eedbe0c2177bce91b978b public final boolean spawnNpcs = this.get("spawn-npcs", true); public final boolean pvp = this.get("pvp", true); diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 234ba3e20fd79040c1386a5c5a47a924b3d42164..ca3bb446e7f4e1585b06f462ec6844956e2a0ee6 100644 +index fdb314838159f77b3fb12d61e74d12f582fb2bcf..72d52c43947616dc81fbbd7926d2028be3ffcce4 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -2942,4 +2942,11 @@ public final class CraftServer implements Server { +@@ -2941,4 +2941,11 @@ public final class CraftServer implements Server { } // Paper end diff --git a/patches/server/0016-Lagging-threshold.patch b/patches/server/0016-Lagging-threshold.patch index b92b47280..093cab99f 100644 --- a/patches/server/0016-Lagging-threshold.patch +++ b/patches/server/0016-Lagging-threshold.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Lagging threshold diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 70d3fc30e21a6c3c3d7a87ce2e43dd2eb8322b2c..7c731c72a19c43f4b291557310c632f3d1fcc9cb 100644 +index 1940c348b236c195bb94e39c6deba972093c0c8f..3dd4ae421574453ffe346a12fd4f036bda335307 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -305,6 +305,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop transaction = new java.util.ArrayList(); diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index e8bae4faae8046ee0c59822db72e8dfeb311314f..b9577cfb29f4339622548ad95dbb0130d6a36798 100644 +index 4eef27a4ee5dadd21963e5220deb441ee5e07aef..ad29585f35a407afb3c383f5006ed9eacfb53c72 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -1437,6 +1437,19 @@ public final class CraftServer implements Server { +@@ -1436,6 +1436,19 @@ public final class CraftServer implements Server { return true; } diff --git a/patches/server/0246-Allow-void-trading.patch b/patches/server/0246-Allow-void-trading.patch index 3147c587b..aed6bd06c 100644 --- a/patches/server/0246-Allow-void-trading.patch +++ b/patches/server/0246-Allow-void-trading.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Allow void trading diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index 03a9441b78d1470bbb460239cbe20478042bc02e..077ff3d7620e3c48aca59a92014dbdb7de15e79a 100644 +index 2341bbc49b721867c3aa3ce86790feecb185bca9..0edec861c4d585a3cc9a1438125bdda86fbab5c1 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java -@@ -2682,7 +2682,7 @@ public class ServerLevel extends Level implements WorldGenLevel { +@@ -2683,7 +2683,7 @@ public class ServerLevel extends Level implements WorldGenLevel { // Spigot Start if (entity.getBukkitEntity() instanceof org.bukkit.inventory.InventoryHolder && (!(entity instanceof ServerPlayer) || entity.getRemovalReason() != Entity.RemovalReason.KILLED)) { // SPIGOT-6876: closeInventory clears death message // Paper start @@ -18,7 +18,7 @@ index 03a9441b78d1470bbb460239cbe20478042bc02e..077ff3d7620e3c48aca59a92014dbdb7 } // Paper end diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 8795723d10d09d4fcd1dc399ecac75f3ba7c3b63..eb1d8693b3495c18c80f13174c1b3a5bf757b9ff 100644 +index 9e8042fa9062e461d736836d4989f8f2dc429258..f8329a1949013494cedc914c3d1c3e7fad3f1568 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -424,6 +424,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0276-Allow-custom-ChatDecorators.patch b/patches/server/0276-Allow-custom-ChatDecorators.patch index e8799ed2c..c71b9c5b3 100644 --- a/patches/server/0276-Allow-custom-ChatDecorators.patch +++ b/patches/server/0276-Allow-custom-ChatDecorators.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Allow custom ChatDecorators Requires NMS to utilize. I'll write an API for this once our upstreams calm down with the changes. diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 15285d2b132a82a7b7f9c2c558e1157b7585d43f..7b37dc81bca016ecad7a89013326053f74ba0ca1 100644 +index 97e44fdefd9027dc49dd70673cfef49bfe5d59e5..b6231080a76e71c4d9f8ced2063d798b55c6e878 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java -@@ -2637,6 +2637,15 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop { this.executeBlocking(() -> { this.saveDebugReport(path.resolve("server")); -@@ -2512,40 +2512,40 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop { diff --git a/patches/server/0282-Debug-Marker-API.patch b/patches/server/0282-Debug-Marker-API.patch index cad27bd6f..76db30253 100644 --- a/patches/server/0282-Debug-Marker-API.patch +++ b/patches/server/0282-Debug-Marker-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Debug Marker API diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index b9577cfb29f4339622548ad95dbb0130d6a36798..612ffc2922a73fba2b9e0b9aa341dcca1c359008 100644 +index ad29585f35a407afb3c383f5006ed9eacfb53c72..a3db3b591dc75e9e904e395d56b9c6cf03b5dafe 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -1448,6 +1448,42 @@ public final class CraftServer implements Server { +@@ -1447,6 +1447,42 @@ public final class CraftServer implements Server { public void removeFuel(org.bukkit.Material material) { net.minecraft.world.level.block.entity.AbstractFurnaceBlockEntity.removeFuel(net.minecraft.world.item.ItemStack.fromBukkitCopy(new ItemStack(material))); } @@ -52,7 +52,7 @@ index b9577cfb29f4339622548ad95dbb0130d6a36798..612ffc2922a73fba2b9e0b9aa341dcca @Override diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index ba570a518f2bcdb23fd2118663c2b82e7484629d..9b5323edd99848b73ea0e34230e7bec8dc23be8c 100644 +index 331646e5be8c626d75738cb05742d31e909efb8f..6a327616cd590b70170f8441c003a2109640201d 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -2257,6 +2257,42 @@ public class CraftWorld extends CraftRegionAccessor implements World { @@ -99,10 +99,10 @@ index ba570a518f2bcdb23fd2118663c2b82e7484629d..9b5323edd99848b73ea0e34230e7bec8 @Override diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index ddf2c679ada43bfb209656dbcaca0fa8aef8ed24..660a2a8d17325014cc3f8ba33faaadc6fb5b80eb 100644 +index 171ba11eefe137f8bb88c7e3e1ac0f2a3efc3474..f3e849827c091adfa19c206d63ccd265897062ef 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -3125,5 +3125,48 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -3133,5 +3133,48 @@ public class CraftPlayer extends CraftHumanEntity implements Player { public void setSpawnInvulnerableTicks(int spawnInvulnerableTime) { getHandle().spawnInvulnerableTime = spawnInvulnerableTime; } diff --git a/patches/server/0287-Add-death-screen-API.patch b/patches/server/0287-Add-death-screen-API.patch index 996c45ce7..801eb76d0 100644 --- a/patches/server/0287-Add-death-screen-API.patch +++ b/patches/server/0287-Add-death-screen-API.patch @@ -30,10 +30,10 @@ index 53b75f5737a910ffc5448cd9a85eae57f9c1488f..ea95873dd034779e56a8b924cd27f937 } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 660a2a8d17325014cc3f8ba33faaadc6fb5b80eb..b2e4eac89fb2dc223c2b2ae8e36fe430f3f689c5 100644 +index f3e849827c091adfa19c206d63ccd265897062ef..4bce90ba8d2316fad9a8f89f06d17325d353667f 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -3168,5 +3168,18 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -3176,5 +3176,18 @@ public class CraftPlayer extends CraftHumanEntity implements Player { if (this.getHandle().connection == null) return; this.getHandle().connection.send(new net.minecraft.network.protocol.game.ClientboundCustomPayloadPacket(ClientboundCustomPayloadPacket.DEBUG_GAME_TEST_CLEAR, new FriendlyByteBuf(io.netty.buffer.Unpooled.buffer()))); } diff --git a/patches/server/0295-Language-API.patch b/patches/server/0295-Language-API.patch index 79b1c3e82..b4be9268c 100644 --- a/patches/server/0295-Language-API.patch +++ b/patches/server/0295-Language-API.patch @@ -5,13 +5,13 @@ Subject: [PATCH] Language API diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 2bdabca25c75cbee0f53c1d50a07202bac9e1550..e5b5510806d183944f0ac926604e86f3b3dc1d7a 100644 +index a3db3b591dc75e9e904e395d56b9c6cf03b5dafe..584596c8849b4dd7f955216f313eefb3229b375c 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -322,6 +322,20 @@ public final class CraftServer implements Server { +@@ -321,6 +321,20 @@ public final class CraftServer implements Server { + this.structureManager = new CraftStructureManager(console.getStructureManager()); Bukkit.setServer(this); - io.papermc.paper.world.structure.PaperConfiguredStructure.init(); // Paper + // Purpur start + org.purpurmc.purpur.language.Language.setLanguage(new org.purpurmc.purpur.language.Language() { + private net.minecraft.locale.Language language = net.minecraft.locale.Language.getInstance(); diff --git a/patches/server/0301-Fire-Immunity-API.patch b/patches/server/0301-Fire-Immunity-API.patch index 3f001b2f5..08039cb29 100644 --- a/patches/server/0301-Fire-Immunity-API.patch +++ b/patches/server/0301-Fire-Immunity-API.patch @@ -50,10 +50,10 @@ index b54cabc765c187cd1788cc61dc2719096aa74db3..01944f4684cc47f22fd448112be1a160 } catch (Throwable throwable) { CrashReport crashreport = CrashReport.forThrowable(throwable, "Loading entity NBT"); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -index 62ef6f620608f9b1147f525f5cc1540f72b8d4b1..d1c16a80c2cc4f0e96f3a7f04e5bc69657206f97 100644 +index 4c570bf2404672dc81413b283286a908545fe2e2..2d5b125b6420ceb3deb5c05fadae458189fe1c0d 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -@@ -1435,5 +1435,15 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { +@@ -1438,5 +1438,15 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { public boolean isRidableInWater() { return getHandle().rideableUnderWater(); }