diff --git a/gradle.properties b/gradle.properties index 4b02688ad..499129b3e 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,7 +1,7 @@ group = org.purpurmc.purpur version = 1.19.4-R0.1-SNAPSHOT -paperCommit = d5abb94e69ceed6e73116c13e7634b57b5ad84cf +paperCommit = fbf74ba0ac016c408bbec28e7da317b68a81e2e1 org.gradle.caching = true org.gradle.parallel = true diff --git a/patches/server/0005-Purpur-client-support.patch b/patches/server/0005-Purpur-client-support.patch index ca5f08cf8..6813801d8 100644 --- a/patches/server/0005-Purpur-client-support.patch +++ b/patches/server/0005-Purpur-client-support.patch @@ -5,10 +5,10 @@ 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 ca5291a9573a62cb5c19539cf5c7aceff11f9829..98d92f6d6a98d66e369286b079db2c4db0bd5298 100644 +index 1d4d02f26391ac55c7631817f09d05e2769b0d29..b1c0f5743dfe87e359dbd3a451367aa8a66e57f0 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -274,6 +274,7 @@ public class ServerPlayer extends Player { +@@ -275,6 +275,7 @@ public class ServerPlayer extends Player { public final com.destroystokyo.paper.util.misc.PooledLinkedHashSets.PooledObjectLinkedOpenHashSet cachedSingleHashSet; // Paper public PlayerNaturallySpawnCreaturesEvent playerNaturallySpawnedEvent; // Paper 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 @@ -43,10 +43,10 @@ index 24d48fb4a63c2db19c7f957ad2260415fe1db9fe..56b9a7059e3b9c2bc66961cb50bc6be3 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 1bada55af5d16437da4d16f9ded55f88a6121eb4..18a32f55727283f73f8d0089a4b1784ae8248076 100644 +index 0ae1fce0c1a2e3bfbbab756a088fc76545e263fa..7188e31ade709b244d378a685a7188c5aa7dd279 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -3148,4 +3148,11 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -3158,4 +3158,11 @@ public class CraftPlayer extends CraftHumanEntity implements Player { return this.spigot; } // Spigot end diff --git a/patches/server/0007-Component-related-conveniences.patch b/patches/server/0007-Component-related-conveniences.patch index e214359c6..ad2115601 100644 --- a/patches/server/0007-Component-related-conveniences.patch +++ b/patches/server/0007-Component-related-conveniences.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Component related conveniences diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 4b2806b26ad712eb893b8b9702cf185792354435..1b3a4928aba578b402e4364aa6501b5445e0669f 100644 +index b1c0f5743dfe87e359dbd3a451367aa8a66e57f0..01e52ea23d5481c2df79d2c899b4febf3f4a8948 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -1716,6 +1716,26 @@ public class ServerPlayer extends Player { +@@ -1727,6 +1727,26 @@ public class ServerPlayer extends Player { this.lastSentExp = -1; // CraftBukkit - Added to reset } diff --git a/patches/server/0008-Ridables.patch b/patches/server/0008-Ridables.patch index a5148924b..33604013d 100644 --- a/patches/server/0008-Ridables.patch +++ b/patches/server/0008-Ridables.patch @@ -46,10 +46,10 @@ index 87d6b8e0cd8fec7959fb052dce1b73feb8cdb967..b40bc54e80dadc8eb426ed6217b87963 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 1b3a4928aba578b402e4364aa6501b5445e0669f..94408cb56dcc229ae59ab8e682c803faaecfec5c 100644 +index 01e52ea23d5481c2df79d2c899b4febf3f4a8948..d59e49a4958ebfb2ce0b9ca127b5a98fc5d88804 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -707,6 +707,15 @@ public class ServerPlayer extends Player { +@@ -708,6 +708,15 @@ public class ServerPlayer extends Player { this.trackStartFallingPosition(); this.trackEnteredOrExitedLavaOnVehicle(); this.advancements.flushDirty(this); @@ -5079,7 +5079,7 @@ index c9fb50c33ac15fe72bc77167e4647f30942fdc5d..89ec1e52f91c2e4cd17eeaa23cab366c 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 2b02800666b358159c8ecb63208a14855f90657b..9cccd24c096caa7a78f2bafabf0760c7a9112fdb 100644 +index 0629c471d38a77c44fc1c86ccdfcb0690f61ca17..ffcc81c07b5aa45d1471e05676f43e96db13b045 100644 --- a/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java @@ -197,6 +197,19 @@ public abstract class Player extends LivingEntity { diff --git a/patches/server/0012-AFK-API.patch b/patches/server/0012-AFK-API.patch index e5df3552b..df4e147ed 100644 --- a/patches/server/0012-AFK-API.patch +++ b/patches/server/0012-AFK-API.patch @@ -5,10 +5,10 @@ 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 8fa36563e130f8af0fc60d84d08134fa54c4ca53..dae286863e7bf9316b23724f14d0f22f522cad4a 100644 +index d59e49a4958ebfb2ce0b9ca127b5a98fc5d88804..71905201cd42094fa3f545f29ada0f7ebcd7c21d 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -2058,8 +2058,63 @@ public class ServerPlayer extends Player { +@@ -2069,8 +2069,63 @@ public class ServerPlayer extends Player { public void resetLastActionTime() { this.lastActionTime = Util.getMillis(); @@ -187,7 +187,7 @@ index e752c83df50fb9b670ecea2abc95426c2a009b6f..baa4f9026d31de92210300ecb8ee8c1b if (baseEntity == null) { if (this.isCombat && (!targetEntity.canBeSeenAsEnemy() || targetEntity.level.getDifficulty() == Difficulty.PEACEFUL)) { 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 65cdd155dc71cf0866a28714dc2c6a92886f2755..21da282c50a31d0d9a59bc93e6c60afe37950900 100644 +index 5cc0b0754feb9a78b8a71e0cb22d2a29243ba3d2..05106a3bd2284d1ab25067241248238bb69d4610 100644 --- a/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java @@ -201,6 +201,13 @@ public abstract class Player extends LivingEntity { @@ -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 18a32f55727283f73f8d0089a4b1784ae8248076..2d1ff613dabbc6ae247caf03e79bb7033c28c739 100644 +index 7188e31ade709b244d378a685a7188c5aa7dd279..5e5062648d0822f9364dbefddb3f496f39001e23 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -525,10 +525,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @@ -238,7 +238,7 @@ index 18a32f55727283f73f8d0089a4b1784ae8248076..2d1ff613dabbc6ae247caf03e79bb703 for (ServerPlayer player : (List) server.getHandle().players) { if (player.getBukkitEntity().canSee(this)) { player.connection.send(new ClientboundPlayerInfoUpdatePacket(ClientboundPlayerInfoUpdatePacket.Action.UPDATE_DISPLAY_NAME, this.getHandle())); -@@ -3154,5 +3159,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -3164,5 +3169,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player { public boolean usesPurpurClient() { return getHandle().purpurClient; } diff --git a/patches/server/0018-Player-invulnerabilities.patch b/patches/server/0018-Player-invulnerabilities.patch index 29cb09f94..f44536858 100644 --- a/patches/server/0018-Player-invulnerabilities.patch +++ b/patches/server/0018-Player-invulnerabilities.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Player invulnerabilities diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index dae286863e7bf9316b23724f14d0f22f522cad4a..90baf612964501ce7048610f62e538946c420174 100644 +index 71905201cd42094fa3f545f29ada0f7ebcd7c21d..f5c5ed6cfb963ad2b5612fd7623d5e0f3ea058bb 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -275,6 +275,7 @@ public class ServerPlayer extends Player { +@@ -276,6 +276,7 @@ public class ServerPlayer extends Player { public PlayerNaturallySpawnCreaturesEvent playerNaturallySpawnedEvent; // Paper 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 boolean purpurClient = false; // Purpur @@ -16,7 +16,7 @@ index dae286863e7bf9316b23724f14d0f22f522cad4a..90baf612964501ce7048610f62e53894 public ServerPlayer(MinecraftServer server, ServerLevel world, GameProfile profile) { super(world, world.getSharedSpawnPos(), world.getSharedSpawnAngle(), profile); -@@ -374,6 +375,7 @@ public class ServerPlayer extends Player { +@@ -375,6 +376,7 @@ public class ServerPlayer extends Player { this.bukkitPickUpLoot = true; this.maxHealthCache = this.getMaxHealth(); this.cachedSingleMobDistanceMap = new com.destroystokyo.paper.util.PooledHashSets.PooledObjectLinkedOpenHashSet<>(this); // Paper @@ -24,7 +24,7 @@ index dae286863e7bf9316b23724f14d0f22f522cad4a..90baf612964501ce7048610f62e53894 } // Yes, this doesn't match Vanilla, but it's the best we can do for now. -@@ -1055,6 +1057,12 @@ public class ServerPlayer extends Player { +@@ -1056,6 +1058,12 @@ public class ServerPlayer extends Player { } @@ -37,7 +37,7 @@ index dae286863e7bf9316b23724f14d0f22f522cad4a..90baf612964501ce7048610f62e53894 @Override public boolean hurt(DamageSource source, float amount) { if (this.isInvulnerableTo(source)) { -@@ -1062,7 +1070,7 @@ public class ServerPlayer extends Player { +@@ -1063,7 +1071,7 @@ public class ServerPlayer extends Player { } else { boolean flag = this.server.isDedicatedServer() && this.isPvpAllowed() && source.is(DamageTypeTags.IS_FALL); @@ -46,7 +46,7 @@ index dae286863e7bf9316b23724f14d0f22f522cad4a..90baf612964501ce7048610f62e53894 return false; } else { Entity entity = source.getEntity(); -@@ -1242,6 +1250,7 @@ public class ServerPlayer extends Player { +@@ -1243,6 +1251,7 @@ public class ServerPlayer extends Player { } // Paper end @@ -54,7 +54,7 @@ index dae286863e7bf9316b23724f14d0f22f522cad4a..90baf612964501ce7048610f62e53894 return this; } } -@@ -2044,6 +2053,7 @@ public class ServerPlayer extends Player { +@@ -2055,6 +2064,7 @@ public class ServerPlayer extends Player { } public void sendTexturePack(String url, String hash, boolean required, @Nullable Component resourcePackPrompt) { @@ -62,7 +62,7 @@ index dae286863e7bf9316b23724f14d0f22f522cad4a..90baf612964501ce7048610f62e53894 this.connection.send(new ClientboundResourcePackPacket(url, hash, required, resourcePackPrompt)); } -@@ -2575,9 +2585,17 @@ public class ServerPlayer extends Player { +@@ -2586,9 +2596,17 @@ public class ServerPlayer extends Player { @Override public boolean isImmobile() { @@ -121,10 +121,10 @@ index 86a1f0733ed2aabe09fc748bdf9561d9b9a8286e..3ed1af31cf0beb945699480bca104e7a return entityplayer1; } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 2d1ff613dabbc6ae247caf03e79bb7033c28c739..254d91e2a06186d602f7edae7a46b0e4ee9be662 100644 +index 5e5062648d0822f9364dbefddb3f496f39001e23..0ed68ef0152b36960d74e9d7f0466cf09eaacfac 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -3174,5 +3174,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -3184,5 +3184,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player { public void resetIdleTimer() { getHandle().resetLastActionTime(); } diff --git a/patches/server/0043-Minecart-settings-and-WASD-controls.patch b/patches/server/0043-Minecart-settings-and-WASD-controls.patch index 25f3cbc52..c74772835 100644 --- a/patches/server/0043-Minecart-settings-and-WASD-controls.patch +++ b/patches/server/0043-Minecart-settings-and-WASD-controls.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Minecart settings and WASD controls diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 90baf612964501ce7048610f62e538946c420174..60485e1d5abcc01698f364592d43d5dbc461cb7f 100644 +index f5c5ed6cfb963ad2b5612fd7623d5e0f3ea058bb..48118c5121e2a2f728d2121e5206c9aa71448145 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -1068,6 +1068,7 @@ public class ServerPlayer extends Player { +@@ -1069,6 +1069,7 @@ public class ServerPlayer extends Player { if (this.isInvulnerableTo(source)) { return false; } else { diff --git a/patches/server/0056-Add-player-death-exp-control-options.patch b/patches/server/0056-Add-player-death-exp-control-options.patch index 472ab1d2d..54dc83045 100644 --- a/patches/server/0056-Add-player-death-exp-control-options.patch +++ b/patches/server/0056-Add-player-death-exp-control-options.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add player death exp control options 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 21da282c50a31d0d9a59bc93e6c60afe37950900..9e4a8278ef601b17311ba53cb187329a434f7bab 100644 +index 05106a3bd2284d1ab25067241248238bb69d4610..cd5d9b5e6853cebb556c347ebdcb0ec912a61f87 100644 --- a/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java -@@ -1965,9 +1965,19 @@ public abstract class Player extends LivingEntity { +@@ -1971,9 +1971,19 @@ public abstract class Player extends LivingEntity { @Override public int getExperienceReward() { if (!this.level.getGameRules().getBoolean(GameRules.RULE_KEEPINVENTORY) && !this.isSpectator()) { diff --git a/patches/server/0061-Mending-mends-most-damages-equipment-first.patch b/patches/server/0061-Mending-mends-most-damages-equipment-first.patch index 965378cc9..cf2606c40 100644 --- a/patches/server/0061-Mending-mends-most-damages-equipment-first.patch +++ b/patches/server/0061-Mending-mends-most-damages-equipment-first.patch @@ -18,10 +18,10 @@ index 2d3994de8e40eedc78c27ea842b6265b1c5ea822..7043f15f84d6c847bf376025c8e2150b if (entry != null) { ItemStack itemstack = (ItemStack) entry.getValue(); diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index a6253272205337b3b855679b3057c2519a807a4c..d3483aef38a10f70fc89c1fa538add28565bcda4 100644 +index d690b8d0c1da1f56b226376df8c76c34375e3c73..b7f234011011f8d74a65c2501c5855994bb70c3a 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java -@@ -558,6 +558,16 @@ public final class ItemStack { +@@ -559,6 +559,16 @@ public final class ItemStack { return this.isDamageableItem() && this.getDamageValue() > 0; } diff --git a/patches/server/0063-Implement-elytra-settings.patch b/patches/server/0063-Implement-elytra-settings.patch index 73bf9d71f..faef2ca54 100644 --- a/patches/server/0063-Implement-elytra-settings.patch +++ b/patches/server/0063-Implement-elytra-settings.patch @@ -54,10 +54,10 @@ index 82b0bda3e35ec2157a477e1a17b2b46baadc97d9..0fc45b1048a1c4e0dc2bd1ae0437eecb itemStack.shrink(1); } else ((net.minecraft.server.level.ServerPlayer) user).getBukkitEntity().updateInventory(); diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index d3483aef38a10f70fc89c1fa538add28565bcda4..e94caaea775b8804b9f685a465139aac40c8b4cc 100644 +index b7f234011011f8d74a65c2501c5855994bb70c3a..a6a54269a1a6028a730b56e964a465452f70ec86 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java -@@ -587,7 +587,7 @@ public final class ItemStack { +@@ -588,7 +588,7 @@ public final class ItemStack { int j; if (amount > 0) { @@ -66,7 +66,7 @@ index d3483aef38a10f70fc89c1fa538add28565bcda4..e94caaea775b8804b9f685a465139aac int k = 0; for (int l = 0; j > 0 && l < amount; ++l) { -@@ -642,6 +642,12 @@ public final class ItemStack { +@@ -643,6 +643,12 @@ public final class ItemStack { if (this.hurt(amount, entity.getRandom(), entity /*instanceof ServerPlayer ? (ServerPlayer) entity : null*/)) { // Paper - pass LivingEntity for EntityItemDamageEvent breakCallback.accept(entity); Item item = this.getItem(); diff --git a/patches/server/0076-Add-option-to-teleport-to-spawn-if-outside-world-bor.patch b/patches/server/0076-Add-option-to-teleport-to-spawn-if-outside-world-bor.patch index f1d60267a..8dc7c949e 100644 --- a/patches/server/0076-Add-option-to-teleport-to-spawn-if-outside-world-bor.patch +++ b/patches/server/0076-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/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 60485e1d5abcc01698f364592d43d5dbc461cb7f..8dfc4763df3cd207e7200828f8237f680b47f986 100644 +index 48118c5121e2a2f728d2121e5206c9aa71448145..8b113b7ac096e6237577685a4f1961a757a5b7fa 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -2644,4 +2644,26 @@ public class ServerPlayer extends Player { +@@ -2655,4 +2655,26 @@ public class ServerPlayer extends Player { return (CraftPlayer) super.getBukkitEntity(); } // CraftBukkit end diff --git a/patches/server/0112-Add-boat-fall-damage-config.patch b/patches/server/0112-Add-boat-fall-damage-config.patch index 26e04811d..4a0e66c45 100644 --- a/patches/server/0112-Add-boat-fall-damage-config.patch +++ b/patches/server/0112-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/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 8dfc4763df3cd207e7200828f8237f680b47f986..d15b29153d8112ed59ce38ab37142208551178b4 100644 +index 8b113b7ac096e6237577685a4f1961a757a5b7fa..ead34927019224e76063ac1a040dea78022fb36a 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -1068,7 +1068,16 @@ public class ServerPlayer extends Player { +@@ -1069,7 +1069,16 @@ public class ServerPlayer extends Player { if (this.isInvulnerableTo(source)) { return false; } else { diff --git a/patches/server/0121-Implement-TPSBar.patch b/patches/server/0121-Implement-TPSBar.patch index b89820e38..c4aae3a27 100644 --- a/patches/server/0121-Implement-TPSBar.patch +++ b/patches/server/0121-Implement-TPSBar.patch @@ -42,10 +42,10 @@ index ca6a2fee12ac8a89dae57aa2787462f190463cd0..e0b2819d6c73a9ca1fa60ff71d29e201 } } diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index d15b29153d8112ed59ce38ab37142208551178b4..7a9b5f6665e910f12bcc9d3ade8534a93aa09dd9 100644 +index ead34927019224e76063ac1a040dea78022fb36a..adceeb21805e207b0bc0cfa0035eefcb82029311 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -276,6 +276,7 @@ public class ServerPlayer extends Player { +@@ -277,6 +277,7 @@ public class ServerPlayer extends Player { 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 boolean purpurClient = false; // Purpur public boolean acceptingResourcePack = false; // Purpur @@ -53,7 +53,7 @@ index d15b29153d8112ed59ce38ab37142208551178b4..7a9b5f6665e910f12bcc9d3ade8534a9 public ServerPlayer(MinecraftServer server, ServerLevel world, GameProfile profile) { super(world, world.getSharedSpawnPos(), world.getSharedSpawnAngle(), profile); -@@ -515,6 +516,7 @@ public class ServerPlayer extends Player { +@@ -516,6 +517,7 @@ public class ServerPlayer extends Player { } } @@ -61,7 +61,7 @@ index d15b29153d8112ed59ce38ab37142208551178b4..7a9b5f6665e910f12bcc9d3ade8534a9 } @Override -@@ -581,6 +583,7 @@ public class ServerPlayer extends Player { +@@ -582,6 +584,7 @@ public class ServerPlayer extends Player { } this.getBukkitEntity().setExtraData(nbt); // CraftBukkit @@ -69,7 +69,7 @@ index d15b29153d8112ed59ce38ab37142208551178b4..7a9b5f6665e910f12bcc9d3ade8534a9 } // CraftBukkit start - World fallback code, either respawn location or global spawn -@@ -2674,5 +2677,13 @@ public class ServerPlayer extends Player { +@@ -2685,5 +2688,13 @@ public class ServerPlayer extends Player { this.server.getPlayerList().respawn(this, toLevel, true, to, !toLevel.paperConfig().environment.disableTeleportationSuffocationCheck); } } diff --git a/patches/server/0131-Fix-stuck-in-portals.patch b/patches/server/0131-Fix-stuck-in-portals.patch index 8feb54536..3c6d6534c 100644 --- a/patches/server/0131-Fix-stuck-in-portals.patch +++ b/patches/server/0131-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/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 7a9b5f6665e910f12bcc9d3ade8534a93aa09dd9..bc2c592a416c64619527bf5d1040f4a2523b2bfb 100644 +index adceeb21805e207b0bc0cfa0035eefcb82029311..5f616eba7aa8c6ece6999e4d45e107a66d822132 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -1227,6 +1227,7 @@ public class ServerPlayer extends Player { +@@ -1228,6 +1228,7 @@ public class ServerPlayer extends Player { playerlist.sendPlayerPermissionLevel(this); worldserver1.removePlayerImmediately(this, Entity.RemovalReason.CHANGED_DIMENSION); this.unsetRemoved(); @@ -17,7 +17,7 @@ index 7a9b5f6665e910f12bcc9d3ade8534a93aa09dd9..bc2c592a416c64619527bf5d1040f4a2 // CraftBukkit end this.setLevel(worldserver); diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index a1a7efb5cc2859c40ae99e13032b5da62974122b..ada853423c30e96257405b55d12afef60df9acfb 100644 +index 8d5557f11c4f240b301961de894312869fcc5e07..7dc06fc1a8074881c65618a0252939c3c7eb0100 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -2937,12 +2937,15 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { @@ -37,7 +37,7 @@ index a1a7efb5cc2859c40ae99e13032b5da62974122b..ada853423c30e96257405b55d12afef6 this.isInsidePortal = true; diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 98b72e5d2492391aaabb002521ab41e14ea12525..a329762e693829a7d80390163f6d8b960cc825d9 100644 +index 8d292ba6aa30f4882fb3d0c81d4e583f1491c579..418e36a220f9f28785e5ed9210883ea59a69131e 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -337,6 +337,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0139-Config-to-ignore-nearby-mobs-when-sleeping.patch b/patches/server/0139-Config-to-ignore-nearby-mobs-when-sleeping.patch index 68ad86f20..1f62dd14c 100644 --- a/patches/server/0139-Config-to-ignore-nearby-mobs-when-sleeping.patch +++ b/patches/server/0139-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/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index bc2c592a416c64619527bf5d1040f4a2523b2bfb..64dc052f41e0ef96753e0ffd3d6517fc93dc5185 100644 +index 5f616eba7aa8c6ece6999e4d45e107a66d822132..8e537c5b3926b6196f6cfd36cead4cb75ea9534a 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -1386,7 +1386,7 @@ public class ServerPlayer extends Player { +@@ -1387,7 +1387,7 @@ public class ServerPlayer extends Player { return entitymonster.isPreventingPlayerRest(this); }); @@ -18,7 +18,7 @@ index bc2c592a416c64619527bf5d1040f4a2523b2bfb..64dc052f41e0ef96753e0ffd3d6517fc } } diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 966c6c71e52ebb239631c61b40bbb3f4cc63a416..b7cf07d2abde017915d5204ab2f90ff6145e88c8 100644 +index d22d0a64c6a744b843105c32ec4b5a141030ec1c..28b209423cddc091fce79b9bfe69b4c63fb8d761 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -357,6 +357,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0156-Config-to-allow-for-unsafe-enchants.patch b/patches/server/0156-Config-to-allow-for-unsafe-enchants.patch index fc2b85f2d..a957a5139 100644 --- a/patches/server/0156-Config-to-allow-for-unsafe-enchants.patch +++ b/patches/server/0156-Config-to-allow-for-unsafe-enchants.patch @@ -70,10 +70,10 @@ index 2281dba58d32b6314a7abcdb103c03c7056c24e9..37c79c0e13e6d7b6b03ebdf57bebf124 ((ServerPlayer) player).connection.send(new ClientboundContainerSetDataPacket(containerId, 0, cost.get())); } diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index e94caaea775b8804b9f685a465139aac40c8b4cc..babfdf97dc746d1ab36a05be0ed25090b50479ca 100644 +index a6a54269a1a6028a730b56e964a465452f70ec86..a4d5f08da2a2082d2e2c56fa3e8e825a6ba5707c 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java -@@ -1188,6 +1188,12 @@ public final class ItemStack { +@@ -1189,6 +1189,12 @@ public final class ItemStack { return this.tag != null && this.tag.contains("Enchantments", 9) ? !this.tag.getList("Enchantments", 10).isEmpty() : false; } diff --git a/patches/server/0166-Configurable-broadcast-settings.patch b/patches/server/0166-Configurable-broadcast-settings.patch index 755b51920..9560440df 100644 --- a/patches/server/0166-Configurable-broadcast-settings.patch +++ b/patches/server/0166-Configurable-broadcast-settings.patch @@ -17,10 +17,10 @@ index 25b832fe30c3837d02b10017e58ad0fa9d097092..3919d9c193abcfd8b97dfb0ceb386384 // Paper end } diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 64dc052f41e0ef96753e0ffd3d6517fc93dc5185..86847ecde7b96d3c2faf9924467ff9098505bda3 100644 +index 8e537c5b3926b6196f6cfd36cead4cb75ea9534a..daf1339f2334729adea28d47730a124a92a70f0a 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -959,6 +959,7 @@ public class ServerPlayer extends Player { +@@ -960,6 +960,7 @@ public class ServerPlayer extends Player { })); Team scoreboardteambase = this.getTeam(); diff --git a/patches/server/0173-Add-config-change-multiplier-critical-damage-value.patch b/patches/server/0173-Add-config-change-multiplier-critical-damage-value.patch index 68f516c57..b8e8ef61e 100644 --- a/patches/server/0173-Add-config-change-multiplier-critical-damage-value.patch +++ b/patches/server/0173-Add-config-change-multiplier-critical-damage-value.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add config change multiplier critical damage value 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 dc395219fddf7f994200bc943768d9348201e656..4ec3fd47de4d22aa76a742a1fc1edff6fe95c82c 100644 +index 6e6fbcaab227b83144640e3e1024a0382984fdae..9831340303d60f11dcaed1d444449742d86b3db1 100644 --- a/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java -@@ -1306,7 +1306,7 @@ public abstract class Player extends LivingEntity { +@@ -1312,7 +1312,7 @@ public abstract class Player extends LivingEntity { flag2 = flag2 && !level.paperConfig().entities.behavior.disablePlayerCrits; // Paper flag2 = flag2 && !this.isSprinting(); if (flag2) { @@ -18,7 +18,7 @@ index dc395219fddf7f994200bc943768d9348201e656..4ec3fd47de4d22aa76a742a1fc1edff6 f += f1; diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 4cd6f25cd2d2ecf7497eadc0e0c087502b6f7ae7..b40a2b2713175fd2e7a9bab0615cece1fc8518ac 100644 +index 031ea894e61c01af2597d68473a8aea407827f04..bed36d5367e1d9fda9773ae346b9b17f964d50b7 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -376,6 +376,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0185-Burp-delay-burp-after-eating-food-fills-hunger-bar-c.patch b/patches/server/0185-Burp-delay-burp-after-eating-food-fills-hunger-bar-c.patch index e09cf524f..2d253ad59 100644 --- a/patches/server/0185-Burp-delay-burp-after-eating-food-fills-hunger-bar-c.patch +++ b/patches/server/0185-Burp-delay-burp-after-eating-food-fills-hunger-bar-c.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Burp delay, burp after eating food fills hunger bar 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 4ec3fd47de4d22aa76a742a1fc1edff6fe95c82c..53769c1781a3ea5e3c0330684d6b998adbe15a4e 100644 +index 9831340303d60f11dcaed1d444449742d86b3db1..75250719f8d10dd06471758b2848d132e5b1aa70 100644 --- a/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java @@ -199,6 +199,8 @@ public abstract class Player extends LivingEntity { @@ -31,7 +31,7 @@ index 4ec3fd47de4d22aa76a742a1fc1edff6fe95c82c..53769c1781a3ea5e3c0330684d6b998a this.noPhysics = this.isSpectator(); if (this.isSpectator()) { this.onGround = false; -@@ -2346,7 +2354,7 @@ public abstract class Player extends LivingEntity { +@@ -2352,7 +2360,7 @@ public abstract class Player extends LivingEntity { public ItemStack eat(Level world, ItemStack stack) { this.getFoodData().eat(stack.getItem(), stack); this.awardStat(Stats.ITEM_USED.get(stack.getItem())); @@ -56,7 +56,7 @@ index 4a2dcf9bd83dd3fdff43483f887f4f58dc4715cd..87f9e03fb5e095396e054a84be60ec45 public void eat(Item item, ItemStack stack) { diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 2e3827a40a2cba69a2fd7c099941be8f23637b6b..08befb60564bb8e06f576b2762dac11ecf09d720 100644 +index 626112af4b44ecdb281b6f48a3226a4747043666..3145ce1f6cda2e31a054a797dc604b023602726a 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -392,6 +392,8 @@ public class PurpurWorldConfig { diff --git a/patches/server/0195-Store-placer-on-Block-when-placed.patch b/patches/server/0195-Store-placer-on-Block-when-placed.patch index 470b40c0b..55e95a17d 100644 --- a/patches/server/0195-Store-placer-on-Block-when-placed.patch +++ b/patches/server/0195-Store-placer-on-Block-when-placed.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Store placer on Block when placed diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index babfdf97dc746d1ab36a05be0ed25090b50479ca..60150ab606fe10fa91b5222b50b928194ddb5cbe 100644 +index a4d5f08da2a2082d2e2c56fa3e8e825a6ba5707c..6dcddac2bce3d3689f580906288e2e6f1d679da4 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java -@@ -414,6 +414,7 @@ public final class ItemStack { +@@ -415,6 +415,7 @@ public final class ItemStack { world.preventPoiUpdated = true; // CraftBukkit - SPIGOT-5710 for (BlockState blockstate : blocks) { blockstate.update(true, false); @@ -16,7 +16,7 @@ index babfdf97dc746d1ab36a05be0ed25090b50479ca..60150ab606fe10fa91b5222b50b92819 } world.preventPoiUpdated = false; -@@ -443,6 +444,7 @@ public final class ItemStack { +@@ -444,6 +445,7 @@ public final class ItemStack { if (!(block.getBlock() instanceof BaseEntityBlock)) { // Containers get placed automatically block.getBlock().onPlace(block, world, newblockposition, oldBlock, true, itemactioncontext); // Paper - pass itemactioncontext } diff --git a/patches/server/0201-Player-ridable-in-water-option.patch b/patches/server/0201-Player-ridable-in-water-option.patch index 749712a5d..51139fa5e 100644 --- a/patches/server/0201-Player-ridable-in-water-option.patch +++ b/patches/server/0201-Player-ridable-in-water-option.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Player ridable in water option 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 af882016364257f01a154b99783e96f5e932364f..61380231105bd7d139989b05789800e5f7b89106 100644 +index 48d8198277720f17bd06e774746a96298ef3b164..74c660bcc77c18241c6ccc0450174a15b0ac4d1f 100644 --- a/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java -@@ -2072,6 +2072,11 @@ public abstract class Player extends LivingEntity { +@@ -2078,6 +2078,11 @@ public abstract class Player extends LivingEntity { return this.inventory.armor; } @@ -21,7 +21,7 @@ index af882016364257f01a154b99783e96f5e932364f..61380231105bd7d139989b05789800e5 if (!this.isPassenger() && this.onGround && !this.isInWater() && !this.isInPowderSnow) { if (this.getShoulderEntityLeft().isEmpty()) { diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 0a1b894dad87b73f28fe9b37e08abb7b95d3b040..cbf4c40bf7c7e6547554f8d9086be0d7d99b522f 100644 +index bd881397324b2c1165694109682ebed975d02824..49ec44524ab181425848c546231779d6e4261c81 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -398,6 +398,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0203-Add-compass-command.patch b/patches/server/0203-Add-compass-command.patch index 314bbbecd..861ccf3d7 100644 --- a/patches/server/0203-Add-compass-command.patch +++ b/patches/server/0203-Add-compass-command.patch @@ -17,10 +17,10 @@ index 23e19bfbc41c5982a746ad0b5ba8c5834c2494a5..314ab6183e31b4bac6a40c1f8007d48e if (environment.includeIntegrated) { diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 86847ecde7b96d3c2faf9924467ff9098505bda3..b4544ea2a307c2b89796753e33f64ffaf893f83f 100644 +index daf1339f2334729adea28d47730a124a92a70f0a..44562c3ae8d0776b8834587b1d3fb628c97a7138 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -277,6 +277,7 @@ public class ServerPlayer extends Player { +@@ -278,6 +278,7 @@ public class ServerPlayer extends Player { public boolean purpurClient = false; // Purpur public boolean acceptingResourcePack = false; // Purpur private boolean tpsBar = false; // Purpur @@ -28,7 +28,7 @@ index 86847ecde7b96d3c2faf9924467ff9098505bda3..b4544ea2a307c2b89796753e33f64ffa public ServerPlayer(MinecraftServer server, ServerLevel world, GameProfile profile) { super(world, world.getSharedSpawnPos(), world.getSharedSpawnAngle(), profile); -@@ -517,6 +518,7 @@ public class ServerPlayer extends Player { +@@ -518,6 +519,7 @@ public class ServerPlayer extends Player { } if (nbt.contains("Purpur.TPSBar")) { this.tpsBar = nbt.getBoolean("Purpur.TPSBar"); } // Purpur @@ -36,7 +36,7 @@ index 86847ecde7b96d3c2faf9924467ff9098505bda3..b4544ea2a307c2b89796753e33f64ffa } @Override -@@ -584,6 +586,7 @@ public class ServerPlayer extends Player { +@@ -585,6 +587,7 @@ public class ServerPlayer extends Player { this.getBukkitEntity().setExtraData(nbt); // CraftBukkit nbt.putBoolean("Purpur.TPSBar", this.tpsBar); // Purpur @@ -44,7 +44,7 @@ index 86847ecde7b96d3c2faf9924467ff9098505bda3..b4544ea2a307c2b89796753e33f64ffa } // CraftBukkit start - World fallback code, either respawn location or global spawn -@@ -2687,5 +2690,13 @@ public class ServerPlayer extends Player { +@@ -2698,5 +2701,13 @@ public class ServerPlayer extends Player { public void tpsBar(boolean tpsBar) { this.tpsBar = tpsBar; } @@ -89,7 +89,7 @@ index 31f5d9bcc11dc78b0d04c55560d5a2fa18bf3896..42532975d8c5558a7598e759838e75f2 hideHiddenPlayersFromEntitySelector = getBoolean("settings.command.hide-hidden-players-from-entity-selector", hideHiddenPlayersFromEntitySelector); uptimeFormat = getString("settings.command.uptime.format", uptimeFormat); diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 6b69f61d635c3803e21ffb3ffd5c0f3af0476502..e6696e1f5d4a38a6972102f1ff2b8b3f8b66d732 100644 +index 3d0da6275827a2f0cb1aea72dac5412df8c6eb62..db1fa62541589981a45ef9be382b87ed5995e5cf 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -224,6 +224,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0215-Extended-OfflinePlayer-API.patch b/patches/server/0215-Extended-OfflinePlayer-API.patch index 42477a666..21a81d089 100644 --- a/patches/server/0215-Extended-OfflinePlayer-API.patch +++ b/patches/server/0215-Extended-OfflinePlayer-API.patch @@ -223,10 +223,10 @@ index 714afc98b5150907b45a00060be4e41582333204..312a6d90c0a09570aef24c205dc2ff27 + // Purpur end - OfflinePlayer API } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 2aaebeb6dc44f5be176471816de29056ea4e1043..9e8bdd260cec5bb02a87bd946301fc29afa15279 100644 +index 2813032e6cfe0a4f2258dc7246c5bde0426dfe0b..51be48d1ebfcceac087cf7f03ce332d8d402360c 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -2365,6 +2365,28 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -2375,6 +2375,28 @@ public class CraftPlayer extends CraftHumanEntity implements Player { return this.getHandle().getAbilities().walkingSpeed * 2f; } diff --git a/patches/server/0230-Signs-allow-color-codes.patch b/patches/server/0230-Signs-allow-color-codes.patch index c42d3744d..0659f596b 100644 --- a/patches/server/0230-Signs-allow-color-codes.patch +++ b/patches/server/0230-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/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index b4544ea2a307c2b89796753e33f64ffaf893f83f..087fd880ec62fed20383ef665b4f4d2e4aa882c7 100644 +index 44562c3ae8d0776b8834587b1d3fb628c97a7138..de504623d3b7aff451edbc9b87249c99efbcbed4 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -1526,6 +1526,7 @@ public class ServerPlayer extends Player { +@@ -1527,6 +1527,7 @@ public class ServerPlayer extends Player { @Override public void openTextEdit(SignBlockEntity sign) { @@ -70,7 +70,7 @@ index 4da4edae517a0efec6e03a719ec47b700509dab1..9e760a8e8244b15daaf0abdfc5f8a51d public CompoundTag getUpdateTag() { return this.saveWithoutMetadata(); diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 1595733902c3b281177848a2fa5d090d79c57b99..417eade17d21c6fc2f0da5bb192bcb2e1e3a778a 100644 +index c1329dfa8ba8bdfd1f8a14fa288b85645361f2b1..ad69d1a9be21e0a00c01eecd796ca9019a501fe2 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -953,8 +953,10 @@ public class PurpurWorldConfig { diff --git a/patches/server/0244-Configurable-player-pickup-exp-delay.patch b/patches/server/0244-Configurable-player-pickup-exp-delay.patch index 43e161c6c..4255ab7b0 100644 --- a/patches/server/0244-Configurable-player-pickup-exp-delay.patch +++ b/patches/server/0244-Configurable-player-pickup-exp-delay.patch @@ -24,10 +24,10 @@ index 7043f15f84d6c847bf376025c8e2150bdf650457..df8d8f85f8db396b7db9fa6e46aa55c9 int i = this.repairPlayerItems(player, this.value); 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 61380231105bd7d139989b05789800e5f7b89106..f96524c4a5d3c51b1ab6d990b30055ad5d8bfaac 100644 +index 74c660bcc77c18241c6ccc0450174a15b0ac4d1f..d055cfc257cc7282170ba67c848af3e6c5f2ec1f 100644 --- a/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java -@@ -624,7 +624,7 @@ public abstract class Player extends LivingEntity { +@@ -630,7 +630,7 @@ public abstract class Player extends LivingEntity { for (int i = 0; i < list.size(); ++i) { Entity entity = (Entity) list.get(i); @@ -37,7 +37,7 @@ index 61380231105bd7d139989b05789800e5f7b89106..f96524c4a5d3c51b1ab6d990b30055ad } else if (!entity.isRemoved()) { this.touch(entity); diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 98e8b1978262a9be72adf9a969d11703aa64da45..74583d5034002bc9fb1229fba1f1cf4348828359 100644 +index e1c60203764571af2108ec906f5baf413921b4fc..904849c26b8ef5197500a45b371f49411e415100 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/0258-Add-toggle-for-enchant-level-clamping.patch b/patches/server/0258-Add-toggle-for-enchant-level-clamping.patch index 4794fb85f..925e5a75c 100644 --- a/patches/server/0258-Add-toggle-for-enchant-level-clamping.patch +++ b/patches/server/0258-Add-toggle-for-enchant-level-clamping.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add toggle for enchant level clamping diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index 60150ab606fe10fa91b5222b50b928194ddb5cbe..4a5e5da67f00870e05893f541cd1716dbee78c83 100644 +index 6dcddac2bce3d3689f580906288e2e6f1d679da4..bd577a09169791aab81c65f498aac29e9fcb06b1 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java -@@ -1182,7 +1182,7 @@ public final class ItemStack { +@@ -1183,7 +1183,7 @@ public final class ItemStack { ListTag nbttaglist = this.tag.getList("Enchantments", 10); diff --git a/patches/server/0277-Remove-Mojang-Profiler.patch b/patches/server/0277-Remove-Mojang-Profiler.patch index 0e687b132..a08ede1f9 100644 --- a/patches/server/0277-Remove-Mojang-Profiler.patch +++ b/patches/server/0277-Remove-Mojang-Profiler.patch @@ -768,10 +768,10 @@ index 74ab15db63acae728a55ad2cde40ae9bfa3003f3..43bf3285729ec5cedb3de84f2b606739 while (iterator.hasNext()) { diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index cacc2ba287b6b48b9fd489a9cf84f2ae042ad67f..5c918b86bc7f0f74a0011efab1a6ca82e1633bbd 100644 +index de504623d3b7aff451edbc9b87249c99efbcbed4..9081d891ddb61df628009232efdb31d66d5f71b6 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -1196,7 +1196,7 @@ public class ServerPlayer extends Player { +@@ -1197,7 +1197,7 @@ public class ServerPlayer extends Player { PortalInfo shapedetectorshape = this.findDimensionEntryPoint(worldserver); if (shapedetectorshape != null) { @@ -780,7 +780,7 @@ index cacc2ba287b6b48b9fd489a9cf84f2ae042ad67f..5c918b86bc7f0f74a0011efab1a6ca82 worldserver = shapedetectorshape.world; // CraftBukkit if (worldserver == null) { } else // CraftBukkit - empty to fall through to null to event if (resourcekey == LevelStem.OVERWORLD && worldserver.getTypeKey() == LevelStem.NETHER) { // CraftBukkit -@@ -1219,8 +1219,8 @@ public class ServerPlayer extends Player { +@@ -1220,8 +1220,8 @@ public class ServerPlayer extends Player { worldserver = ((CraftWorld) exit.getWorld()).getHandle(); // CraftBukkit end @@ -791,7 +791,7 @@ index cacc2ba287b6b48b9fd489a9cf84f2ae042ad67f..5c918b86bc7f0f74a0011efab1a6ca82 if (true) { // CraftBukkit this.isChangingDimension = true; // CraftBukkit - Set teleport invulnerability only if player changing worlds -@@ -1239,7 +1239,7 @@ public class ServerPlayer extends Player { +@@ -1240,7 +1240,7 @@ public class ServerPlayer extends Player { this.connection.teleport(exit); // CraftBukkit - use internal teleport without event this.connection.resetPosition(); worldserver.addDuringPortalTeleport(this); diff --git a/patches/server/0280-Debug-Marker-API.patch b/patches/server/0280-Debug-Marker-API.patch index 365cf49dd..c73c280e4 100644 --- a/patches/server/0280-Debug-Marker-API.patch +++ b/patches/server/0280-Debug-Marker-API.patch @@ -99,10 +99,10 @@ index 24b390702d6abc256aee4a282cca64a654b95bd8..c6a3b59c65466f9f2b16cefe0059a6e5 @Override diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 9e8bdd260cec5bb02a87bd946301fc29afa15279..8283abd590d0c15a0ae79042389bcb6cbae3c11e 100644 +index 51be48d1ebfcceac087cf7f03ce332d8d402360c..bcd457d2344a6a3b76021bebce564233152454d0 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -3215,5 +3215,48 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -3225,5 +3225,48 @@ public class CraftPlayer extends CraftHumanEntity implements Player { public void setSpawnInvulnerableTicks(int spawnInvulnerableTime) { getHandle().spawnInvulnerableTime = spawnInvulnerableTime; } diff --git a/patches/server/0284-Add-death-screen-API.patch b/patches/server/0284-Add-death-screen-API.patch index 096e7be60..264d1a78d 100644 --- a/patches/server/0284-Add-death-screen-API.patch +++ b/patches/server/0284-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 8283abd590d0c15a0ae79042389bcb6cbae3c11e..2b647aeb75e2207186bf9506fba0d92a745cfae8 100644 +index bcd457d2344a6a3b76021bebce564233152454d0..f81b320ef330d03b68cf8b4af04b7c991ce9636b 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -3258,5 +3258,18 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -3268,5 +3268,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/0286-Implement-ram-and-rambar-commands.patch b/patches/server/0286-Implement-ram-and-rambar-commands.patch index 7bac09cc9..eeeab8803 100644 --- a/patches/server/0286-Implement-ram-and-rambar-commands.patch +++ b/patches/server/0286-Implement-ram-and-rambar-commands.patch @@ -18,10 +18,10 @@ index 6b05907bfec377e72a8858534d001bda10a1c88a..08bed4f01a27162902aa63bb8d35a915 if (environment.includeIntegrated) { diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index ef56e8e8496443c85474bfc98a71518f0515b763..15a6e8d23d8f626d7d5587f97c6ec5b10ab9afa8 100644 +index 9081d891ddb61df628009232efdb31d66d5f71b6..4200ee9d24ef91af2d400783ad111584097c00da 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -276,6 +276,7 @@ public class ServerPlayer extends Player { +@@ -277,6 +277,7 @@ public class ServerPlayer extends Player { 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 boolean purpurClient = false; // Purpur public boolean acceptingResourcePack = false; // Purpur @@ -29,7 +29,7 @@ index ef56e8e8496443c85474bfc98a71518f0515b763..15a6e8d23d8f626d7d5587f97c6ec5b1 private boolean tpsBar = false; // Purpur private boolean compassBar = false; // Purpur -@@ -517,6 +518,7 @@ public class ServerPlayer extends Player { +@@ -518,6 +519,7 @@ public class ServerPlayer extends Player { } } @@ -37,7 +37,7 @@ index ef56e8e8496443c85474bfc98a71518f0515b763..15a6e8d23d8f626d7d5587f97c6ec5b1 if (nbt.contains("Purpur.TPSBar")) { this.tpsBar = nbt.getBoolean("Purpur.TPSBar"); } // Purpur if (nbt.contains("Purpur.CompassBar")) { this.compassBar = nbt.getBoolean("Purpur.CompassBar"); } // Purpur } -@@ -585,6 +587,7 @@ public class ServerPlayer extends Player { +@@ -586,6 +588,7 @@ public class ServerPlayer extends Player { } this.getBukkitEntity().setExtraData(nbt); // CraftBukkit @@ -45,7 +45,7 @@ index ef56e8e8496443c85474bfc98a71518f0515b763..15a6e8d23d8f626d7d5587f97c6ec5b1 nbt.putBoolean("Purpur.TPSBar", this.tpsBar); // Purpur nbt.putBoolean("Purpur.CompassBar", this.compassBar); // Purpur } -@@ -2684,6 +2687,14 @@ public class ServerPlayer extends Player { +@@ -2695,6 +2698,14 @@ public class ServerPlayer extends Player { } } diff --git a/patches/server/0300-Add-option-to-teleport-to-spawn-on-nether-ceiling-da.patch b/patches/server/0300-Add-option-to-teleport-to-spawn-on-nether-ceiling-da.patch index 7b2604511..77238093a 100644 --- a/patches/server/0300-Add-option-to-teleport-to-spawn-on-nether-ceiling-da.patch +++ b/patches/server/0300-Add-option-to-teleport-to-spawn-on-nether-ceiling-da.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add option to teleport to spawn on nether ceiling damage diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 15a6e8d23d8f626d7d5587f97c6ec5b10ab9afa8..74238a87d1ff3391aac5812b24b84af228baeaa4 100644 +index 4200ee9d24ef91af2d400783ad111584097c00da..8a4be66f967dfd6b57ab542ae9b06c840647486d 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -2681,7 +2681,7 @@ public class ServerPlayer extends Player { +@@ -2692,7 +2692,7 @@ public class ServerPlayer extends Player { ServerLevel toLevel = ((CraftWorld) to.getWorld()).getHandle(); if (this.level == toLevel) { @@ -18,7 +18,7 @@ index 15a6e8d23d8f626d7d5587f97c6ec5b10ab9afa8..74238a87d1ff3391aac5812b24b84af2 this.server.getPlayerList().respawn(this, toLevel, true, to, !toLevel.paperConfig().environment.disableTeleportationSuffocationCheck); } diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index b22c988cc7d5aee6eb4fcb53af9485ee89dc3497..b49c60217eb5f1e2872827f944c45886ffb27bef 100644 +index 31ae621c405277efa95bb4d45050f6f262097004..3c10c719f6172161a2dcc6592a0a1492e9b3d7c1 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -898,6 +898,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { @@ -30,7 +30,7 @@ index b22c988cc7d5aee6eb4fcb53af9485ee89dc3497..b49c60217eb5f1e2872827f944c45886 } diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index fd565abe6bb48f3ec112bdbbe4a698d88fd2d0dc..f4c20ea2b683901a68a41e4145b62d0bb61fbbef 100644 +index 14e5b44d9808c2b1c459329fb188d9f481160bc8..705bf62755bd8d73facfbb8df88599c1fb47f3d6 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -421,6 +421,7 @@ public class PurpurWorldConfig {