From 4f12f5d3d0431cf17c2f6f80f3bdd3c834c9b8fa Mon Sep 17 00:00:00 2001 From: granny Date: Wed, 6 Dec 2023 16:18:27 -0800 Subject: [PATCH] Updated Upstream (Paper) Upstream has released updates that appear to apply and compile correctly Paper Changes: PaperMC/Paper@4d111a3 Un-experimentalize Entity TP APIs (#9964) PaperMC/Paper@2182d47 Update mapping-io (#9975) PaperMC/Paper@9993eb9 Updates documentation in EntityEquipment.java (#9992) PaperMC/Paper@2184fbc Log correct recipes and advancement count on server start (#9978) PaperMC/Paper@8bda1f7 Remove unnecessary durability check in ItemStack#isSimilar (#9979) PaperMC/Paper@977a729 [ci skip] Correct Windows requiring path to gradlew (#9976) PaperMC/Paper@3766afa [ci skip] Add mention of FQ imports (#9994) PaperMC/Paper@40872ec Fix CraftMetaItem#addAttributeModifier duplication check (#9995) PaperMC/Paper@ffa4115 Configurable Dry and Wet Farmland Tick Rates (#9968) PaperMC/Paper@37bee09 Restore vanilla entity drops behavior (#7650) PaperMC/Paper@5cbd535 Fix Mushroom cow stew api (#9934) PaperMC/Paper@8e061ce Add Structure check API (#9062) PaperMC/Paper@9271ee7 Dont resend blocks on interactions (#9413) PaperMC/Paper@931781c [ci skip] rebuild patches --- gradle.properties | 2 +- patches/api/0005-Purpur-client-support.patch | 4 ++-- patches/api/0007-Ridables.patch | 4 ++-- patches/api/0010-AFK-API.patch | 4 ++-- ...030-API-for-any-mob-to-burn-daylight.patch | 4 ++-- .../api/0041-Add-local-difficulty-api.patch | 4 ++-- patches/api/0044-Debug-Marker-API.patch | 8 +++---- patches/api/0045-Add-death-screen-API.patch | 4 ++-- patches/api/0049-Fire-Immunity-API.patch | 4 ++-- .../0001-Pufferfish-Server-Changes.patch | 14 +++++------ .../0007-Component-related-conveniences.patch | 8 +++---- patches/server/0008-Ridables.patch | 24 +++++++++---------- patches/server/0012-AFK-API.patch | 4 ++-- .../0015-LivingEntity-safeFallDistance.patch | 4 ++-- ...moisten-from-water-directly-under-it.patch | 6 ++--- ...-Minecart-settings-and-WASD-controls.patch | 6 ++--- ...g-mends-most-damages-equipment-first.patch | 8 +++---- .../0060-Implement-elytra-settings.patch | 8 +++---- ...leport-to-spawn-if-outside-world-bor.patch | 8 +++---- ...Stop-squids-floating-on-top-of-water.patch | 4 ++-- ...tities-can-use-portals-configuration.patch | 8 +++---- ...re-add-farmland-mechanics-from-Alpha.patch | 6 ++--- .../0108-Add-boat-fall-damage-config.patch | 6 ++--- patches/server/0117-Implement-TPSBar.patch | 6 ++--- ...iefing-bypass-to-everything-affected.patch | 8 +++---- .../0125-Farmland-trampling-changes.patch | 6 ++--- .../server/0127-Fix-stuck-in-portals.patch | 10 ++++---- ...-to-ignore-nearby-mobs-when-sleeping.patch | 6 ++--- ...0143-Sneak-to-bulk-process-composter.patch | 6 ++--- patches/server/0147-Drowning-Settings.patch | 8 +++---- ...Break-individual-slabs-when-sneaking.patch | 6 ++--- ...-Config-to-allow-for-unsafe-enchants.patch | 4 ++-- ...0161-Configurable-broadcast-settings.patch | 4 ++-- ...72-ShulkerBox-allow-oversized-stacks.patch | 6 ++--- ...ggle-for-end-portal-safe-teleporting.patch | 6 ++--- ...90-Store-placer-on-Block-when-placed.patch | 4 ++-- ...omizable-sleeping-actionbar-messages.patch | 6 ++--- ...e-shulker-box-items-from-dropping-co.patch | 6 ++--- patches/server/0197-Add-compass-command.patch | 6 ++--- ...t-right-click-to-use-exp-for-mending.patch | 8 +++---- ...ent-BlockEntity-Lore-and-DisplayName.patch | 6 ++--- .../server/0224-Signs-allow-color-codes.patch | 6 ++--- ...Configurable-farmland-trample-height.patch | 6 ++--- ...dd-toggle-for-enchant-level-clamping.patch | 4 ++-- .../0262-Add-local-difficulty-api.patch | 4 ++-- .../server/0267-Remove-Mojang-Profiler.patch | 22 ++++++++--------- patches/server/0270-Debug-Marker-API.patch | 4 ++-- ...76-Implement-ram-and-rambar-commands.patch | 4 ++-- 48 files changed, 157 insertions(+), 157 deletions(-) diff --git a/gradle.properties b/gradle.properties index 5f1c93763..f42a24799 100644 --- a/gradle.properties +++ b/gradle.properties @@ -2,7 +2,7 @@ group = org.purpurmc.purpur version = 1.20.2-R0.1-SNAPSHOT mcVersion = 1.20.2 -paperCommit = b37bbcfd984a325c47d6dee200634b5fa189c64b +paperCommit = 931781c220b98dde0159c9a3c8dce06c3b2b1e13 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 4691ebdfa..bec915f24 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 9130a57cf6ef5d543703a03aeed07aa17b1ab7e8..5e985567d963b666f3fefa0a618ea497079dae8e 100644 +index 47fcfa2a3358766dfda2efc9bbcf5b50e3f2f7c1..ede6f747953350f1d7eae36319d82f01095e17b3 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java -@@ -3370,4 +3370,13 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -3366,4 +3366,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 615a3a165..cc01603de 100644 --- a/patches/api/0007-Ridables.patch +++ b/patches/api/0007-Ridables.patch @@ -22,10 +22,10 @@ index 0c4dbb9ef63fa8575b5546239443cb2bd91ba847..4160e968e7d7e8e2a953534a981a7330 * @deprecated removed in 1.20.2 */ diff --git a/src/main/java/org/bukkit/entity/Entity.java b/src/main/java/org/bukkit/entity/Entity.java -index d340ddcf6924cc834455de3acbbac91ab9c66e39..656ea43ec614e5bf4d3474b9f02dafb970f33656 100644 +index 9e3cb75536ae260dc898ab9dafbc1d98398782bc..d72ba9d6aa6f7e55d4fdf273c3b6f1c863e86fbd 100644 --- a/src/main/java/org/bukkit/entity/Entity.java +++ b/src/main/java/org/bukkit/entity/Entity.java -@@ -1065,4 +1065,35 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent +@@ -1063,4 +1063,35 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent */ @NotNull String getScoreboardEntryName(); // Paper end - entity scoreboard name diff --git a/patches/api/0010-AFK-API.patch b/patches/api/0010-AFK-API.patch index e1d1c649b..9bff8f609 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 5e985567d963b666f3fefa0a618ea497079dae8e..b66402df0d602ef33bf8742504f35c095041dfe3 100644 +index ede6f747953350f1d7eae36319d82f01095e17b3..187bd4933d7a2bf0469ffc73e71841648cc8a5bc 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java -@@ -3378,5 +3378,25 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -3374,5 +3374,25 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM * @return True if Player uses Purpur Client */ public boolean usesPurpurClient(); diff --git a/patches/api/0030-API-for-any-mob-to-burn-daylight.patch b/patches/api/0030-API-for-any-mob-to-burn-daylight.patch index e4c5bb609..6abf8aacb 100644 --- a/patches/api/0030-API-for-any-mob-to-burn-daylight.patch +++ b/patches/api/0030-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 656ea43ec614e5bf4d3474b9f02dafb970f33656..ee3ca27a5406024ed71cce14b0891266b64e6fdf 100644 +index d72ba9d6aa6f7e55d4fdf273c3b6f1c863e86fbd..752690574e1d3f47a3cf80fe5da2ba4107386ffd 100644 --- a/src/main/java/org/bukkit/entity/Entity.java +++ b/src/main/java/org/bukkit/entity/Entity.java -@@ -1095,5 +1095,12 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent +@@ -1093,5 +1093,12 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent * @return True if ridable in water */ boolean isRidableInWater(); diff --git a/patches/api/0041-Add-local-difficulty-api.patch b/patches/api/0041-Add-local-difficulty-api.patch index d80fa46f7..9d7fc0257 100644 --- a/patches/api/0041-Add-local-difficulty-api.patch +++ b/patches/api/0041-Add-local-difficulty-api.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add local difficulty api diff --git a/src/main/java/org/bukkit/World.java b/src/main/java/org/bukkit/World.java -index f72f0f0f8eee95f95adc969d55ba7de82ee30e2a..1e794f6d2765d3e2c40b15a9699d181ffe12c2f5 100644 +index 567a36a4887da8994c9170e2885aa8cc357efa0c..26fe07a4429e40da1ce4a0433ae184f594ddb473 100644 --- a/src/main/java/org/bukkit/World.java +++ b/src/main/java/org/bukkit/World.java -@@ -4211,6 +4211,16 @@ public interface World extends RegionAccessor, WorldInfo, PluginMessageRecipient +@@ -4235,6 +4235,16 @@ public interface World extends RegionAccessor, WorldInfo, PluginMessageRecipient @Nullable public DragonBattle getEnderDragonBattle(); diff --git a/patches/api/0044-Debug-Marker-API.patch b/patches/api/0044-Debug-Marker-API.patch index 52dd02982..1ff69f141 100644 --- a/patches/api/0044-Debug-Marker-API.patch +++ b/patches/api/0044-Debug-Marker-API.patch @@ -179,10 +179,10 @@ index 9217a021cd6e54fda334f637a0bfbbdbc7ad14b0..dd99f53e3d559685a4b3a454a9e607c3 // Purpur end } diff --git a/src/main/java/org/bukkit/World.java b/src/main/java/org/bukkit/World.java -index 1e794f6d2765d3e2c40b15a9699d181ffe12c2f5..2f1adae519e45743828be06df15b5f33045ae18b 100644 +index 26fe07a4429e40da1ce4a0433ae184f594ddb473..405d60bd2c99ba741d2614b16f4bda5da48a0387 100644 --- a/src/main/java/org/bukkit/World.java +++ b/src/main/java/org/bukkit/World.java -@@ -4219,6 +4219,76 @@ public interface World extends RegionAccessor, WorldInfo, PluginMessageRecipient +@@ -4243,6 +4243,76 @@ public interface World extends RegionAccessor, WorldInfo, PluginMessageRecipient * @return The local difficulty */ public float getLocalDifficultyAt(@NotNull Location location); @@ -260,10 +260,10 @@ index 1e794f6d2765d3e2c40b15a9699d181ffe12c2f5..2f1adae519e45743828be06df15b5f33 /** diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index b66402df0d602ef33bf8742504f35c095041dfe3..2543299cbd94f409606dddb5969123909d11d1ac 100644 +index 187bd4933d7a2bf0469ffc73e71841648cc8a5bc..3527cd8eb9e76aed7ba2226f784e9143ba2a8f6f 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java -@@ -3398,5 +3398,75 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -3394,5 +3394,75 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM * @deprecated Use {@link #resetIdleDuration()} instead */ void resetIdleTimer(); diff --git a/patches/api/0045-Add-death-screen-API.patch b/patches/api/0045-Add-death-screen-API.patch index 81e579e86..cf240977a 100644 --- a/patches/api/0045-Add-death-screen-API.patch +++ b/patches/api/0045-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 2543299cbd94f409606dddb5969123909d11d1ac..fd465ab769b2ed9ff5c36d8479241aa8aa25953d 100644 +index 3527cd8eb9e76aed7ba2226f784e9143ba2a8f6f..eea83040ff15ea7c9bf97a45f5557294b309b4c8 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java -@@ -3468,5 +3468,25 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -3464,5 +3464,25 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM * Clears all debug block highlights */ void clearBlockHighlights(); diff --git a/patches/api/0049-Fire-Immunity-API.patch b/patches/api/0049-Fire-Immunity-API.patch index d40117288..44dfcb936 100644 --- a/patches/api/0049-Fire-Immunity-API.patch +++ b/patches/api/0049-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 ee3ca27a5406024ed71cce14b0891266b64e6fdf..f21a0fa8420b3fd0a3655a0af998da8f8a66c4b1 100644 +index 752690574e1d3f47a3cf80fe5da2ba4107386ffd..ed9627dff9a33524da546c46e1d1be71ae1d1e0c 100644 --- a/src/main/java/org/bukkit/entity/Entity.java +++ b/src/main/java/org/bukkit/entity/Entity.java -@@ -1102,5 +1102,18 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent +@@ -1100,5 +1100,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 2cbb2af75..25b54b296 100644 --- a/patches/server/0001-Pufferfish-Server-Changes.patch +++ b/patches/server/0001-Pufferfish-Server-Changes.patch @@ -20,7 +20,7 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . diff --git a/build.gradle.kts b/build.gradle.kts -index 79beac737c17412913983614bd478d33e3c6ed58..f2d26ccc6abbe7804789117b0659f8094899cc33 100644 +index 64479f0a892d6847f987d844efe282a6080d607b..9525f76103136dfc900c70f97416864115f75ed5 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -13,8 +13,12 @@ configurations.named(log4jPlugins.compileClasspathConfigurationName) { @@ -1914,7 +1914,7 @@ index d6cbe98e67fdbf8db46338a88ab1356dd63b50a3..20dd3a63b2f955b05a75eb240e33ae4c int LARGE_MAX_STACK_SIZE = 64; int DEFAULT_DISTANCE_LIMIT = 8; diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index c655c6fee393c62ba79301f76baa72f9b1154a9a..c5a5e6aa4f512b8343a7cac6bd9ab8b72fa4adb4 100644 +index fece91254b10b59474056aa730fd420f90cd7bec..80c9a523e94704f73e833e2255af6b0bf55da454 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -306,7 +306,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { @@ -1952,7 +1952,7 @@ index c655c6fee393c62ba79301f76baa72f9b1154a9a..c5a5e6aa4f512b8343a7cac6bd9ab8b7 this.baseTick(); } -@@ -4336,16 +4348,18 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -4362,16 +4374,18 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { } public boolean updateFluidHeightAndDoFluidPushing(TagKey tag, double speed) { @@ -1978,7 +1978,7 @@ index c655c6fee393c62ba79301f76baa72f9b1154a9a..c5a5e6aa4f512b8343a7cac6bd9ab8b7 double d1 = 0.0D; boolean flag = this.isPushedByFluid(); boolean flag1 = false; -@@ -4353,14 +4367,61 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -4379,14 +4393,61 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { int k1 = 0; BlockPos.MutableBlockPos blockposition_mutableblockposition = new BlockPos.MutableBlockPos(); @@ -2046,7 +2046,7 @@ index c655c6fee393c62ba79301f76baa72f9b1154a9a..c5a5e6aa4f512b8343a7cac6bd9ab8b7 if (d2 >= axisalignedbb.minY) { flag1 = true; -@@ -4382,9 +4443,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -4408,9 +4469,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { // CraftBukkit end } } @@ -2073,7 +2073,7 @@ index 73871f456a85bda1e51f54986d0e61fb629822e8..2561e74ffdf595a9b6ae13dcd738662c private String descriptionId; @Nullable diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 87134e57a57df0fceda903e35d22f3f2de31adf3..705ff7b8317fca979d4a1459119730f13864bfc1 100644 +index 15e1d8c09fad181406a6acb8b3f177cd5e6c0f52..3b9ee3324a084271862ed790e8fc0d469e877ec1 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -142,7 +142,6 @@ import org.bukkit.event.entity.EntityTeleportEvent; @@ -2390,7 +2390,7 @@ index 111a244087e24f25ba8524a46a228da10cd9498a..ff12ba2b79cb2e7e0bfd0e3b58ff6cb9 this.level().getProfiler().pop(); this.level().getProfiler().push("goatActivityUpdate"); 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 1e07febcf7a3dfb281728cc5e3e4f15dd776d7e0..c65ab566c6241dd6a44bd11a449ef0c4b2f6dc65 100644 +index c9a4feb4a52c0eb621b120e5b8c18d0a74dae0cd..256598e058db1fd34d36390e45ab9903768343cb 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 @@ -150,6 +150,13 @@ public class WitherBoss extends Monster implements PowerableMob, RangedAttackMob diff --git a/patches/server/0007-Component-related-conveniences.patch b/patches/server/0007-Component-related-conveniences.patch index 38bd23f47..073d79e02 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 e7452b7380511e27c3fdb9172ea7273b24fbdab7..85331b9b9edf4af02029333a628971fcf959090d 100644 +index a21b49af3134848f60d03058590505f7a5caaa11..dd84c17cee6c1ac5071fa2fefe70f91a16124b48 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -1784,6 +1784,26 @@ public class ServerPlayer extends Player { +@@ -1782,6 +1782,26 @@ public class ServerPlayer extends Player { this.lastSentExp = -1; // CraftBukkit - Added to reset } @@ -81,10 +81,10 @@ index 25a5a3b949a0eb632611355e74ccd4865be108ca..14fcfd7c1d3a62833978e163f4e0d6f9 return this.type().msgId(); } diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index e78bc576497723ed727c0f4932e88bc931834ea8..3dde7e4a063863d6b785f41aa4f29590ed8d9a9b 100644 +index 80c9a523e94704f73e833e2255af6b0bf55da454..62cbb7837d38a815e76b78451f1e8cafab990177 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -4078,6 +4078,20 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -4104,6 +4104,20 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { return SlotAccess.NULL; } diff --git a/patches/server/0008-Ridables.patch b/patches/server/0008-Ridables.patch index b323208a3..9a8c62897 100644 --- a/patches/server/0008-Ridables.patch +++ b/patches/server/0008-Ridables.patch @@ -46,7 +46,7 @@ index 8aab01170fb512d98103935a19e468a145a6bb16..5d20509fd92969ed05f1044290650880 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 a21b193f4fe3b857c5831b8ff0a4f366904df44f..1b715858cd62511dfe47f8e9157bde331aa6f6f7 100644 +index dd84c17cee6c1ac5071fa2fefe70f91a16124b48..7d29ba00128b2c079406eef13c373c4ebf66e2fa 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java @@ -756,6 +756,15 @@ public class ServerPlayer extends Player { @@ -79,7 +79,7 @@ index 6cc9271ba058f4af759eae34e2f6e9f892b4f6da..925ecb3d737f2e0e58bfdf17e2e48334 if ((entity instanceof Bucketable && entity instanceof LivingEntity && origItem != null && origItem.asItem() == Items.WATER_BUCKET) && (event.isCancelled() || ServerGamePacketListenerImpl.this.player.getInventory().getSelected() == null || ServerGamePacketListenerImpl.this.player.getInventory().getSelected().getItem() != origItem)) { entity.getEntityData().resendPossiblyDesyncedEntity(player); // Paper - The entire mob gets deleted, so resend it. diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index d8568d4c6dd74b76f3d8444a2ab6f10b0cec6818..9501683d6a6239e7a053f9a40a377783232bbe8e 100644 +index 62cbb7837d38a815e76b78451f1e8cafab990177..29773f20569cfc9a9ba999617ea2875d3cb96e9a 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -376,7 +376,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { @@ -91,7 +91,7 @@ index d8568d4c6dd74b76f3d8444a2ab6f10b0cec6818..9501683d6a6239e7a053f9a40a377783 private float eyeHeight; public boolean isInPowderSnow; public boolean wasInPowderSnow; -@@ -2958,6 +2958,13 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -2984,6 +2984,13 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { this.passengers = ImmutableList.copyOf(list); } @@ -105,7 +105,7 @@ index d8568d4c6dd74b76f3d8444a2ab6f10b0cec6818..9501683d6a6239e7a053f9a40a377783 this.gameEvent(GameEvent.ENTITY_MOUNT, passenger); } } -@@ -2998,6 +3005,14 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -3024,6 +3031,14 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { return false; } // Spigot end @@ -120,7 +120,7 @@ index d8568d4c6dd74b76f3d8444a2ab6f10b0cec6818..9501683d6a6239e7a053f9a40a377783 if (this.passengers.size() == 1 && this.passengers.get(0) == entity) { this.passengers = ImmutableList.of(); } else { -@@ -4926,4 +4941,45 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -4952,4 +4967,45 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { return ((net.minecraft.server.level.ServerChunkCache) level.getChunkSource()).isPositionTicking(this); } // Paper end @@ -191,7 +191,7 @@ index 1bb8b6e91c44cd13411d96d749fa64835c75a267..75c278b67ad2b78766efd8f89c4c2ca7 protected ParticleOptions getInkParticle() { return ParticleTypes.GLOW_SQUID_INK; diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 705ff7b8317fca979d4a1459119730f13864bfc1..ae29cffc84900c4b44925c2c29636dd5ce1b2a38 100644 +index 3b9ee3324a084271862ed790e8fc0d469e877ec1..4b7b9737e9ebc0785116d46dafafda525c77b846 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -218,9 +218,9 @@ public abstract class LivingEntity extends Entity implements Attackable { @@ -1251,7 +1251,7 @@ index f383928fc5b331ddf128bdcb6a23010d8fe088d3..6815d7350a82c6d32f60aa6116466ebd float f1 = 1.0F + (this.random.nextFloat() - this.random.nextFloat()) * 0.2F; diff --git a/src/main/java/net/minecraft/world/entity/animal/MushroomCow.java b/src/main/java/net/minecraft/world/entity/animal/MushroomCow.java -index 52cc265f1663d648b6bfd03f2ac3e191b1c16d44..9a84599457bbd14314e0c4f3fa8bf30bec8da347 100644 +index e42b0b19019ef74733fd19b08f882cccff920142..fdd99d6a9db230f9f68b0a78f41a16e7658c4c16 100644 --- a/src/main/java/net/minecraft/world/entity/animal/MushroomCow.java +++ b/src/main/java/net/minecraft/world/entity/animal/MushroomCow.java @@ -63,6 +63,23 @@ public class MushroomCow extends Cow implements Shearable, VariantHolder drops = new ArrayList(); + public ArrayList drops = new ArrayList<>(); // Paper public final org.bukkit.craftbukkit.attribute.CraftAttributeMap craftAttributes; @@ -353,7 +354,7 @@ public abstract class LivingEntity extends Entity implements Attackable { this.tryAddSoulSpeed(); diff --git a/patches/server/0039-Allow-soil-to-moisten-from-water-directly-under-it.patch b/patches/server/0039-Allow-soil-to-moisten-from-water-directly-under-it.patch index 3ce261cff..c520e1185 100644 --- a/patches/server/0039-Allow-soil-to-moisten-from-water-directly-under-it.patch +++ b/patches/server/0039-Allow-soil-to-moisten-from-water-directly-under-it.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Allow soil to moisten from water directly under it diff --git a/src/main/java/net/minecraft/world/level/block/FarmBlock.java b/src/main/java/net/minecraft/world/level/block/FarmBlock.java -index 5946f06f63b5694034bd027984a4925b0831d439..1776906e886edd511bfbe96b8a345438a3cd66f8 100644 +index 502dcba14da9d3dcefc61fdc349a4e1e1d94b478..348f7861eebd02774717fe8668102e2586f3f771 100644 --- a/src/main/java/net/minecraft/world/level/block/FarmBlock.java +++ b/src/main/java/net/minecraft/world/level/block/FarmBlock.java -@@ -162,7 +162,7 @@ public class FarmBlock extends Block { +@@ -164,7 +164,7 @@ public class FarmBlock extends Block { } } @@ -18,7 +18,7 @@ index 5946f06f63b5694034bd027984a4925b0831d439..1776906e886edd511bfbe96b8a345438 @Override diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 9948d2e6594dfa5b4e98e7aca29f1cd08c03479e..ed64be25581f407edcd15b8eac1c4effd9bb8728 100644 +index 10572cc8cae0902a050e62e568b29b96d9c54a21..ae393a6c34e79ea3ac0f4a17792f296f18c3f06b 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -145,6 +145,11 @@ public class PurpurWorldConfig { diff --git a/patches/server/0040-Minecart-settings-and-WASD-controls.patch b/patches/server/0040-Minecart-settings-and-WASD-controls.patch index de1ad7255..31a3969fd 100644 --- a/patches/server/0040-Minecart-settings-and-WASD-controls.patch +++ b/patches/server/0040-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 9918f6ac1066ccadd3eb2635450faaf5a4350523..85383b6a9d16b7cf7e928c4d9aaf7af932540091 100644 +index b7e1930a7811ab9f174adbab8885317b3a1fead4..d8c87e4b8ca7b4872d5210e0f1e6da7a9648a122 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -1109,6 +1109,7 @@ public class ServerPlayer extends Player { +@@ -1107,6 +1107,7 @@ public class ServerPlayer extends Player { if (this.isInvulnerableTo(source)) { return false; } else { @@ -149,7 +149,7 @@ index e6a4a5898ffdcb2aa2bc01371a6d7dbc06d610ce..443bed339884f78ecda8abdbcdc9b57e protected ResourceLocation drops; diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index ed64be25581f407edcd15b8eac1c4effd9bb8728..7290de61830b84ddc54f50353dd5c24a65192816 100644 +index ae393a6c34e79ea3ac0f4a17792f296f18c3f06b..269fa073b53b5434d19d6705eb2fb2d0550ba0ac 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -95,6 +95,68 @@ public class PurpurWorldConfig { diff --git a/patches/server/0058-Mending-mends-most-damages-equipment-first.patch b/patches/server/0058-Mending-mends-most-damages-equipment-first.patch index b7d7983c2..c2d7fb609 100644 --- a/patches/server/0058-Mending-mends-most-damages-equipment-first.patch +++ b/patches/server/0058-Mending-mends-most-damages-equipment-first.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Mending mends most damages equipment first diff --git a/src/main/java/net/minecraft/world/entity/ExperienceOrb.java b/src/main/java/net/minecraft/world/entity/ExperienceOrb.java -index eca634792d2a7cc649675e3394e84dbaf1453905..2bd576849403bc2cfae298c2210616192ddc38db 100644 +index 6dac7cd4c9abfbde299f5d279acc2739195fc312..77ba83d02530b26ef66dcfe8b4c5e8a6109a3b28 100644 --- a/src/main/java/net/minecraft/world/entity/ExperienceOrb.java +++ b/src/main/java/net/minecraft/world/entity/ExperienceOrb.java @@ -331,7 +331,7 @@ public class ExperienceOrb extends Entity { @@ -18,10 +18,10 @@ index eca634792d2a7cc649675e3394e84dbaf1453905..2bd576849403bc2cfae298c221061619 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 4697df75fdee2023c41260bed211e3e3d90d2b9b..25be1927304e497a6ebf9d9ec09525a5418095db 100644 +index d0f7baa80cb7d0883304abe2ed990c258a0d92b6..6b2a5e901584714b50eadfa1224b0c97e8a23e5f 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java -@@ -589,6 +589,16 @@ public final class ItemStack { +@@ -591,6 +591,16 @@ public final class ItemStack { return this.isDamageableItem() && this.getDamageValue() > 0; } @@ -73,7 +73,7 @@ index ecf640b00007a386290f8dfe9935a8aa610079fd..2048899f8e4c8211e8dde0d11148d647 public static Map.Entry getRandomItemWith(Enchantment enchantment, LivingEntity entity) { return getRandomItemWith(enchantment, entity, (stack) -> { diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index e2e95793c02521df51d9dbf76a22e11f96778f49..c48fae071a538a11739193f782232edfafb14de4 100644 +index cc373c386ca72c3c6cfd69dc26be6ccdfaae1738..f4bc9248e2e7c156688fad9e0807cb46444dfa13 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -95,6 +95,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0060-Implement-elytra-settings.patch b/patches/server/0060-Implement-elytra-settings.patch index 7fb4a1000..a6019ff85 100644 --- a/patches/server/0060-Implement-elytra-settings.patch +++ b/patches/server/0060-Implement-elytra-settings.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Implement elytra settings diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index cd9b6c75cfe86d06ca4c0f4cc9b0b9dae37a1811..90a4caa7c58f3d7734e6cdb32c703484aaf6afcb 100644 +index ddffaf68e81dc24a6e050af86840bb9e6b1c4402..961d37c7b690369ac5b94755faef1872b705187f 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -3564,7 +3564,16 @@ public abstract class LivingEntity extends Entity implements Attackable { @@ -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 25be1927304e497a6ebf9d9ec09525a5418095db..6e6f60554b36117a833949ef2f9a4b68f6518a1d 100644 +index 6b2a5e901584714b50eadfa1224b0c97e8a23e5f..191bcb10f9976b815038d73ac60c0ddd6f7ee24a 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java -@@ -618,7 +618,7 @@ public final class ItemStack { +@@ -620,7 +620,7 @@ public final class ItemStack { int j; if (amount > 0) { @@ -66,7 +66,7 @@ index 25be1927304e497a6ebf9d9ec09525a5418095db..6e6f60554b36117a833949ef2f9a4b68 int k = 0; for (int l = 0; j > 0 && l < amount; ++l) { -@@ -673,6 +673,12 @@ public final class ItemStack { +@@ -675,6 +675,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/0073-Add-option-to-teleport-to-spawn-if-outside-world-bor.patch b/patches/server/0073-Add-option-to-teleport-to-spawn-if-outside-world-bor.patch index 5263902a6..8fff655c0 100644 --- a/patches/server/0073-Add-option-to-teleport-to-spawn-if-outside-world-bor.patch +++ b/patches/server/0073-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 6f5632eb105f17e0f8b39f09b68d809eb4fb2c76..fa5cf2152eb48b2b099d94963367511b032cbac6 100644 +index d8c87e4b8ca7b4872d5210e0f1e6da7a9648a122..e919fdda8b3f4012a3b48f75210513188a00cbcf 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -2747,4 +2747,26 @@ public class ServerPlayer extends Player { +@@ -2745,4 +2745,26 @@ public class ServerPlayer extends Player { return (CraftPlayer) super.getBukkitEntity(); } // CraftBukkit end @@ -36,7 +36,7 @@ index 6f5632eb105f17e0f8b39f09b68d809eb4fb2c76..fa5cf2152eb48b2b099d94963367511b + // Purpur end } diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index d919966b056116dc2c0777250ecb492a68257d70..fa59b382c25b9c47bf921258dec89cf2b5ca92e8 100644 +index 961d37c7b690369ac5b94755faef1872b705187f..76ea2ee6f0dc370125dfedb852c90b54ecd3d831 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -427,6 +427,7 @@ public abstract class LivingEntity extends Entity implements Attackable { @@ -48,7 +48,7 @@ index d919966b056116dc2c0777250ecb492a68257d70..fa59b382c25b9c47bf921258dec89cf2 } } diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 5afe1d5977f1bbc2b2c2aa5982c4eb23d82e7644..8cc7e83e6272ed9c3f005c76aa3432fb2d3c76a6 100644 +index 9df1e909f4dc21d5c3d11fa67adc15efd5d82eca..3d7726bd54781e922f9d2b5b1fea510d6295919e 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -242,6 +242,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0084-Stop-squids-floating-on-top-of-water.patch b/patches/server/0084-Stop-squids-floating-on-top-of-water.patch index 2960b84ef..b1af9007a 100644 --- a/patches/server/0084-Stop-squids-floating-on-top-of-water.patch +++ b/patches/server/0084-Stop-squids-floating-on-top-of-water.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Stop squids floating on top of water diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 01d171296c8094a6eac39af394d52ec188721fab..bc52ea716f22d3e8e99ab0968ee5ddb61ccb8779 100644 +index 8add0fa430b193a9a8267dd53bdf416aedbc495b..6c90cbbb93231b265b24fe45816d54e93c7cfc76 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -4380,6 +4380,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -4406,6 +4406,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { this.yRotO = this.getYRot(); } diff --git a/patches/server/0086-Entities-can-use-portals-configuration.patch b/patches/server/0086-Entities-can-use-portals-configuration.patch index 273e64e32..0ed47ca60 100644 --- a/patches/server/0086-Entities-can-use-portals-configuration.patch +++ b/patches/server/0086-Entities-can-use-portals-configuration.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Entities can use portals configuration diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 940157724b87e0a501a6f52d78d4a170923fb027..95fecfaaffe6c7b6a46490518917285ea8551c05 100644 +index 6c90cbbb93231b265b24fe45816d54e93c7cfc76..725f7d22c67f571f9794cef6d2bc856d6f88ecb5 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -3099,7 +3099,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -3125,7 +3125,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { public void handleInsidePortal(BlockPos pos) { if (this.isOnPortalCooldown()) { this.setPortalCooldown(); @@ -17,7 +17,7 @@ index 940157724b87e0a501a6f52d78d4a170923fb027..95fecfaaffe6c7b6a46490518917285e if (!this.level().isClientSide && !pos.equals(this.portalEntrancePos)) { this.portalEntrancePos = pos.immutable(); } -@@ -3804,7 +3804,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -3830,7 +3830,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { } public boolean canChangeDimensions() { @@ -27,7 +27,7 @@ index 940157724b87e0a501a6f52d78d4a170923fb027..95fecfaaffe6c7b6a46490518917285e public float getBlockExplosionResistance(Explosion explosion, BlockGetter world, BlockPos pos, BlockState blockState, FluidState fluidState, float max) { diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 5bdd0d69eb2efcc6dbe0a3d48870e1906763948b..3a4b67415d2e86d2d3d3709dd669c0d6ee56644a 100644 +index d6b6d112da049e26ee867d81e37baa8f7bd4cda0..6b45e9aa4575892005765af9e202c61f50d4b1b6 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -98,6 +98,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0100-Ability-to-re-add-farmland-mechanics-from-Alpha.patch b/patches/server/0100-Ability-to-re-add-farmland-mechanics-from-Alpha.patch index 1d51e5a29..8833cf4fd 100644 --- a/patches/server/0100-Ability-to-re-add-farmland-mechanics-from-Alpha.patch +++ b/patches/server/0100-Ability-to-re-add-farmland-mechanics-from-Alpha.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Ability to re-add farmland mechanics from Alpha diff --git a/src/main/java/net/minecraft/world/level/block/FarmBlock.java b/src/main/java/net/minecraft/world/level/block/FarmBlock.java -index 1776906e886edd511bfbe96b8a345438a3cd66f8..7efae60a9a9269703a1fa7cd280b5b96557ec73e 100644 +index 348f7861eebd02774717fe8668102e2586f3f771..81e22b950e5f09e0e545d44e8979437c2accc29b 100644 --- a/src/main/java/net/minecraft/world/level/block/FarmBlock.java +++ b/src/main/java/net/minecraft/world/level/block/FarmBlock.java -@@ -115,6 +115,14 @@ public class FarmBlock extends Block { +@@ -117,6 +117,14 @@ public class FarmBlock extends Block { return; } @@ -24,7 +24,7 @@ index 1776906e886edd511bfbe96b8a345438a3cd66f8..7efae60a9a9269703a1fa7cd280b5b96 return; } diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 41d694ec386530f97044ff6aa98f4e436cadddd7..957fb2554554be7912f434b999a9ddd31681b92a 100644 +index c0f3f52068d147ca06dbb87da51d628b56cf51e4..30cc6cf6911fef48454a213370e4759f6f71e357 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -410,8 +410,10 @@ public class PurpurWorldConfig { diff --git a/patches/server/0108-Add-boat-fall-damage-config.patch b/patches/server/0108-Add-boat-fall-damage-config.patch index 69b7d65be..3159d85b8 100644 --- a/patches/server/0108-Add-boat-fall-damage-config.patch +++ b/patches/server/0108-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 8b05588b480af39d25bfcb84a5241e9e055c81f8..48337c143a825c2107b9f1c4b086050ad02e553a 100644 +index e919fdda8b3f4012a3b48f75210513188a00cbcf..ccde38369c07f4f1760ca2a6d76c54c148521643 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -1109,7 +1109,16 @@ public class ServerPlayer extends Player { +@@ -1107,7 +1107,16 @@ public class ServerPlayer extends Player { if (this.isInvulnerableTo(source)) { return false; } else { @@ -27,7 +27,7 @@ index 8b05588b480af39d25bfcb84a5241e9e055c81f8..48337c143a825c2107b9f1c4b086050a if (!flag && this.spawnInvulnerableTime > 0 && !source.is(DamageTypeTags.BYPASSES_INVULNERABILITY)) { diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index ed11a1ca61ef0401936cd612e463a2ad4111585f..3ecf34286db35cebad22bf09bd1f15d61908a2a1 100644 +index d1792d16fe745c22a2408ca7b6446348563e5b63..68fa6b3492d9ad309f305560afe6f767c9c56fe0 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -112,6 +112,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0117-Implement-TPSBar.patch b/patches/server/0117-Implement-TPSBar.patch index 366800ba5..fdef05c8b 100644 --- a/patches/server/0117-Implement-TPSBar.patch +++ b/patches/server/0117-Implement-TPSBar.patch @@ -29,7 +29,7 @@ index cef1f7169880560a9c79667320e63d552fa4aa03..13b57942eb63b2a9460f96ec59bb9ba3 this.hasLoggedStop = true; // Paper if (isDebugging()) io.papermc.paper.util.TraceUtil.dumpTraceForThread("Server stopped"); // Paper diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java -index 6ea42811c1e7ae1b6bf17b7edad921861c7fa2e0..8b647e6f3dd576b1984ad099eb21912e0c193eb7 100644 +index 40527db18b7177d887b65825ac51613097803be8..a4063f19e5371b77e20c36746a4750bdfcc67e5f 100644 --- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java @@ -350,6 +350,7 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface @@ -41,7 +41,7 @@ index 6ea42811c1e7ae1b6bf17b7edad921861c7fa2e0..8b647e6f3dd576b1984ad099eb21912e } } diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 8c709fdd4328e83e44bf976ff674db66b10a8ac2..51efe3a87ca54423e8bb8c23d226bf3e23ac8862 100644 +index ccde38369c07f4f1760ca2a6d76c54c148521643..0070c97ef46dff0bc8ccea4ce3815180916d974e 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 { @@ -68,7 +68,7 @@ index 8c709fdd4328e83e44bf976ff674db66b10a8ac2..51efe3a87ca54423e8bb8c23d226bf3e } // CraftBukkit start - World fallback code, either respawn location or global spawn -@@ -2777,5 +2780,13 @@ public class ServerPlayer extends Player { +@@ -2775,5 +2778,13 @@ public class ServerPlayer extends Player { this.server.getPlayerList().respawn(this, toLevel, true, to, !toLevel.paperConfig().environment.disableTeleportationSuffocationCheck, org.bukkit.event.player.PlayerRespawnEvent.RespawnReason.DEATH); } } diff --git a/patches/server/0122-Add-mobGriefing-bypass-to-everything-affected.patch b/patches/server/0122-Add-mobGriefing-bypass-to-everything-affected.patch index 7aca00d70..5fead2498 100644 --- a/patches/server/0122-Add-mobGriefing-bypass-to-everything-affected.patch +++ b/patches/server/0122-Add-mobGriefing-bypass-to-everything-affected.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add mobGriefing bypass to everything affected diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 5e701bd6ce6db9ef3cebbc24ce80e00aa1e558d7..1ba7451e1e246a0840205268767ab222482145c3 100644 +index 8f12325c79d16d2bdce2e6f07909f9f200d708e5..98e395f13a327967fe6ed8b7044a48903cf34eaa 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -1810,7 +1810,7 @@ public abstract class LivingEntity extends Entity implements Attackable { @@ -144,7 +144,7 @@ index a5b2af9d56e4efece7161d25dbc88f343ef233cc..39d7fe20ef5b3ca34a72a50bb8d9c35a // flag1 = this.level().removeBlock(blockposition, false) || flag1; flag1 = true; 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 8796b779ac0550e32c7313b1280278de48070baf..97be7061d3cccac7b64f4b1a234ccbd83e2b7407 100644 +index 84bd2cf1797f68eadbd0a21f2cfb6ce85710d928..bd4658651ba8bccdc5b8a7d59e70e527942615dd 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 @@ -492,7 +492,7 @@ public class WitherBoss extends Monster implements PowerableMob, RangedAttackMob @@ -335,10 +335,10 @@ index 6365ddea0c23bc5d4009d98915f2b39aed2a0328..c7ba8503b2722e5d9ce0699b959cd6be } diff --git a/src/main/java/net/minecraft/world/level/block/FarmBlock.java b/src/main/java/net/minecraft/world/level/block/FarmBlock.java -index 7efae60a9a9269703a1fa7cd280b5b96557ec73e..e7b5f54d2fc53878e9466ccca972df21f10a7d67 100644 +index 81e22b950e5f09e0e545d44e8979437c2accc29b..84daad72bfd5f2bf29c5f2b75b6699a27ff43b5a 100644 --- a/src/main/java/net/minecraft/world/level/block/FarmBlock.java +++ b/src/main/java/net/minecraft/world/level/block/FarmBlock.java -@@ -101,7 +101,7 @@ public class FarmBlock extends Block { +@@ -103,7 +103,7 @@ public class FarmBlock extends Block { @Override public void fallOn(Level world, BlockState state, BlockPos pos, Entity entity, float fallDistance) { super.fallOn(world, state, pos, entity, fallDistance); // CraftBukkit - moved here as game rules / events shouldn't affect fall damage. diff --git a/patches/server/0125-Farmland-trampling-changes.patch b/patches/server/0125-Farmland-trampling-changes.patch index 16a6842c8..e8a8d4cca 100644 --- a/patches/server/0125-Farmland-trampling-changes.patch +++ b/patches/server/0125-Farmland-trampling-changes.patch @@ -12,10 +12,10 @@ necessary to trample in the first place. Feather Falling 1 requires you to fall over 3+ blocks to trample. FF 2 requires 4+, etc. diff --git a/src/main/java/net/minecraft/world/level/block/FarmBlock.java b/src/main/java/net/minecraft/world/level/block/FarmBlock.java -index e7b5f54d2fc53878e9466ccca972df21f10a7d67..56e66fcd840d0d3681ba671d1ffc51b232631461 100644 +index 84daad72bfd5f2bf29c5f2b75b6699a27ff43b5a..84107011175b6e58b463d5d1b716a3262be0db77 100644 --- a/src/main/java/net/minecraft/world/level/block/FarmBlock.java +++ b/src/main/java/net/minecraft/world/level/block/FarmBlock.java -@@ -116,12 +116,20 @@ public class FarmBlock extends Block { +@@ -118,12 +118,20 @@ public class FarmBlock extends Block { } // Purpur start @@ -37,7 +37,7 @@ index e7b5f54d2fc53878e9466ccca972df21f10a7d67..56e66fcd840d0d3681ba671d1ffc51b2 if (!CraftEventFactory.callEntityChangeBlockEvent(entity, pos, Blocks.DIRT.defaultBlockState())) { return; diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index d430af5942337e7f19a5085dc9124c9266c137c7..a27a2fb4d9643ed0d2cb4bbad8c09052978e123c 100644 +index 68a3f2be0b4d99041dcdb9e37c0e1dbcb9c1ae87..87daca07c8f22475921fb8ee968e3d5bfbb0a41c 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -457,10 +457,16 @@ public class PurpurWorldConfig { diff --git a/patches/server/0127-Fix-stuck-in-portals.patch b/patches/server/0127-Fix-stuck-in-portals.patch index 897a9630d..78760201e 100644 --- a/patches/server/0127-Fix-stuck-in-portals.patch +++ b/patches/server/0127-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 51efe3a87ca54423e8bb8c23d226bf3e23ac8862..6ecabc14a4f50086790536b28e68b6ea25b27495 100644 +index 0070c97ef46dff0bc8ccea4ce3815180916d974e..0b8a6290f7a7efbeb4433a066a0f8878adcd4467 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -1268,6 +1268,7 @@ public class ServerPlayer extends Player { +@@ -1266,6 +1266,7 @@ public class ServerPlayer extends Player { playerlist.sendPlayerPermissionLevel(this); worldserver1.removePlayerImmediately(this, Entity.RemovalReason.CHANGED_DIMENSION); this.unsetRemoved(); @@ -17,10 +17,10 @@ index 51efe3a87ca54423e8bb8c23d226bf3e23ac8862..6ecabc14a4f50086790536b28e68b6ea // CraftBukkit end this.setServerLevel(worldserver); diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index bfd8eb90479bdb1cad6343c04995788b31b3e05c..5790e3f1d5e2c43f401bfd93e85ddee799a6aad2 100644 +index 8084b3b135257441c919a627e70849b9f2199e37..3c3f919a468435ee327e3569849f4194ef214b57 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -3096,12 +3096,15 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -3122,12 +3122,15 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { return Vec3.directionFromRotation(this.getRotationVector()); } @@ -37,7 +37,7 @@ index bfd8eb90479bdb1cad6343c04995788b31b3e05c..5790e3f1d5e2c43f401bfd93e85ddee7 this.isInsidePortal = true; diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 4352f37b8568c7e9ce8cce66c2a1b36d6d9f8520..10c019d14fb20835a01c31dc4546d1c70cde6948 100644 +index 08136dfa12437d4d4bf7b5d3d9404db671e6925c..7d576796981ce7b6a292499ed755d86c86bf51db 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -333,6 +333,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0135-Config-to-ignore-nearby-mobs-when-sleeping.patch b/patches/server/0135-Config-to-ignore-nearby-mobs-when-sleeping.patch index fad795247..0696083c8 100644 --- a/patches/server/0135-Config-to-ignore-nearby-mobs-when-sleeping.patch +++ b/patches/server/0135-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 4c68d45f481d97d9fba7ac2eee44ca9c9261591e..b5de1fc5d352de4ba978cb718e57a913431a7c9a 100644 +index 0b8a6290f7a7efbeb4433a066a0f8878adcd4467..a81b3001842971e12c98311d3cb3347f1b284fe9 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -1425,7 +1425,7 @@ public class ServerPlayer extends Player { +@@ -1423,7 +1423,7 @@ public class ServerPlayer extends Player { return entitymonster.isPreventingPlayerRest(this); }); @@ -18,7 +18,7 @@ index 4c68d45f481d97d9fba7ac2eee44ca9c9261591e..b5de1fc5d352de4ba978cb718e57a913 } } diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index c09528388118f2386de3de14b8c1cb8896ebf556..33db128ff2046a7a36eb5d70b35d10947f83a931 100644 +index c4c1e27efbc121f120f68a554cd5bf37443923e1..f2dc663616d7c78cf448ab3e3e8758e1e6716d2b 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -353,6 +353,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0143-Sneak-to-bulk-process-composter.patch b/patches/server/0143-Sneak-to-bulk-process-composter.patch index 8a7577076..f66789b9f 100644 --- a/patches/server/0143-Sneak-to-bulk-process-composter.patch +++ b/patches/server/0143-Sneak-to-bulk-process-composter.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Sneak to bulk process composter diff --git a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java -index b2c2bd5ec0afd479973f7237a5c610f21231c505..f65eb045e518cdba91ace4483e385805b0e1171f 100644 +index 3706e94108f68a16fea63e734f3e3b6871dcb0b8..3b557c41fc21591fa06ead5d7d1eae871172ffa4 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java -@@ -578,7 +578,7 @@ public class ServerPlayerGameMode { +@@ -579,7 +579,7 @@ public class ServerPlayerGameMode { boolean flag1 = player.isSecondaryUseActive() && flag; ItemStack itemstack1 = stack.copy(); @@ -90,7 +90,7 @@ index 10d3912ef043eefdf89105332e29b0d2bf4a5539..596b77306f690a2298835f0f0fea1abe int i = (Integer) state.getValue(ComposterBlock.LEVEL); diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 25972a20c4930d718e4f039d4d19c35d4adb0f03..f23be13aa229537dd6f9247a3008981e4ee098bc 100644 +index a855bb2e4f04a64e47611b20342e1eb484f6bf22..71d472912a2c8dda6102357f6ed619e543e3b534 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -479,6 +479,11 @@ public class PurpurWorldConfig { diff --git a/patches/server/0147-Drowning-Settings.patch b/patches/server/0147-Drowning-Settings.patch index 930b996d6..cfd96dfe0 100644 --- a/patches/server/0147-Drowning-Settings.patch +++ b/patches/server/0147-Drowning-Settings.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Drowning Settings diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 5790e3f1d5e2c43f401bfd93e85ddee799a6aad2..cbb786b246847a9463f9f34a63aafa686f0db7fe 100644 +index 3c3f919a468435ee327e3569849f4194ef214b57..9304dda9563cb3b5e9a8f386cc2d479ecd048f05 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -3345,7 +3345,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -3371,7 +3371,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { } public int getMaxAirSupply() { @@ -18,7 +18,7 @@ index 5790e3f1d5e2c43f401bfd93e85ddee799a6aad2..cbb786b246847a9463f9f34a63aafa68 public int getAirSupply() { diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 9aac4f3b758665d27a02340f97a6b16378ba11bf..95daa04ba54b8a5e1de707ca31d40c60e4d039d7 100644 +index b4834e26c297b0440f07fa38e97f928cc820fcc7..b7b936deddfbb07768befd49ccc14c5d86c06508 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -439,7 +439,7 @@ public abstract class LivingEntity extends Entity implements Attackable { @@ -40,7 +40,7 @@ index 9aac4f3b758665d27a02340f97a6b16378ba11bf..95daa04ba54b8a5e1de707ca31d40c60 } diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 0eb757ba6523e23271a08ec8af66fd6fb581ce27..50dbb896e7bfcb009d0a1819f8b994cff668a06d 100644 +index fce3d4c4af444860c72b5058fcd7276838299f89..d002bc3c3a99253a990aac0ae117de078475d144 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -164,6 +164,15 @@ public class PurpurWorldConfig { diff --git a/patches/server/0148-Break-individual-slabs-when-sneaking.patch b/patches/server/0148-Break-individual-slabs-when-sneaking.patch index d7208c51b..268b5974e 100644 --- a/patches/server/0148-Break-individual-slabs-when-sneaking.patch +++ b/patches/server/0148-Break-individual-slabs-when-sneaking.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Break individual slabs when sneaking diff --git a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java -index f65eb045e518cdba91ace4483e385805b0e1171f..2c9deba9da45feb81ed5801c33aa64e38f8d6a79 100644 +index 3b557c41fc21591fa06ead5d7d1eae871172ffa4..ea28ac7cc590aea0e3ac778e597d807412708756 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java -@@ -398,6 +398,7 @@ public class ServerPlayerGameMode { +@@ -397,6 +397,7 @@ public class ServerPlayerGameMode { } else {capturedBlockEntity = true;} // Paper end return false; } @@ -47,7 +47,7 @@ index ea8c78af35b0ddc0d08adfccfc78770b867e5df6..88cfa41f90d4ad395b96fd0b69ac0bde + // Purpur end } diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 50dbb896e7bfcb009d0a1819f8b994cff668a06d..1c9cba09dc987651f8533b0324578472ca2d5b02 100644 +index d002bc3c3a99253a990aac0ae117de078475d144..0f13f4727ee854fa66df7ec9f49d33622a05e252 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -600,6 +600,11 @@ public class PurpurWorldConfig { diff --git a/patches/server/0152-Config-to-allow-for-unsafe-enchants.patch b/patches/server/0152-Config-to-allow-for-unsafe-enchants.patch index 6658e842d..663a31152 100644 --- a/patches/server/0152-Config-to-allow-for-unsafe-enchants.patch +++ b/patches/server/0152-Config-to-allow-for-unsafe-enchants.patch @@ -74,10 +74,10 @@ index cccd34370d76d96eddeba3de1cfc41d47f9d1f60..ceac7d74f6fbe6519535357a03a0e4d1 ((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 6e6f60554b36117a833949ef2f9a4b68f6518a1d..048151dd863692b41721c063d9a287f11cb2a0df 100644 +index 191bcb10f9976b815038d73ac60c0ddd6f7ee24a..43366430f1219dc364f1bf7b8112a232f85c275f 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java -@@ -1213,6 +1213,12 @@ public final class ItemStack { +@@ -1215,6 +1215,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/0161-Configurable-broadcast-settings.patch b/patches/server/0161-Configurable-broadcast-settings.patch index 3e505c718..789bae4d5 100644 --- a/patches/server/0161-Configurable-broadcast-settings.patch +++ b/patches/server/0161-Configurable-broadcast-settings.patch @@ -17,10 +17,10 @@ index 0b3a06027f2c600960cd88159803be187c4d0317..533a348acb53c8e7590f3d81c19e53a6 // 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 b5de1fc5d352de4ba978cb718e57a913431a7c9a..04394c0b122d646ce35c259de41f97e93461955f 100644 +index a81b3001842971e12c98311d3cb3347f1b284fe9..934838dc695b708d0672d787887726587dc5762c 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -1006,6 +1006,7 @@ public class ServerPlayer extends Player { +@@ -1004,6 +1004,7 @@ public class ServerPlayer extends Player { })); Team scoreboardteambase = this.getTeam(); diff --git a/patches/server/0172-ShulkerBox-allow-oversized-stacks.patch b/patches/server/0172-ShulkerBox-allow-oversized-stacks.patch index 704e05f48..3738a72dd 100644 --- a/patches/server/0172-ShulkerBox-allow-oversized-stacks.patch +++ b/patches/server/0172-ShulkerBox-allow-oversized-stacks.patch @@ -9,10 +9,10 @@ creating an itemstack using the TileEntity's NBT data (how it handles it for creative players) instead of routing it through the LootableBuilder. diff --git a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java -index 2c9deba9da45feb81ed5801c33aa64e38f8d6a79..0838b3c612c832276afa1edc090ef7771e8bf2fc 100644 +index ea28ac7cc590aea0e3ac778e597d807412708756..dce9f57806052337c9256d45e95b4b84a88bf852 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java -@@ -429,7 +429,7 @@ public class ServerPlayerGameMode { +@@ -428,7 +428,7 @@ public class ServerPlayerGameMode { ItemStack mainHandStack = null; // Paper boolean isCorrectTool = false; // Paper @@ -35,7 +35,7 @@ index d5fe3b8e2f5a8899f6afeb0600764284a617f261..2b513fc2f6c33963e43093cb08594bff blockEntity.saveToItem(itemStack); if (shulkerBoxBlockEntity.hasCustomName()) { diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 2abe6192ab9caac24aae3c8488cf0ee3cb3173d7..bb01e0a0e92d9c6fad33129fe61a2a53779f44ff 100644 +index e50d8cb072acd403c285fee9a0df80e4d5946846..49416c3d1c8a8d3cb3882ea9394898ff4eb73118 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -657,6 +657,11 @@ public class PurpurWorldConfig { diff --git a/patches/server/0178-Add-toggle-for-end-portal-safe-teleporting.patch b/patches/server/0178-Add-toggle-for-end-portal-safe-teleporting.patch index b5f24f045..f8d11df58 100644 --- a/patches/server/0178-Add-toggle-for-end-portal-safe-teleporting.patch +++ b/patches/server/0178-Add-toggle-for-end-portal-safe-teleporting.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add toggle for end portal safe teleporting diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 6f56cbf6104303cb6ddfa59f41e37a64e3c18ae2..bf48e496f4988f45ea8c92eb45544f44753e5738 100644 +index 3cbed62b617cf3147030b185f6ae6d829aee9476..a275702357c21187225710858c10a7b184e73879 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -3170,7 +3170,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -3196,7 +3196,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { } this.processPortalCooldown(); @@ -45,7 +45,7 @@ index f80f6da484f4144e743079e5104bf503419074b2..2deddc746e43896584bd65ba8e7971a8 entity.portalWorld = ((ServerLevel)world); entity.portalBlock = pos.immutable(); diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index ce9a971ce1b9657823988395cb37b109a7b3410e..db5156b0781cedc56929f73d3183b853b26ff4f7 100644 +index 36010960bd8511c17cb00bf4eda4cb0cfb89cf58..36fe53481de6b72841ac7b7a771bba355726941b 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -631,6 +631,11 @@ public class PurpurWorldConfig { diff --git a/patches/server/0190-Store-placer-on-Block-when-placed.patch b/patches/server/0190-Store-placer-on-Block-when-placed.patch index 7c35d7b30..4e7310b52 100644 --- a/patches/server/0190-Store-placer-on-Block-when-placed.patch +++ b/patches/server/0190-Store-placer-on-Block-when-placed.patch @@ -5,7 +5,7 @@ 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 048151dd863692b41721c063d9a287f11cb2a0df..c0588e87f6f0ec3d642eacac41a3060abc08e33d 100644 +index 43366430f1219dc364f1bf7b8112a232f85c275f..5532e166c7e010add65e5921722b50272c805c03 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java @@ -432,6 +432,7 @@ public final class ItemStack { @@ -16,7 +16,7 @@ index 048151dd863692b41721c063d9a287f11cb2a0df..c0588e87f6f0ec3d642eacac41a3060a } world.preventPoiUpdated = false; -@@ -461,6 +462,7 @@ public final class ItemStack { +@@ -463,6 +464,7 @@ public final class ItemStack { if (!(block.getBlock() instanceof BaseEntityBlock)) { // Containers get placed automatically block.getBlock().onPlace(block, world, newblockposition, oldBlock, true, context); // Paper - pass context } diff --git a/patches/server/0192-Customizable-sleeping-actionbar-messages.patch b/patches/server/0192-Customizable-sleeping-actionbar-messages.patch index c5065add9..3b1e397ce 100644 --- a/patches/server/0192-Customizable-sleeping-actionbar-messages.patch +++ b/patches/server/0192-Customizable-sleeping-actionbar-messages.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Customizable sleeping actionbar messages diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index 4edea5ea0964bc054b76b1c6635c5b719721e202..f7d9398c9a73c8a02a2515b9d43b49433e5f883c 100644 +index 81c7fc2cb4c49745b45ecaaa20d91bab457272d5..331985ee26b9491b7ff71c6a104fafd08f983554 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -1219,11 +1219,27 @@ public class ServerLevel extends Level implements WorldGenLevel { @@ -38,10 +38,10 @@ index 4edea5ea0964bc054b76b1c6635c5b719721e202..f7d9398c9a73c8a02a2515b9d43b4943 } diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 04394c0b122d646ce35c259de41f97e93461955f..4cc1604114ce283a70fb8faf89ac2b3979b06b52 100644 +index 934838dc695b708d0672d787887726587dc5762c..f149c4149bf3c19e87c15cbea0078c95283a4d84 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -1466,7 +1466,19 @@ public class ServerPlayer extends Player { +@@ -1464,7 +1464,19 @@ public class ServerPlayer extends Player { }); if (!this.serverLevel().canSleepThroughNights()) { diff --git a/patches/server/0193-option-to-disable-shulker-box-items-from-dropping-co.patch b/patches/server/0193-option-to-disable-shulker-box-items-from-dropping-co.patch index 0a7e015a3..9b6506fad 100644 --- a/patches/server/0193-option-to-disable-shulker-box-items-from-dropping-co.patch +++ b/patches/server/0193-option-to-disable-shulker-box-items-from-dropping-co.patch @@ -6,10 +6,10 @@ Subject: [PATCH] option to disable shulker box items from dropping contents diff --git a/src/main/java/net/minecraft/world/item/BlockItem.java b/src/main/java/net/minecraft/world/item/BlockItem.java -index e483186a5292b3b53bfb1af4d56f55fcc1a6106c..ec58193ebd73130f14dc5d8f51caa913b2036fc5 100644 +index efdf56044396b4ce486948d2c993971f99174a5e..21916ab9bde38ef8383e746f2ce597b0fcb81d9b 100644 --- a/src/main/java/net/minecraft/world/item/BlockItem.java +++ b/src/main/java/net/minecraft/world/item/BlockItem.java -@@ -288,7 +288,7 @@ public class BlockItem extends Item { +@@ -287,7 +287,7 @@ public class BlockItem extends Item { @Override public void onDestroyed(ItemEntity entity) { @@ -19,7 +19,7 @@ index e483186a5292b3b53bfb1af4d56f55fcc1a6106c..ec58193ebd73130f14dc5d8f51caa913 CompoundTag nbttagcompound = BlockItem.getBlockEntityData(itemstack); diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index c2bc762175dfab4f64b00c56bbb28ff26b3cad73..8a6b73793bab42e683e22a54d8b801d65baf5fe5 100644 +index ad40281464ef651b01520f5662d315ed2f84304b..943fcd97ff515fbcc8508344f5094180ba181978 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -221,6 +221,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0197-Add-compass-command.patch b/patches/server/0197-Add-compass-command.patch index bd4a9e773..7528ba3de 100644 --- a/patches/server/0197-Add-compass-command.patch +++ b/patches/server/0197-Add-compass-command.patch @@ -17,7 +17,7 @@ index e254f7c498c5a1608afe130b2dd4d3d037069f25..af712f089e7919fa0bd3946866fd3486 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 6dbc75a216b52cf1c2d398e781893a61d95fb7da..39e64f3fcce79897d18aa2cf4c1224a994839cad 100644 +index f149c4149bf3c19e87c15cbea0078c95283a4d84..1cca542c33510a01fb59631e68b1aa212d8230a5 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 { @@ -44,7 +44,7 @@ index 6dbc75a216b52cf1c2d398e781893a61d95fb7da..39e64f3fcce79897d18aa2cf4c1224a9 } // CraftBukkit start - World fallback code, either respawn location or global spawn -@@ -2802,5 +2805,13 @@ public class ServerPlayer extends Player { +@@ -2800,5 +2803,13 @@ public class ServerPlayer extends Player { public void tpsBar(boolean tpsBar) { this.tpsBar = tpsBar; } @@ -89,7 +89,7 @@ index 9a9c4826dab3de9e63ba984f8b2e1b3b7aa5a98b..62fa79eccbb6f679c0460a6dfd457c40 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 0319fa5cb86e40520228bbdbd41e51c38cb4ffd6..3d5d4d444aa4e7e7226c6296677d3cc630af54e2 100644 +index d26630c3a5d34b51f2104fe135d5a11a87e4e974..5f48af20f046bf516ecaf0dfd9fd2b0fc209c1ad 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -222,6 +222,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0213-Shift-right-click-to-use-exp-for-mending.patch b/patches/server/0213-Shift-right-click-to-use-exp-for-mending.patch index a5ff82e2a..93b94235a 100644 --- a/patches/server/0213-Shift-right-click-to-use-exp-for-mending.patch +++ b/patches/server/0213-Shift-right-click-to-use-exp-for-mending.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Shift right click to use exp for mending diff --git a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java -index 0520d66d9de942f12f61dd1f735f8c19d5d62f07..818b360c205c7667946f49e324daa961b3b446cb 100644 +index dce9f57806052337c9256d45e95b4b84a88bf852..6f8d990cbc15c3fa11acdf59fc1ec1fa583f60ec 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java -@@ -518,6 +518,7 @@ public class ServerPlayerGameMode { +@@ -517,6 +517,7 @@ public class ServerPlayerGameMode { public InteractionHand interactHand; public ItemStack interactItemStack; public InteractionResult useItemOn(ServerPlayer player, Level world, ItemStack stack, InteractionHand hand, BlockHitResult hitResult) { @@ -16,7 +16,7 @@ index 0520d66d9de942f12f61dd1f735f8c19d5d62f07..818b360c205c7667946f49e324daa961 BlockPos blockposition = hitResult.getBlockPos(); BlockState iblockdata = world.getBlockState(blockposition); InteractionResult enuminteractionresult = InteractionResult.PASS; -@@ -620,4 +621,18 @@ public class ServerPlayerGameMode { +@@ -621,4 +622,18 @@ public class ServerPlayerGameMode { public void setLevel(ServerLevel world) { this.level = world; } @@ -48,7 +48,7 @@ index a541c642ef5132ec41dedac770fd31d96401806c..2152abc4ea04515a688af1dca8174f96 cancelled = event.useItemInHand() == Event.Result.DENY; } else { diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index a3a5decf6586569c347d36f4416cf3cb3b0bef78..8e658c5e81b85fa4fa36b9e18a02bd0634e42554 100644 +index e3c83c9cd122fb4917f1292d3623a5a902562579..1147ae92fb688d57cf4e831bd43be203064a0e88 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -413,6 +413,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0223-Persistent-BlockEntity-Lore-and-DisplayName.patch b/patches/server/0223-Persistent-BlockEntity-Lore-and-DisplayName.patch index f9074e9dc..9a68c5fd8 100644 --- a/patches/server/0223-Persistent-BlockEntity-Lore-and-DisplayName.patch +++ b/patches/server/0223-Persistent-BlockEntity-Lore-and-DisplayName.patch @@ -7,10 +7,10 @@ Makes it so that when a BlockEntity is placed in the world and then broken, the dropped ItemStack retains any original custom display name/lore. diff --git a/src/main/java/net/minecraft/world/item/BlockItem.java b/src/main/java/net/minecraft/world/item/BlockItem.java -index ec58193ebd73130f14dc5d8f51caa913b2036fc5..41728bcbd5ca3585da64f7c3289b26977f90c229 100644 +index 21916ab9bde38ef8383e746f2ce597b0fcb81d9b..42bfde8e36b6395f50973300313d6959e2735327 100644 --- a/src/main/java/net/minecraft/world/item/BlockItem.java +++ b/src/main/java/net/minecraft/world/item/BlockItem.java -@@ -153,7 +153,24 @@ public class BlockItem extends Item { +@@ -152,7 +152,24 @@ public class BlockItem extends Item { } protected boolean updateCustomBlockEntityTag(BlockPos pos, Level world, @Nullable Player player, ItemStack stack, BlockState state) { @@ -195,7 +195,7 @@ index 370a25d2deb54f10a35ee24d9e7e92fbfde60edf..2f19f6ac5de454845f5d13a3ebb93af6 + // Purpur end } diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index cbf30293766899b7aa66dc922ba76395feca1094..0f8384ba3bb9b6f36bb36bf833c260076b49014e 100644 +index 48b21a71c25974668600cee9437cc8214f47b906..df79037cb06d06d716d0615ec89792ec30e5c18c 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -130,6 +130,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0224-Signs-allow-color-codes.patch b/patches/server/0224-Signs-allow-color-codes.patch index 72f9f8709..27aba3cdc 100644 --- a/patches/server/0224-Signs-allow-color-codes.patch +++ b/patches/server/0224-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 f00c8b834db7ff9c92d878560d83db91b76c82fe..6a97eca066c6957eefb15e8f23eb29b1781cf1a9 100644 +index 1cca542c33510a01fb59631e68b1aa212d8230a5..e91f5203478623a6b50ad28236e265bd599ce999 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -1578,6 +1578,7 @@ public class ServerPlayer extends Player { +@@ -1576,6 +1576,7 @@ public class ServerPlayer extends Player { @Override public void openTextEdit(SignBlockEntity sign, boolean front) { @@ -84,7 +84,7 @@ index 38cde466714e5663cd416b6afd5d2558e139ec09..2d625f18f2ba42ee5a1ebeea78ca395a 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 0f8384ba3bb9b6f36bb36bf833c260076b49014e..3d07df1fbe7116df6f97a2fb3931e739c38b671e 100644 +index df79037cb06d06d716d0615ec89792ec30e5c18c..504225c5b6085ca25a816d4a6259de36ed68941c 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -977,6 +977,11 @@ public class PurpurWorldConfig { diff --git a/patches/server/0237-Configurable-farmland-trample-height.patch b/patches/server/0237-Configurable-farmland-trample-height.patch index 41e01486d..777da4159 100644 --- a/patches/server/0237-Configurable-farmland-trample-height.patch +++ b/patches/server/0237-Configurable-farmland-trample-height.patch @@ -22,10 +22,10 @@ Value set -> Actual fall distance needed to trample 6.0 -> 6.75 diff --git a/src/main/java/net/minecraft/world/level/block/FarmBlock.java b/src/main/java/net/minecraft/world/level/block/FarmBlock.java -index 56e66fcd840d0d3681ba671d1ffc51b232631461..d566f67f8f6f1748023430de4f191881b79e44a1 100644 +index 84107011175b6e58b463d5d1b716a3262be0db77..856099241737c43b8213ccc203ef6bb7b7667b1f 100644 --- a/src/main/java/net/minecraft/world/level/block/FarmBlock.java +++ b/src/main/java/net/minecraft/world/level/block/FarmBlock.java -@@ -101,7 +101,7 @@ public class FarmBlock extends Block { +@@ -103,7 +103,7 @@ public class FarmBlock extends Block { @Override public void fallOn(Level world, BlockState state, BlockPos pos, Entity entity, float fallDistance) { super.fallOn(world, state, pos, entity, fallDistance); // CraftBukkit - moved here as game rules / events shouldn't affect fall damage. @@ -35,7 +35,7 @@ index 56e66fcd840d0d3681ba671d1ffc51b232631461..d566f67f8f6f1748023430de4f191881 org.bukkit.event.Cancellable cancellable; if (entity instanceof Player) { diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 60beda5c1f3b7ca562b8ba9ff48e0c6e50e89649..3d1107d954d8dd040895908ddadf2c11c437a9ef 100644 +index 04bccaa4fe7e81a8f82f567bfb2a9bb838961ff4..4c4c5c853eb8a840e76af9aacd73a26e83aaf6f4 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -889,6 +889,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0250-Add-toggle-for-enchant-level-clamping.patch b/patches/server/0250-Add-toggle-for-enchant-level-clamping.patch index 4556e3b5a..57cc0984b 100644 --- a/patches/server/0250-Add-toggle-for-enchant-level-clamping.patch +++ b/patches/server/0250-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 c0588e87f6f0ec3d642eacac41a3060abc08e33d..fc481f26368f4d823379921573a05ac5b91f39e6 100644 +index 5532e166c7e010add65e5921722b50272c805c03..2776b124dd15e4c84edcfbf98ba44d53ef149e43 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java -@@ -1207,7 +1207,7 @@ public final class ItemStack { +@@ -1209,7 +1209,7 @@ public final class ItemStack { ListTag nbttaglist = this.tag.getList("Enchantments", 10); diff --git a/patches/server/0262-Add-local-difficulty-api.patch b/patches/server/0262-Add-local-difficulty-api.patch index e109f7678..6555f6ab4 100644 --- a/patches/server/0262-Add-local-difficulty-api.patch +++ b/patches/server/0262-Add-local-difficulty-api.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add local difficulty api diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index f19f2199cac5a7eb275f40cc23472416a40ec0da..14e9e5ad1338c8cbb7fd6302794fa98c707cb2d3 100644 +index 90c76ddcb8af13409490b8976263d27a71954668..99df34c7efb003d63142a1cd191d863c5315b4cb 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -@@ -2348,6 +2348,12 @@ public class CraftWorld extends CraftRegionAccessor implements World { +@@ -2354,6 +2354,12 @@ public class CraftWorld extends CraftRegionAccessor implements World { return (this.getHandle().getDragonFight() == null) ? null : new CraftDragonBattle(this.getHandle().getDragonFight()); } diff --git a/patches/server/0267-Remove-Mojang-Profiler.patch b/patches/server/0267-Remove-Mojang-Profiler.patch index fece02ba3..fabd4e667 100644 --- a/patches/server/0267-Remove-Mojang-Profiler.patch +++ b/patches/server/0267-Remove-Mojang-Profiler.patch @@ -778,10 +778,10 @@ index ac28e6fecabe74fc0207ad4832ef166d5fc0b59b..1c8724fb56e790922c7e8fc73bc97442 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 1a864d733d8a9a098edacc048fc20a65c18f7684..199edc0bdb370e83541167bfb1dd219ed42ad829 100644 +index e91f5203478623a6b50ad28236e265bd599ce999..70d952fedba4b9bab44e0e6de94d60b894538ce7 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -1237,7 +1237,7 @@ public class ServerPlayer extends Player { +@@ -1235,7 +1235,7 @@ public class ServerPlayer extends Player { PortalInfo shapedetectorshape = this.findDimensionEntryPoint(worldserver); if (shapedetectorshape != null) { @@ -790,7 +790,7 @@ index 1a864d733d8a9a098edacc048fc20a65c18f7684..199edc0bdb370e83541167bfb1dd219e 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 -@@ -1260,8 +1260,8 @@ public class ServerPlayer extends Player { +@@ -1258,8 +1258,8 @@ public class ServerPlayer extends Player { worldserver = ((CraftWorld) exit.getWorld()).getHandle(); // CraftBukkit end @@ -801,7 +801,7 @@ index 1a864d733d8a9a098edacc048fc20a65c18f7684..199edc0bdb370e83541167bfb1dd219e if (true) { // CraftBukkit this.isChangingDimension = true; // CraftBukkit - Set teleport invulnerability only if player changing worlds -@@ -1279,7 +1279,7 @@ public class ServerPlayer extends Player { +@@ -1277,7 +1277,7 @@ public class ServerPlayer extends Player { this.connection.teleport(exit); // CraftBukkit - use internal teleport without event this.connection.resetPosition(); worldserver.addDuringPortalTeleport(this); @@ -1037,7 +1037,7 @@ index 2e6e8eac987c4ef6b2dcd3de592d8a51d2b29792..863343a87fe34d72f04af89d75268b47 }; } diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index f9998e1d3adff725842cff41b2950492e6936971..4254946d3f993478e44a8dda18d8a4e612ca8dad 100644 +index 1edc85fd226df294e4c6880dc26591a298c8789b..c8e410dd79a61865eb7610bd038af17b540f8159 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -842,7 +842,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { @@ -1105,7 +1105,7 @@ index f9998e1d3adff725842cff41b2950492e6936971..4254946d3f993478e44a8dda18d8a4e6 } } // Paper start - detailed watchdog information -@@ -3137,7 +3137,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -3163,7 +3163,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { ServerLevel worldserver1 = minecraftserver.getLevel(resourcekey); if (true && !this.isPassenger() && this.portalTime++ >= i) { // CraftBukkit @@ -1114,7 +1114,7 @@ index f9998e1d3adff725842cff41b2950492e6936971..4254946d3f993478e44a8dda18d8a4e6 this.portalTime = i; // Paper start io.papermc.paper.event.entity.EntityPortalReadyEvent event = new io.papermc.paper.event.entity.EntityPortalReadyEvent(this.getBukkitEntity(), worldserver1 == null ? null : worldserver1.getWorld(), org.bukkit.PortalType.NETHER); -@@ -3155,7 +3155,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -3181,7 +3181,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { } } // Paper // CraftBukkit end @@ -1123,7 +1123,7 @@ index f9998e1d3adff725842cff41b2950492e6936971..4254946d3f993478e44a8dda18d8a4e6 } this.isInsidePortal = false; -@@ -3630,14 +3630,14 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -3656,14 +3656,14 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { } // Paper end if (this.level() instanceof ServerLevel && !this.isRemoved()) { @@ -1140,7 +1140,7 @@ index f9998e1d3adff725842cff41b2950492e6936971..4254946d3f993478e44a8dda18d8a4e6 PortalInfo shapedetectorshape = (location == null) ? this.findDimensionEntryPoint(worldserver) : new PortalInfo(new Vec3(location.x(), location.y(), location.z()), Vec3.ZERO, this.yRot, this.xRot, worldserver, null); // CraftBukkit if (shapedetectorshape == null) { -@@ -3676,7 +3676,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -3702,7 +3702,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { this.unRide(); // CraftBukkit end @@ -1149,7 +1149,7 @@ index f9998e1d3adff725842cff41b2950492e6936971..4254946d3f993478e44a8dda18d8a4e6 // Paper start - Change lead drop timing to prevent dupe if (this instanceof Mob) { ((Mob) this).dropLeash(true, true); // Paper drop lead -@@ -3699,10 +3699,10 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -3725,10 +3725,10 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { } this.removeAfterChangingDimensions(); @@ -1163,7 +1163,7 @@ index f9998e1d3adff725842cff41b2950492e6936971..4254946d3f993478e44a8dda18d8a4e6 } } else { diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index c8dc1d1f67474a06f82385d6ab7d893e3cb115ef..c7815bc795ff11d521f4fa1417fe475787e65c3c 100644 +index 8ef2540b295a6cb9a3b79b3481336bfd59d1dbba..f3ae27e860a5cb0c622b7c419a70b2c0998f230b 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -410,7 +410,7 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/0270-Debug-Marker-API.patch b/patches/server/0270-Debug-Marker-API.patch index 0ca075095..a5d6c17cb 100644 --- a/patches/server/0270-Debug-Marker-API.patch +++ b/patches/server/0270-Debug-Marker-API.patch @@ -52,10 +52,10 @@ index 85546e81f90676df985de1ba6d6aa066aef4762a..ce33562ad91d4fee2c2f41e27c414f34 @Override diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 14e9e5ad1338c8cbb7fd6302794fa98c707cb2d3..8b32ed17c1511cfd313875d4c8d2d0e48a4c6e69 100644 +index 99df34c7efb003d63142a1cd191d863c5315b4cb..bc9a049df648fa5a169219bb009c92a213df9ffd 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -@@ -2352,6 +2352,42 @@ public class CraftWorld extends CraftRegionAccessor implements World { +@@ -2358,6 +2358,42 @@ public class CraftWorld extends CraftRegionAccessor implements World { public float getLocalDifficultyAt(Location location) { return getHandle().getCurrentDifficultyAt(io.papermc.paper.util.MCUtil.toBlockPosition(location)).getEffectiveDifficulty(); } diff --git a/patches/server/0276-Implement-ram-and-rambar-commands.patch b/patches/server/0276-Implement-ram-and-rambar-commands.patch index f86418eb3..03ad8a8b8 100644 --- a/patches/server/0276-Implement-ram-and-rambar-commands.patch +++ b/patches/server/0276-Implement-ram-and-rambar-commands.patch @@ -18,7 +18,7 @@ index 9caab6541a224dc8f729a7d720eccda7bd83ed53..2fd376789bb24b14101e289733631a9a 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 38eed0f72cb6247418944fdd0770e4f9bda38f9e..a19c2d10385d3bc81061f188e2874fe118ddd425 100644 +index 70d952fedba4b9bab44e0e6de94d60b894538ce7..7b72be8dcaf3fc5c7151c847faa2dfc75ef9eeb7 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 { @@ -45,7 +45,7 @@ index 38eed0f72cb6247418944fdd0770e4f9bda38f9e..a19c2d10385d3bc81061f188e2874fe1 nbt.putBoolean("Purpur.TPSBar", this.tpsBar); // Purpur nbt.putBoolean("Purpur.CompassBar", this.compassBar); // Purpur } -@@ -2814,5 +2817,13 @@ public class ServerPlayer extends Player { +@@ -2812,5 +2815,13 @@ public class ServerPlayer extends Player { public void compassBar(boolean compassBar) { this.compassBar = compassBar; }