diff --git a/patches/api/0004-Code-Generation.patch b/patches/api/0004-Code-Generation.patch index db8cb5a43..ba80e55b1 100644 --- a/patches/api/0004-Code-Generation.patch +++ b/patches/api/0004-Code-Generation.patch @@ -85,10 +85,10 @@ index 0000000000000000000000000000000000000000..2512dba27edfdccbc4430815b6cba048 +} diff --git a/src/main/java/io/papermc/paper/registry/RegistryKey.java b/src/main/java/io/papermc/paper/registry/RegistryKey.java new file mode 100644 -index 0000000000000000000000000000000000000000..76daccf4ea502e1747a6f9176dc16fd20c561286 +index 0000000000000000000000000000000000000000..7763ea28a00c25ffd8ba8941cff29bae5ae117a2 --- /dev/null +++ b/src/main/java/io/papermc/paper/registry/RegistryKey.java -@@ -0,0 +1,147 @@ +@@ -0,0 +1,149 @@ +package io.papermc.paper.registry; + +import net.kyori.adventure.key.Keyed; @@ -114,6 +114,7 @@ index 0000000000000000000000000000000000000000..76daccf4ea502e1747a6f9176dc16fd2 +import org.bukkit.generator.structure.Structure; +import org.bukkit.generator.structure.StructureType; +import org.bukkit.inventory.ItemType; ++import org.bukkit.inventory.MenuType; +import org.bukkit.inventory.meta.trim.TrimMaterial; +import org.bukkit.inventory.meta.trim.TrimPattern; +import org.bukkit.map.MapCursor; @@ -235,6 +236,7 @@ index 0000000000000000000000000000000000000000..76daccf4ea502e1747a6f9176dc16fd2 + RegistryKey FLUID = create("fluid"); + RegistryKey FROG_VARIANT = create("frog_variant"); + RegistryKey MAP_DECORATION_TYPE = create("map_decoration_type"); ++ RegistryKey MENU = create("menu"); +} diff --git a/src/main/java/io/papermc/paper/registry/RegistryKeyImpl.java b/src/main/java/io/papermc/paper/registry/RegistryKeyImpl.java new file mode 100644 diff --git a/patches/api/0006-Adventure.patch b/patches/api/0006-Adventure.patch index e7fba0f82..229712764 100644 --- a/patches/api/0006-Adventure.patch +++ b/patches/api/0006-Adventure.patch @@ -3343,16 +3343,16 @@ index 133760be6c73436512ba684a3ac77a514b2d8765..9473303bd8ab1f6b63b6999a5f5ff3ec * Gets how much EXP the Player should have at respawn. *

diff --git a/src/main/java/org/bukkit/event/inventory/InventoryType.java b/src/main/java/org/bukkit/event/inventory/InventoryType.java -index c5734d66686e68080f55034754d43ae55030c3eb..32cd8ee2e849df602a7e10aa5d0a218007faa0ac 100644 +index 094963b16eccc303fb1a10b1e052feebe4a4d68b..3e6ac5beb137efd8ecd80e2e9b17015cb38e8a0a 100644 --- a/src/main/java/org/bukkit/event/inventory/InventoryType.java +++ b/src/main/java/org/bukkit/event/inventory/InventoryType.java -@@ -161,6 +161,18 @@ public enum InventoryType { +@@ -163,7 +163,18 @@ public enum InventoryType { private final String title; + private final MenuType menuType; private final boolean isCreatable; - + // Paper start + private final net.kyori.adventure.text.Component defaultTitleComponent; -+ + + /** + * Gets the inventory's default title. + * @@ -3362,18 +3362,18 @@ index c5734d66686e68080f55034754d43ae55030c3eb..32cd8ee2e849df602a7e10aa5d0a2180 + return defaultTitleComponent; + } + // Paper end - private InventoryType(int defaultSize, /*@NotNull*/ String defaultTitle) { - this(defaultSize, defaultTitle, true); + private InventoryType(int defaultSize, /*@NotNull*/ String defaultTitle, @Nullable MenuType type) { + this(defaultSize, defaultTitle, type, true); } -@@ -169,6 +181,7 @@ public enum InventoryType { - size = defaultSize; +@@ -173,6 +184,7 @@ public enum InventoryType { title = defaultTitle; + this.menuType = type; this.isCreatable = isCreatable; + this.defaultTitleComponent = net.kyori.adventure.text.Component.text(defaultTitle); // Paper - Adventure } public int getDefaultSize() { -@@ -176,6 +189,7 @@ public enum InventoryType { +@@ -180,6 +192,7 @@ public enum InventoryType { } @NotNull @@ -4421,6 +4421,56 @@ index eade62328895133c026e7e678e648e1fc846f5ee..730c42eddd38acec1cdbb19dfc8c6757 + } + // Paper end } +diff --git a/src/main/java/org/bukkit/inventory/MenuType.java b/src/main/java/org/bukkit/inventory/MenuType.java +index ee39bf9019fa0377beb895a22db0b2a0934a4d84..29dfad691cbdd09d043f6171defc8a7fabbc2b75 100644 +--- a/src/main/java/org/bukkit/inventory/MenuType.java ++++ b/src/main/java/org/bukkit/inventory/MenuType.java +@@ -146,11 +146,45 @@ public interface MenuType extends Keyed { + * @param player the player the view belongs to + * @param title the title of the view + * @return the created {@link InventoryView} ++ * @deprecated Use {@link #create(HumanEntity, net.kyori.adventure.text.Component)} instead. + */ + @NotNull ++ @Deprecated(since = "1.21") // Paper - adventure + V create(@NotNull HumanEntity player, @NotNull String title); ++ ++ // Paper start - adventure ++ /** ++ * Creates a view of the specified menu type. ++ *

++ * The player provided to create this view must be the player the view ++ * is opened for. See {@link HumanEntity#openInventory(InventoryView)} ++ * for more information. ++ * ++ * @param player the player the view belongs to ++ * @param title the title of the view ++ * @return the created {@link InventoryView} ++ */ ++ @NotNull ++ V create(@NotNull HumanEntity player, @NotNull net.kyori.adventure.text.Component title); ++ // Paper end - adventure + } + ++ // Paper start - adventure ++ /** ++ * Creates a view of the specified menu type. ++ *

++ * The player provided to create this view must be the player the view ++ * is opened for. See {@link HumanEntity#openInventory(InventoryView)} ++ * for more information. ++ * ++ * @param player the player the view belongs to ++ * @param title the title of the view ++ * @return the created {@link InventoryView} ++ */ ++ @NotNull ++ InventoryView create(@NotNull HumanEntity player, @NotNull net.kyori.adventure.text.Component title); ++ // Paper end - adventure ++ + /** + * Yields this MenuType as a typed version of itself with a plain + * {@link InventoryView} representing it. diff --git a/src/main/java/org/bukkit/inventory/meta/BookMeta.java b/src/main/java/org/bukkit/inventory/meta/BookMeta.java index 9bab73c3c2ca759b8e1c7d07d98cc593c961666a..f0c6943da3f783101ca647b75b3230fae3a310da 100644 --- a/src/main/java/org/bukkit/inventory/meta/BookMeta.java diff --git a/patches/api/0025-Add-methods-for-working-with-arrows-stuck-in-living-.patch b/patches/api/0025-Add-methods-for-working-with-arrows-stuck-in-living-.patch index 471ee35ff..75f427c67 100644 --- a/patches/api/0025-Add-methods-for-working-with-arrows-stuck-in-living-.patch +++ b/patches/api/0025-Add-methods-for-working-with-arrows-stuck-in-living-.patch @@ -7,7 +7,7 @@ Upstream added methods for this so the original methods are now deprecated diff --git a/src/main/java/org/bukkit/entity/LivingEntity.java b/src/main/java/org/bukkit/entity/LivingEntity.java -index 67115810d5e837f154c3accd92dbb5e4192d264f..32e89741ffd895e31af0104a0126c2f72742a1bb 100644 +index b5a302ba913d2de97f1bcd7c60fd5cd4f245d275..cafa79f80eec5ec6d8d31d40cc2b46acc06831f9 100644 --- a/src/main/java/org/bukkit/entity/LivingEntity.java +++ b/src/main/java/org/bukkit/entity/LivingEntity.java @@ -243,12 +243,44 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource @@ -56,7 +56,7 @@ index 67115810d5e837f154c3accd92dbb5e4192d264f..32e89741ffd895e31af0104a0126c2f7 /** * Returns the living entity's current maximum no damage ticks. -@@ -777,4 +809,24 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource +@@ -787,4 +819,24 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource * @return Whether the entity is invisible */ public boolean isInvisible(); diff --git a/patches/api/0053-Fix-upstream-javadocs.patch b/patches/api/0053-Fix-upstream-javadocs.patch index 67aa32c20..dc2011702 100644 --- a/patches/api/0053-Fix-upstream-javadocs.patch +++ b/patches/api/0053-Fix-upstream-javadocs.patch @@ -200,10 +200,10 @@ index 9885fd1adc1f93a80d650e6d42dfa3a0b084db9f..c4f2f03ec31998d486dad1d45ef83df3 *

* The {@code radius} is not a rigid square radius. Each structure may alter diff --git a/src/main/java/org/bukkit/attribute/AttributeModifier.java b/src/main/java/org/bukkit/attribute/AttributeModifier.java -index d66502c9df2592cd18694481e7e90a71a5c3a359..ee39c0b83e558681e8b006172d34c98e2c83cda2 100644 +index 6ffc895138088162cab827b3ca6c68961b7bcc64..8c53ac6b4381f3cf8b5e989c8b2a3ba77bd4e475 100644 --- a/src/main/java/org/bukkit/attribute/AttributeModifier.java +++ b/src/main/java/org/bukkit/attribute/AttributeModifier.java -@@ -117,8 +117,7 @@ public class AttributeModifier implements ConfigurationSerializable, Keyed { +@@ -129,8 +129,7 @@ public class AttributeModifier implements ConfigurationSerializable, Keyed { } /** @@ -430,7 +430,7 @@ index 4e1fb0974d061d5bb64899cac576318d2e6f8bf6..539b3527d0c66611e21712f29b90fba9 public int getEntityId(); diff --git a/src/main/java/org/bukkit/entity/HumanEntity.java b/src/main/java/org/bukkit/entity/HumanEntity.java -index 8fdfa1d79daf464f8e364fd9e19d1de3a2a6848c..195a7fa0ea8e056cbde7b9152cc014d2c94353ff 100644 +index 40214a136894270695746ac83fb5f7bcc406f34a..2bb4d2da99d3f0f70e19381c13b43c147c34f944 100644 --- a/src/main/java/org/bukkit/entity/HumanEntity.java +++ b/src/main/java/org/bukkit/entity/HumanEntity.java @@ -22,6 +22,11 @@ import org.jetbrains.annotations.Nullable; @@ -459,7 +459,7 @@ index b688b3856cb3068a539fcecfbfa113f8ab4160a9..c275b881cbd11307a6dcc7190d7a7d40 * @return whether the item frame is visible or not */ diff --git a/src/main/java/org/bukkit/entity/LivingEntity.java b/src/main/java/org/bukkit/entity/LivingEntity.java -index 32e89741ffd895e31af0104a0126c2f72742a1bb..bc17c86da49faf4b6e07d4fb4c53649da0384d69 100644 +index cafa79f80eec5ec6d8d31d40cc2b46acc06831f9..b0fbad5de65c33710ec46734ad6c69ec9b2769d5 100644 --- a/src/main/java/org/bukkit/entity/LivingEntity.java +++ b/src/main/java/org/bukkit/entity/LivingEntity.java @@ -502,7 +502,7 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource diff --git a/patches/api/0059-Shoulder-Entities-Release-API.patch b/patches/api/0059-Shoulder-Entities-Release-API.patch index 6ac15e28a..51832da22 100644 --- a/patches/api/0059-Shoulder-Entities-Release-API.patch +++ b/patches/api/0059-Shoulder-Entities-Release-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Shoulder Entities Release API diff --git a/src/main/java/org/bukkit/entity/HumanEntity.java b/src/main/java/org/bukkit/entity/HumanEntity.java -index 195a7fa0ea8e056cbde7b9152cc014d2c94353ff..85eec2e57b03c11f4737addb0fa88b7bf29dc9e5 100644 +index 2bb4d2da99d3f0f70e19381c13b43c147c34f944..b8431d9722ef9fce0ac9e18367abef22717997ca 100644 --- a/src/main/java/org/bukkit/entity/HumanEntity.java +++ b/src/main/java/org/bukkit/entity/HumanEntity.java -@@ -337,6 +337,26 @@ public interface HumanEntity extends LivingEntity, AnimalTamer, InventoryHolder +@@ -346,6 +346,26 @@ public interface HumanEntity extends LivingEntity, AnimalTamer, InventoryHolder */ public int getExpToLevel(); diff --git a/patches/api/0092-Add-openSign-method-to-HumanEntity.patch b/patches/api/0092-Add-openSign-method-to-HumanEntity.patch index 3fdf10fbf..102ec8ae0 100644 --- a/patches/api/0092-Add-openSign-method-to-HumanEntity.patch +++ b/patches/api/0092-Add-openSign-method-to-HumanEntity.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add openSign method to HumanEntity diff --git a/src/main/java/org/bukkit/entity/HumanEntity.java b/src/main/java/org/bukkit/entity/HumanEntity.java -index 85eec2e57b03c11f4737addb0fa88b7bf29dc9e5..58dbe34ab1b603c2cd53af1625c1f82f8890da01 100644 +index b8431d9722ef9fce0ac9e18367abef22717997ca..0d01fe9c96a1b9076dbd6d031fa8cd41954ea8db 100644 --- a/src/main/java/org/bukkit/entity/HumanEntity.java +++ b/src/main/java/org/bukkit/entity/HumanEntity.java -@@ -498,6 +498,26 @@ public interface HumanEntity extends LivingEntity, AnimalTamer, InventoryHolder +@@ -507,6 +507,26 @@ public interface HumanEntity extends LivingEntity, AnimalTamer, InventoryHolder */ @Deprecated public void setShoulderEntityRight(@Nullable Entity entity); diff --git a/patches/api/0107-Make-shield-blocking-delay-configurable.patch b/patches/api/0107-Make-shield-blocking-delay-configurable.patch index e6c6e635c..10d09ee21 100644 --- a/patches/api/0107-Make-shield-blocking-delay-configurable.patch +++ b/patches/api/0107-Make-shield-blocking-delay-configurable.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Make shield blocking delay configurable diff --git a/src/main/java/org/bukkit/entity/LivingEntity.java b/src/main/java/org/bukkit/entity/LivingEntity.java -index f154c5607b1dc3585052d9f02cf8b28cf8a3c886..7b53064364e206bc1a0f4b7af4931f6c658b7c55 100644 +index e6bdfd14bffa394cd717de7118de951a997f50b3..2d4d93a4fc3f712a21bd61e203407f3a84e16310 100644 --- a/src/main/java/org/bukkit/entity/LivingEntity.java +++ b/src/main/java/org/bukkit/entity/LivingEntity.java -@@ -837,5 +837,19 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource +@@ -847,5 +847,19 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource */ @Deprecated void setArrowsStuck(int arrows); diff --git a/patches/api/0114-LivingEntity-Active-Item-API.patch b/patches/api/0114-LivingEntity-Active-Item-API.patch index 008184249..89c2ebf21 100644 --- a/patches/api/0114-LivingEntity-Active-Item-API.patch +++ b/patches/api/0114-LivingEntity-Active-Item-API.patch @@ -9,10 +9,10 @@ such as a bow or eating food. Co-authored-by: Jake Potrebic diff --git a/src/main/java/org/bukkit/entity/HumanEntity.java b/src/main/java/org/bukkit/entity/HumanEntity.java -index 58dbe34ab1b603c2cd53af1625c1f82f8890da01..9cbb9093e7d8cd21eef6a23c265d68d7d0ee97b8 100644 +index 0d01fe9c96a1b9076dbd6d031fa8cd41954ea8db..b0cb4377e14da5ef1e155513046c2340ab6e525e 100644 --- a/src/main/java/org/bukkit/entity/HumanEntity.java +++ b/src/main/java/org/bukkit/entity/HumanEntity.java -@@ -327,7 +327,9 @@ public interface HumanEntity extends LivingEntity, AnimalTamer, InventoryHolder +@@ -336,7 +336,9 @@ public interface HumanEntity extends LivingEntity, AnimalTamer, InventoryHolder * blocking). * * @return Whether their hand is raised @@ -23,7 +23,7 @@ index 58dbe34ab1b603c2cd53af1625c1f82f8890da01..9cbb9093e7d8cd21eef6a23c265d68d7 /** diff --git a/src/main/java/org/bukkit/entity/LivingEntity.java b/src/main/java/org/bukkit/entity/LivingEntity.java -index 7b53064364e206bc1a0f4b7af4931f6c658b7c55..0ed64618b3f62ee984fe4f99dc6a52d5fad7b3cc 100644 +index 2d4d93a4fc3f712a21bd61e203407f3a84e16310..434ad8b07b6ee0b0919de8044d14fe3c789e203f 100644 --- a/src/main/java/org/bukkit/entity/LivingEntity.java +++ b/src/main/java/org/bukkit/entity/LivingEntity.java @@ -202,15 +202,19 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource @@ -56,7 +56,7 @@ index 7b53064364e206bc1a0f4b7af4931f6c658b7c55..0ed64618b3f62ee984fe4f99dc6a52d5 public void setItemInUseTicks(int ticks); /** -@@ -852,4 +858,130 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource +@@ -862,4 +868,130 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource */ void setShieldBlockingDelay(int delay); // Paper end diff --git a/patches/api/0146-Material-API-additions.patch b/patches/api/0146-Material-API-additions.patch index 2b4bfbc34..6867aebfc 100644 --- a/patches/api/0146-Material-API-additions.patch +++ b/patches/api/0146-Material-API-additions.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Material API additions diff --git a/src/main/java/org/bukkit/Material.java b/src/main/java/org/bukkit/Material.java -index 019cc6baf8c767d973feba55ddc99a8d222e00d8..6ffed5ef4331498ff318ffc5850f8b9a0b85eba7 100644 +index 111c9a6be1f3d095cf8e82b118371986b6cc0fc7..c407bc264ab6c2e5aa7122d4caec63f9b482d76d 100644 --- a/src/main/java/org/bukkit/Material.java +++ b/src/main/java/org/bukkit/Material.java -@@ -127,6 +127,7 @@ import org.jetbrains.annotations.Nullable; +@@ -129,6 +129,7 @@ import org.jetbrains.annotations.Nullable; /** * An enum of all material IDs accepted by the official server and client */ @@ -16,7 +16,7 @@ index 019cc6baf8c767d973feba55ddc99a8d222e00d8..6ffed5ef4331498ff318ffc5850f8b9a public enum Material implements Keyed, Translatable { // AIR(9648, 0), -@@ -4660,6 +4661,22 @@ public enum Material implements Keyed, Translatable { +@@ -4662,6 +4663,22 @@ public enum Material implements Keyed, Translatable { } } diff --git a/patches/api/0166-Fix-Spigot-annotation-mistakes.patch b/patches/api/0166-Fix-Spigot-annotation-mistakes.patch index a66f2b4a3..857c948a6 100644 --- a/patches/api/0166-Fix-Spigot-annotation-mistakes.patch +++ b/patches/api/0166-Fix-Spigot-annotation-mistakes.patch @@ -300,10 +300,10 @@ index c30600666e7b32b8b4ba1e20ede04fd5ebd5a692..eec6c9cd7da6938351905129bb5a66f4 if (this.world == null) { return null; diff --git a/src/main/java/org/bukkit/Material.java b/src/main/java/org/bukkit/Material.java -index 6ffed5ef4331498ff318ffc5850f8b9a0b85eba7..444406eb7f0c3cd13039bf809254e480ee6fa24f 100644 +index c407bc264ab6c2e5aa7122d4caec63f9b482d76d..a432e1c776cd5bda7ba9da8a1b608cb30495e647 100644 --- a/src/main/java/org/bukkit/Material.java +++ b/src/main/java/org/bukkit/Material.java -@@ -4681,20 +4681,20 @@ public enum Material implements Keyed, Translatable { +@@ -4683,20 +4683,20 @@ public enum Material implements Keyed, Translatable { * Do not use for any reason. * * @return ID of this material @@ -328,7 +328,7 @@ index 6ffed5ef4331498ff318ffc5850f8b9a0b85eba7..444406eb7f0c3cd13039bf809254e480 public boolean isLegacy() { return legacy; } -@@ -4770,8 +4770,10 @@ public enum Material implements Keyed, Translatable { +@@ -4772,8 +4772,10 @@ public enum Material implements Keyed, Translatable { * Gets the MaterialData class associated with this Material * * @return MaterialData associated with this Material @@ -339,7 +339,7 @@ index 6ffed5ef4331498ff318ffc5850f8b9a0b85eba7..444406eb7f0c3cd13039bf809254e480 public Class getData() { Preconditions.checkArgument(legacy, "Cannot get data class of Modern Material"); return ctor.getDeclaringClass(); -@@ -5227,7 +5229,11 @@ public enum Material implements Keyed, Translatable { +@@ -5229,7 +5231,11 @@ public enum Material implements Keyed, Translatable { * material. * * @return true if this material can be interacted with. @@ -453,10 +453,10 @@ index 48aecc9421c500137bbef1dfe3bec8de277c3ff9..aff858346776386f1288b648b221404f return note; } diff --git a/src/main/java/org/bukkit/Registry.java b/src/main/java/org/bukkit/Registry.java -index d1906d150a7d4c4852e085d6fd480aec317c22e4..e9edc8c17cbd29cfdad31df13acb15bab2304735 100644 +index 883338632b81f6eebc03c95d5883536a5d87fc59..fbede496b05c4b9b1ecd12e711a100586776d469 100644 --- a/src/main/java/org/bukkit/Registry.java +++ b/src/main/java/org/bukkit/Registry.java -@@ -220,14 +220,12 @@ public interface Registry extends Iterable { +@@ -228,14 +228,12 @@ public interface Registry extends Iterable { * * @see TrimMaterial */ @@ -471,7 +471,7 @@ index d1906d150a7d4c4852e085d6fd480aec317c22e4..e9edc8c17cbd29cfdad31df13acb15ba Registry TRIM_PATTERN = Bukkit.getRegistry(TrimPattern.class); /** * Damage types. -@@ -335,8 +333,11 @@ public interface Registry extends Iterable { +@@ -343,8 +341,11 @@ public interface Registry extends Iterable { * * @param input non-null input * @return registered object or null if does not exist @@ -890,7 +890,7 @@ index bafef53c1d449135f1300c8c8fbb06f482ba67e1..f50aaddf8582be55fd4860ad374d8f22 +@Deprecated(forRemoval = true) // Paper public interface LingeringPotion extends ThrownPotion { } diff --git a/src/main/java/org/bukkit/entity/LivingEntity.java b/src/main/java/org/bukkit/entity/LivingEntity.java -index 3f1b74af137868e502792c65ccd7ca74f3c3cb8c..c89ffb0f98dccd015e80e299142252fed3ece4a8 100644 +index 9e0137ea412ec8c65b2903a76499ba8222446ea3..db7dafba43b50146a32d749ec043c5d548b0d6e3 100644 --- a/src/main/java/org/bukkit/entity/LivingEntity.java +++ b/src/main/java/org/bukkit/entity/LivingEntity.java @@ -716,7 +716,9 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource @@ -903,7 +903,7 @@ index 3f1b74af137868e502792c65ccd7ca74f3c3cb8c..c89ffb0f98dccd015e80e299142252fe public void setSwimming(boolean swimming); /** -@@ -971,7 +973,7 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource +@@ -981,7 +983,7 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource * @deprecated entity groupings are now managed by tags, not categories */ @NotNull @@ -1267,16 +1267,16 @@ index f2a2a2ad9930499c5bf624e73571a3294a90db14..c8540a42ab44647fdd112ce4f731f3dc return getView().getCursor(); } diff --git a/src/main/java/org/bukkit/event/inventory/InventoryType.java b/src/main/java/org/bukkit/event/inventory/InventoryType.java -index 32cd8ee2e849df602a7e10aa5d0a218007faa0ac..fbdbd2f4da5e09d4b111ddcf72e2d7dd59046bd7 100644 +index 3e6ac5beb137efd8ecd80e2e9b17015cb38e8a0a..ae4ae1fa6d407665ef03edcdef683d741668acf1 100644 --- a/src/main/java/org/bukkit/event/inventory/InventoryType.java +++ b/src/main/java/org/bukkit/event/inventory/InventoryType.java -@@ -153,7 +153,7 @@ public enum InventoryType { +@@ -155,7 +155,7 @@ public enum InventoryType { * * @deprecated use {@link #SMITHING} */ - @Deprecated + @Deprecated(forRemoval = true) // Paper - SMITHING_NEW(4, "Upgrade Gear"), + SMITHING_NEW(4, "Upgrade Gear", MenuType.SMITHING), ; diff --git a/src/main/java/org/bukkit/event/player/PlayerBedLeaveEvent.java b/src/main/java/org/bukkit/event/player/PlayerBedLeaveEvent.java diff --git a/patches/api/0178-Entity-Jump-API.patch b/patches/api/0178-Entity-Jump-API.patch index 2360a174f..d75139014 100644 --- a/patches/api/0178-Entity-Jump-API.patch +++ b/patches/api/0178-Entity-Jump-API.patch @@ -61,10 +61,10 @@ index 0000000000000000000000000000000000000000..a6306c957fcacdcbcc8037b4ee33a167 + } +} diff --git a/src/main/java/org/bukkit/entity/LivingEntity.java b/src/main/java/org/bukkit/entity/LivingEntity.java -index ec35111df4b38fd55cc34f4baedebcf39c7fc92b..fdb985763d0a7b0a31ad938616e11ef244f63062 100644 +index db7dafba43b50146a32d749ec043c5d548b0d6e3..c2352d75e02f7be27fcf9ea69df1bd104a2449bd 100644 --- a/src/main/java/org/bukkit/entity/LivingEntity.java +++ b/src/main/java/org/bukkit/entity/LivingEntity.java -@@ -1149,4 +1149,26 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource +@@ -1159,4 +1159,26 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource return this.getActiveItemHand(); } // Paper end - active item API diff --git a/patches/api/0200-Add-playPickupItemAnimation-to-LivingEntity.patch b/patches/api/0200-Add-playPickupItemAnimation-to-LivingEntity.patch index 28bd4b687..9147c42db 100644 --- a/patches/api/0200-Add-playPickupItemAnimation-to-LivingEntity.patch +++ b/patches/api/0200-Add-playPickupItemAnimation-to-LivingEntity.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add playPickupItemAnimation to LivingEntity diff --git a/src/main/java/org/bukkit/entity/LivingEntity.java b/src/main/java/org/bukkit/entity/LivingEntity.java -index fdb985763d0a7b0a31ad938616e11ef244f63062..d87c49550e697ad545742baed40068623e83bf0b 100644 +index c2352d75e02f7be27fcf9ea69df1bd104a2449bd..88d6a5aaf2a686186fab4916480a04f6503d887c 100644 --- a/src/main/java/org/bukkit/entity/LivingEntity.java +++ b/src/main/java/org/bukkit/entity/LivingEntity.java -@@ -1171,4 +1171,29 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource +@@ -1181,4 +1181,29 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource */ void setJumping(boolean jumping); // Paper end - entity jump API diff --git a/patches/api/0202-Add-methods-to-get-translation-keys.patch b/patches/api/0202-Add-methods-to-get-translation-keys.patch index 0cc7a454f..428beed21 100644 --- a/patches/api/0202-Add-methods-to-get-translation-keys.patch +++ b/patches/api/0202-Add-methods-to-get-translation-keys.patch @@ -144,10 +144,10 @@ index dc66bd69646ac949d1386ce8f6ff913e9475439d..4482e8f2c617c2f51b2b53762e775d11 + // Paper end } diff --git a/src/main/java/org/bukkit/Material.java b/src/main/java/org/bukkit/Material.java -index 444406eb7f0c3cd13039bf809254e480ee6fa24f..c12bb07fcf29be1a284f5f272b35edf206633d4a 100644 +index a432e1c776cd5bda7ba9da8a1b608cb30495e647..c2552d37295443f79abfe58f91c8261ce06661e8 100644 --- a/src/main/java/org/bukkit/Material.java +++ b/src/main/java/org/bukkit/Material.java -@@ -128,7 +128,7 @@ import org.jetbrains.annotations.Nullable; +@@ -130,7 +130,7 @@ import org.jetbrains.annotations.Nullable; * An enum of all material IDs accepted by the official server and client */ @SuppressWarnings({"DeprecatedIsStillUsed", "deprecation"}) // Paper @@ -156,7 +156,7 @@ index 444406eb7f0c3cd13039bf809254e480ee6fa24f..c12bb07fcf29be1a284f5f272b35edf2 // AIR(9648, 0), STONE(22948), -@@ -4677,6 +4677,17 @@ public enum Material implements Keyed, Translatable { +@@ -4679,6 +4679,17 @@ public enum Material implements Keyed, Translatable { } // Paper end @@ -174,7 +174,7 @@ index 444406eb7f0c3cd13039bf809254e480ee6fa24f..c12bb07fcf29be1a284f5f272b35edf2 /** * Do not use for any reason. * -@@ -5426,9 +5437,11 @@ public enum Material implements Keyed, Translatable { +@@ -5428,9 +5439,11 @@ public enum Material implements Keyed, Translatable { * material * @see #getBlockTranslationKey() * @see #getItemTranslationKey() @@ -312,10 +312,10 @@ index 745413357506fa7399f8ba44dfe222d1f0c919f1..25db31b2e9a6d75f0c59f75237842f9a // Paper end } diff --git a/src/main/java/org/bukkit/block/BlockType.java b/src/main/java/org/bukkit/block/BlockType.java -index 4288bebf690a9cee6ff9a712352d1dcbb035eb77..a08c52949af1d2416ecb089fc559db2e3b29105c 100644 +index dfd8187ef941e8afe9cb28a26bf0d2cf2e4c4bc5..8d85d74605457724cc206a55dbb16679c3791ea1 100644 --- a/src/main/java/org/bukkit/block/BlockType.java +++ b/src/main/java/org/bukkit/block/BlockType.java -@@ -123,7 +123,7 @@ import org.jetbrains.annotations.Nullable; +@@ -125,7 +125,7 @@ import org.jetbrains.annotations.Nullable; * changes may occur. Do not use this API in plugins. */ @ApiStatus.Internal @@ -324,7 +324,7 @@ index 4288bebf690a9cee6ff9a712352d1dcbb035eb77..a08c52949af1d2416ecb089fc559db2e /** * Typed represents a subtype of {@link BlockType}s that have a known block -@@ -3491,4 +3491,13 @@ public interface BlockType extends Keyed, Translatable { +@@ -3493,4 +3493,13 @@ public interface BlockType extends Keyed, Translatable { @Nullable @Deprecated Material asMaterial(); diff --git a/patches/api/0215-Add-LivingEntity-clearActiveItem.patch b/patches/api/0215-Add-LivingEntity-clearActiveItem.patch index 64de25a82..57fefd81d 100644 --- a/patches/api/0215-Add-LivingEntity-clearActiveItem.patch +++ b/patches/api/0215-Add-LivingEntity-clearActiveItem.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add LivingEntity#clearActiveItem diff --git a/src/main/java/org/bukkit/entity/LivingEntity.java b/src/main/java/org/bukkit/entity/LivingEntity.java -index d87c49550e697ad545742baed40068623e83bf0b..a2489932c07b1b56d3e340ecfeddd3df95cf4eb6 100644 +index 88d6a5aaf2a686186fab4916480a04f6503d887c..784da48ffc63bc932caafe58cf56ad30e7a86be6 100644 --- a/src/main/java/org/bukkit/entity/LivingEntity.java +++ b/src/main/java/org/bukkit/entity/LivingEntity.java -@@ -1061,6 +1061,11 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource +@@ -1071,6 +1071,11 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource */ org.bukkit.inventory.@NotNull ItemStack getActiveItem(); diff --git a/patches/api/0220-Expose-LivingEntity-hurt-direction.patch b/patches/api/0220-Expose-LivingEntity-hurt-direction.patch index d8800e48d..cd51cbd83 100644 --- a/patches/api/0220-Expose-LivingEntity-hurt-direction.patch +++ b/patches/api/0220-Expose-LivingEntity-hurt-direction.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Expose LivingEntity hurt direction diff --git a/src/main/java/org/bukkit/entity/HumanEntity.java b/src/main/java/org/bukkit/entity/HumanEntity.java -index f20b0a439c4d5cd2c6caa70a46b1b49f8ab23425..937c136f2499bd1660989d14c0f50a7ef9a1a2b6 100644 +index d06539841d973030c0cd5bb06a085ed2f0f73af6..7759062ca34506c56d2d1340cf1d9c2d36151d48 100644 --- a/src/main/java/org/bukkit/entity/HumanEntity.java +++ b/src/main/java/org/bukkit/entity/HumanEntity.java @@ -356,6 +356,16 @@ public interface HumanEntity extends LivingEntity, AnimalTamer, InventoryHolder @@ -26,10 +26,10 @@ index f20b0a439c4d5cd2c6caa70a46b1b49f8ab23425..937c136f2499bd1660989d14c0f50a7e * Get the sleep ticks of the player. This value may be capped. * diff --git a/src/main/java/org/bukkit/entity/LivingEntity.java b/src/main/java/org/bukkit/entity/LivingEntity.java -index a2489932c07b1b56d3e340ecfeddd3df95cf4eb6..4327045ec437c9c81bcd4c34c4959de6d5798132 100644 +index 784da48ffc63bc932caafe58cf56ad30e7a86be6..49352ed3928163c6322634b8e6f1d3dd8caa5e74 100644 --- a/src/main/java/org/bukkit/entity/LivingEntity.java +++ b/src/main/java/org/bukkit/entity/LivingEntity.java -@@ -1201,4 +1201,22 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource +@@ -1211,4 +1211,22 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource */ void playPickupItemAnimation(@NotNull Item item, int quantity); // Paper end - pickup animation API diff --git a/patches/api/0236-Add-RegistryAccess-for-managing-registries.patch b/patches/api/0236-Add-RegistryAccess-for-managing-registries.patch index a931d297b..cce62703a 100644 --- a/patches/api/0236-Add-RegistryAccess-for-managing-registries.patch +++ b/patches/api/0236-Add-RegistryAccess-for-managing-registries.patch @@ -206,10 +206,10 @@ index e0f652117e585882693736de8165ae9c689e1d68..fbe14c327ee9c1ac07893853ca7c699e return server.getRegistry(tClass); } diff --git a/src/main/java/org/bukkit/Registry.java b/src/main/java/org/bukkit/Registry.java -index e9edc8c17cbd29cfdad31df13acb15bab2304735..d855e703339e6f6e50fcb19e8954a9434e718b2f 100644 +index fbede496b05c4b9b1ecd12e711a100586776d469..3777f9c92d0c183d0ab5e28bbe73f2125babf61c 100644 --- a/src/main/java/org/bukkit/Registry.java +++ b/src/main/java/org/bukkit/Registry.java -@@ -87,8 +87,10 @@ public interface Registry extends Iterable { +@@ -88,8 +88,10 @@ public interface Registry extends Iterable { * Server banner patterns. * * @see PatternType @@ -221,7 +221,7 @@ index e9edc8c17cbd29cfdad31df13acb15bab2304735..d855e703339e6f6e50fcb19e8954a943 /** * Server biomes. * -@@ -102,7 +104,7 @@ public interface Registry extends Iterable { +@@ -103,7 +105,7 @@ public interface Registry extends Iterable { * @apiNote BlockType is not ready for public usage yet */ @ApiStatus.Internal @@ -230,7 +230,7 @@ index e9edc8c17cbd29cfdad31df13acb15bab2304735..d855e703339e6f6e50fcb19e8954a943 /** * Custom boss bars. * -@@ -134,13 +136,15 @@ public interface Registry extends Iterable { +@@ -135,13 +137,15 @@ public interface Registry extends Iterable { * * @see Cat.Type */ @@ -248,7 +248,7 @@ index e9edc8c17cbd29cfdad31df13acb15bab2304735..d855e703339e6f6e50fcb19e8954a943 /** * Server entity types. * -@@ -152,7 +156,7 @@ public interface Registry extends Iterable { +@@ -153,7 +157,7 @@ public interface Registry extends Iterable { * * @see MusicInstrument */ @@ -257,7 +257,7 @@ index e9edc8c17cbd29cfdad31df13acb15bab2304735..d855e703339e6f6e50fcb19e8954a943 /** * Server item types. * -@@ -160,7 +164,7 @@ public interface Registry extends Iterable { +@@ -161,7 +165,7 @@ public interface Registry extends Iterable { * @apiNote ItemType is not ready for public usage yet */ @ApiStatus.Internal @@ -266,7 +266,14 @@ index e9edc8c17cbd29cfdad31df13acb15bab2304735..d855e703339e6f6e50fcb19e8954a943 /** * Default server loot tables. * -@@ -178,7 +182,7 @@ public interface Registry extends Iterable { +@@ -180,13 +184,13 @@ public interface Registry extends Iterable { + * @see MenuType + */ + @ApiStatus.Experimental +- Registry MENU = Objects.requireNonNull(Bukkit.getRegistry(MenuType.class), "No registry present for MenuType. This is a bug."); ++ Registry MENU = io.papermc.paper.registry.RegistryAccess.registryAccess().getRegistry(io.papermc.paper.registry.RegistryKey.MENU); // Paper + /** + * Server mob effects. * * @see PotionEffectType */ @@ -275,7 +282,7 @@ index e9edc8c17cbd29cfdad31df13acb15bab2304735..d855e703339e6f6e50fcb19e8954a943 /** * Server particles. * -@@ -201,14 +205,16 @@ public interface Registry extends Iterable { +@@ -209,14 +213,16 @@ public interface Registry extends Iterable { * Server structures. * * @see Structure @@ -294,7 +301,7 @@ index e9edc8c17cbd29cfdad31df13acb15bab2304735..d855e703339e6f6e50fcb19e8954a943 /** * Sound keys. * -@@ -219,40 +225,47 @@ public interface Registry extends Iterable { +@@ -227,40 +233,47 @@ public interface Registry extends Iterable { * Trim materials. * * @see TrimMaterial @@ -349,7 +356,7 @@ index e9edc8c17cbd29cfdad31df13acb15bab2304735..d855e703339e6f6e50fcb19e8954a943 /** * Memory Keys. * -@@ -289,25 +302,27 @@ public interface Registry extends Iterable { +@@ -297,25 +310,27 @@ public interface Registry extends Iterable { * * @see Frog.Variant */ diff --git a/patches/api/0254-Improve-Item-Rarity-API.patch b/patches/api/0254-Improve-Item-Rarity-API.patch index 0882e2924..7139be325 100644 --- a/patches/api/0254-Improve-Item-Rarity-API.patch +++ b/patches/api/0254-Improve-Item-Rarity-API.patch @@ -43,10 +43,10 @@ index 0000000000000000000000000000000000000000..f1cd5a4f37eee8975ac3d0421b524afc + } +} diff --git a/src/main/java/org/bukkit/Material.java b/src/main/java/org/bukkit/Material.java -index c12bb07fcf29be1a284f5f272b35edf206633d4a..cc25734f3dcf6075eb44e39da01ed2f1b59b618e 100644 +index c2552d37295443f79abfe58f91c8261ce06661e8..7f6cb6471c5f324e2bcdf47d6c7628c2231d7727 100644 --- a/src/main/java/org/bukkit/Material.java +++ b/src/main/java/org/bukkit/Material.java -@@ -4688,6 +4688,21 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla +@@ -4690,6 +4690,21 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla } // Paper end - add Translatable diff --git a/patches/api/0270-Add-basic-Datapack-API.patch b/patches/api/0270-Add-basic-Datapack-API.patch index 8a3ae9cf9..bbf88037c 100644 --- a/patches/api/0270-Add-basic-Datapack-API.patch +++ b/patches/api/0270-Add-basic-Datapack-API.patch @@ -101,10 +101,10 @@ index b558fa73dbcf3747690933e6aadf7061a0de2630..be68351555bde59a4e55bf1bad261e9f @NotNull diff --git a/src/main/java/org/bukkit/Material.java b/src/main/java/org/bukkit/Material.java -index cc25734f3dcf6075eb44e39da01ed2f1b59b618e..2721ad40d6ba025caad16455f74f2350dcb7a4ff 100644 +index 7f6cb6471c5f324e2bcdf47d6c7628c2231d7727..d0aaf145cf34e0c02d5c7b842c203d0630b04b53 100644 --- a/src/main/java/org/bukkit/Material.java +++ b/src/main/java/org/bukkit/Material.java -@@ -5497,6 +5497,7 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla +@@ -5499,6 +5499,7 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla * @param world the world to check * @return true if this material can be used in this World. */ diff --git a/patches/api/0277-Improve-item-default-attribute-API.patch b/patches/api/0277-Improve-item-default-attribute-API.patch index e7c6fb4cd..4f60142e5 100644 --- a/patches/api/0277-Improve-item-default-attribute-API.patch +++ b/patches/api/0277-Improve-item-default-attribute-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Improve item default attribute API diff --git a/src/main/java/org/bukkit/Material.java b/src/main/java/org/bukkit/Material.java -index cc25734f3dcf6075eb44e39da01ed2f1b59b618e..8b04e0d81c56712057f1fee288b3609ef5718c60 100644 +index d0aaf145cf34e0c02d5c7b842c203d0630b04b53..5c869feaecd95dbdd658e16f5739bb41540f18bd 100644 --- a/src/main/java/org/bukkit/Material.java +++ b/src/main/java/org/bukkit/Material.java -@@ -4703,6 +4703,23 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla +@@ -4705,6 +4705,23 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla } // Paper end - item rarity API @@ -32,7 +32,7 @@ index cc25734f3dcf6075eb44e39da01ed2f1b59b618e..8b04e0d81c56712057f1fee288b3609e /** * Do not use for any reason. * -@@ -5410,13 +5427,34 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla +@@ -5412,13 +5429,34 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla } } @@ -72,7 +72,7 @@ index cc25734f3dcf6075eb44e39da01ed2f1b59b618e..8b04e0d81c56712057f1fee288b3609e * * @param slot the {@link EquipmentSlot} to check diff --git a/src/main/java/org/bukkit/inventory/ItemType.java b/src/main/java/org/bukkit/inventory/ItemType.java -index 5dd1c084e42ee93f3a358f58ed76b0a7d36f0713..94587a97fcea81a43b160b01d2c81cef2b7f4413 100644 +index 2b5a18fe7e885fa9b581c0afb299e31f3db2690c..a6d1dde422de98f178c0c9add99e01203a35e5cb 100644 --- a/src/main/java/org/bukkit/inventory/ItemType.java +++ b/src/main/java/org/bukkit/inventory/ItemType.java @@ -2261,6 +2261,21 @@ public interface ItemType extends Keyed, Translatable, net.kyori.adventure.trans diff --git a/patches/api/0287-Missing-Entity-API.patch b/patches/api/0287-Missing-Entity-API.patch index a6478a10f..928fcd36a 100644 --- a/patches/api/0287-Missing-Entity-API.patch +++ b/patches/api/0287-Missing-Entity-API.patch @@ -609,10 +609,10 @@ index 6b3c9bef9a8a34ddc6ff42cf358541a2665bf5e3..9c618a27d590f186f29c5d9094fc565e + // Paper end } diff --git a/src/main/java/org/bukkit/entity/LivingEntity.java b/src/main/java/org/bukkit/entity/LivingEntity.java -index 4ba92fe8979ed127c18cb78c2b8204daa2425ed7..73247ab2cd2cf0035cf88c98250736f9bc9ee517 100644 +index 2eb6f650610ca1a9b9fca49e453f79e08944be75..c0772f72768846cffd065c53de7326f9fe6386a2 100644 --- a/src/main/java/org/bukkit/entity/LivingEntity.java +++ b/src/main/java/org/bukkit/entity/LivingEntity.java -@@ -994,6 +994,7 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource +@@ -1004,6 +1004,7 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource * * @param invisible If the entity is invisible */ @@ -620,7 +620,7 @@ index 4ba92fe8979ed127c18cb78c2b8204daa2425ed7..73247ab2cd2cf0035cf88c98250736f9 public void setInvisible(boolean invisible); /** -@@ -1001,6 +1002,7 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource +@@ -1011,6 +1012,7 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource * * @return Whether the entity is invisible */ @@ -628,7 +628,7 @@ index 4ba92fe8979ed127c18cb78c2b8204daa2425ed7..73247ab2cd2cf0035cf88c98250736f9 public boolean isInvisible(); // Paper start -@@ -1037,6 +1039,57 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource +@@ -1047,6 +1049,57 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource void setShieldBlockingDelay(int delay); // Paper end diff --git a/patches/api/0309-Add-hasCollision-methods-to-various-places.patch b/patches/api/0309-Add-hasCollision-methods-to-various-places.patch index aad90b390..b0ce648c9 100644 --- a/patches/api/0309-Add-hasCollision-methods-to-various-places.patch +++ b/patches/api/0309-Add-hasCollision-methods-to-various-places.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add hasCollision methods to various places diff --git a/src/main/java/org/bukkit/Material.java b/src/main/java/org/bukkit/Material.java -index 8b04e0d81c56712057f1fee288b3609ef5718c60..c4f067598a40b0381bc9e601a3809e2683c10407 100644 +index 5c869feaecd95dbdd658e16f5739bb41540f18bd..6959f36023b12ec2dece9b91a3b8a5d07b635430 100644 --- a/src/main/java/org/bukkit/Material.java +++ b/src/main/java/org/bukkit/Material.java -@@ -4720,6 +4720,21 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla +@@ -4722,6 +4722,21 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla } // Paper end - item default attributes API @@ -67,10 +67,10 @@ index f4a739d8022d19a7ae0ee9bf93eb5c4846b4bd40..94e1278340c0d9d2be9edc68f6454143 + // Paper end } diff --git a/src/main/java/org/bukkit/block/BlockType.java b/src/main/java/org/bukkit/block/BlockType.java -index a08c52949af1d2416ecb089fc559db2e3b29105c..8f430a4067fc722ebfbca846cccded4fb0a3a4e5 100644 +index 8d85d74605457724cc206a55dbb16679c3791ea1..3dc165265af4a9cb0e05018b9273b7dfdecf730a 100644 --- a/src/main/java/org/bukkit/block/BlockType.java +++ b/src/main/java/org/bukkit/block/BlockType.java -@@ -3500,4 +3500,13 @@ public interface BlockType extends Keyed, Translatable, net.kyori.adventure.tran +@@ -3502,4 +3502,13 @@ public interface BlockType extends Keyed, Translatable, net.kyori.adventure.tran @Override @NotNull String getTranslationKey(); // Paper end - add Translatable diff --git a/patches/api/0329-More-PotionEffectType-API.patch b/patches/api/0329-More-PotionEffectType-API.patch index c361faf34..580e9eceb 100644 --- a/patches/api/0329-More-PotionEffectType-API.patch +++ b/patches/api/0329-More-PotionEffectType-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] More PotionEffectType API diff --git a/src/main/java/org/bukkit/Registry.java b/src/main/java/org/bukkit/Registry.java -index 5dbbc4eb764650395c6ebaaf5fdf0466ca107439..0ee9a8728035217bb95c7fba917b45a5ef2ea533 100644 +index c1f46c27f0571ce54f35ee0fab9b586ea62ee832..7870a796e719148a42d18f1497b56c0d8f651a43 100644 --- a/src/main/java/org/bukkit/Registry.java +++ b/src/main/java/org/bukkit/Registry.java -@@ -323,6 +323,33 @@ public interface Registry extends Iterable { +@@ -331,6 +331,33 @@ public interface Registry extends Iterable { * @see GameEvent */ Registry GAME_EVENT = io.papermc.paper.registry.RegistryAccess.registryAccess().getRegistry(io.papermc.paper.registry.RegistryKey.GAME_EVENT); // Paper diff --git a/patches/api/0367-Add-LivingEntity-swingHand-EquipmentSlot-convenience.patch b/patches/api/0367-Add-LivingEntity-swingHand-EquipmentSlot-convenience.patch index 2a6826e5c..178ca5316 100644 --- a/patches/api/0367-Add-LivingEntity-swingHand-EquipmentSlot-convenience.patch +++ b/patches/api/0367-Add-LivingEntity-swingHand-EquipmentSlot-convenience.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add LivingEntity#swingHand(EquipmentSlot) convenience method diff --git a/src/main/java/org/bukkit/entity/LivingEntity.java b/src/main/java/org/bukkit/entity/LivingEntity.java -index 0c7d96bc296b56dc9ff0ada89bb4d715716f8adc..fb62933d589ccbe4181a7b9633bb742ae35f68dd 100644 +index f7a3dd62ae5e492a7bccf8167cec0fc560499fa2..4ed60d7eae1b1c8980f8844b33151fd7c53207c2 100644 --- a/src/main/java/org/bukkit/entity/LivingEntity.java +++ b/src/main/java/org/bukkit/entity/LivingEntity.java -@@ -1331,4 +1331,24 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource +@@ -1341,4 +1341,24 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource @Deprecated void setHurtDirection(float hurtDirection); // Paper end - hurt direction API diff --git a/patches/api/0368-Add-entity-knockback-API.patch b/patches/api/0368-Add-entity-knockback-API.patch index 33ebf4209..0dbd40358 100644 --- a/patches/api/0368-Add-entity-knockback-API.patch +++ b/patches/api/0368-Add-entity-knockback-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add entity knockback API diff --git a/src/main/java/org/bukkit/entity/LivingEntity.java b/src/main/java/org/bukkit/entity/LivingEntity.java -index fb62933d589ccbe4181a7b9633bb742ae35f68dd..597a3b581cb6fa2605fd5916e5639c1020d688b7 100644 +index 4ed60d7eae1b1c8980f8844b33151fd7c53207c2..86c5ceddc722d28261f8a6d8368400fe2731aaf0 100644 --- a/src/main/java/org/bukkit/entity/LivingEntity.java +++ b/src/main/java/org/bukkit/entity/LivingEntity.java -@@ -1351,4 +1351,18 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource +@@ -1361,4 +1361,18 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource } } // Paper end - swing hand API diff --git a/patches/api/0375-ItemStack-damage-API.patch b/patches/api/0375-ItemStack-damage-API.patch index 9c2542647..2f8f215ed 100644 --- a/patches/api/0375-ItemStack-damage-API.patch +++ b/patches/api/0375-ItemStack-damage-API.patch @@ -8,10 +8,10 @@ to simulate damage done to an itemstack and all the logic associated with damaging them diff --git a/src/main/java/org/bukkit/entity/LivingEntity.java b/src/main/java/org/bukkit/entity/LivingEntity.java -index 597a3b581cb6fa2605fd5916e5639c1020d688b7..c9c3b926c5bb408d964ed5acc9f95c8527837a25 100644 +index 86c5ceddc722d28261f8a6d8368400fe2731aaf0..9f3e2903c955f2a5d1b25825c49188df62d20cef 100644 --- a/src/main/java/org/bukkit/entity/LivingEntity.java +++ b/src/main/java/org/bukkit/entity/LivingEntity.java -@@ -1365,4 +1365,53 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource +@@ -1375,4 +1375,53 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource */ void knockback(double strength, double directionX, double directionZ); // Paper end - knockback API diff --git a/patches/api/0387-Add-Entity-Body-Yaw-API.patch b/patches/api/0387-Add-Entity-Body-Yaw-API.patch index 9351e36f7..17277b2e8 100644 --- a/patches/api/0387-Add-Entity-Body-Yaw-API.patch +++ b/patches/api/0387-Add-Entity-Body-Yaw-API.patch @@ -53,10 +53,10 @@ index 6dcaf7e9bc9afb708ab569e82f27c87833450ff1..a76e537c9b3b9519cd46894c90b750f0 // Paper start - Collision API diff --git a/src/main/java/org/bukkit/entity/LivingEntity.java b/src/main/java/org/bukkit/entity/LivingEntity.java -index 7c027d7bbd6b8a1543fa92d44e99674925f093b3..f5149d54d6cb5019f398718b9aa52bc3ab34a5ae 100644 +index 016529563381a674db8050cb328f9e8f16e72e93..c610731928ac9b01b111a7ccf0340ad59fcfb867 100644 --- a/src/main/java/org/bukkit/entity/LivingEntity.java +++ b/src/main/java/org/bukkit/entity/LivingEntity.java -@@ -1414,4 +1414,22 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource +@@ -1424,4 +1424,22 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource */ void damageItemStack(org.bukkit.inventory.@NotNull EquipmentSlot slot, int amount); // Paper end - ItemStack damage API diff --git a/patches/api/0425-Attribute-Modifier-API-improvements.patch b/patches/api/0425-Attribute-Modifier-API-improvements.patch index acf67fcd3..d4b0442c3 100644 --- a/patches/api/0425-Attribute-Modifier-API-improvements.patch +++ b/patches/api/0425-Attribute-Modifier-API-improvements.patch @@ -70,34 +70,10 @@ index f08ee26cc4d479e1bfc5264b8cbe721315de91f2..f1fa86ddf1f50a357c9e94cc61261d8c * Remove a modifier from this instance. * diff --git a/src/main/java/org/bukkit/attribute/AttributeModifier.java b/src/main/java/org/bukkit/attribute/AttributeModifier.java -index ee39c0b83e558681e8b006172d34c98e2c83cda2..c57690798108e9f91f8c552f39dcc2b080fe1b61 100644 +index 8c53ac6b4381f3cf8b5e989c8b2a3ba77bd4e475..def473b6424da1e81448bd492b7fef46691eaf8c 100644 --- a/src/main/java/org/bukkit/attribute/AttributeModifier.java +++ b/src/main/java/org/bukkit/attribute/AttributeModifier.java -@@ -25,26 +25,32 @@ public class AttributeModifier implements ConfigurationSerializable, Keyed { - private final Operation operation; - private final EquipmentSlotGroup slot; - -- @Deprecated -+ @Deprecated(forRemoval = true, since = "1.21") - public AttributeModifier(@NotNull String name, double amount, @NotNull Operation operation) { - this(UUID.randomUUID(), name, amount, operation); - } - -- @Deprecated -+ @Deprecated(forRemoval = true, since = "1.21") - public AttributeModifier(@NotNull UUID uuid, @NotNull String name, double amount, @NotNull Operation operation) { - this(uuid, name, amount, operation, (EquipmentSlot) null); - } - -- @Deprecated -+ @Deprecated(forRemoval = true, since = "1.21") - public AttributeModifier(@NotNull UUID uuid, @NotNull String name, double amount, @NotNull Operation operation, @Nullable EquipmentSlot slot) { - this(uuid, name, amount, operation, (slot) == null ? EquipmentSlotGroup.ANY : slot.getGroup()); - } - -- @Deprecated -+ @Deprecated(forRemoval = true, since = "1.21") - public AttributeModifier(@NotNull UUID uuid, @NotNull String name, double amount, @NotNull Operation operation, @NotNull EquipmentSlotGroup slot) { +@@ -48,6 +48,12 @@ public class AttributeModifier implements ConfigurationSerializable, Keyed { this(NamespacedKey.fromString(uuid.toString()), amount, operation, slot); } @@ -110,12 +86,3 @@ index ee39c0b83e558681e8b006172d34c98e2c83cda2..c57690798108e9f91f8c552f39dcc2b0 public AttributeModifier(@NotNull NamespacedKey key, double amount, @NotNull Operation operation, @NotNull EquipmentSlotGroup slot) { Preconditions.checkArgument(key != null, "Key cannot be null"); Preconditions.checkArgument(operation != null, "Operation cannot be null"); -@@ -63,7 +69,7 @@ public class AttributeModifier implements ConfigurationSerializable, Keyed { - * @deprecated attributes are now identified by keys - */ - @NotNull -- @Deprecated -+ @Deprecated(forRemoval = true, since = "1.21") - public UUID getUniqueId() { - return UUID.fromString(getKey().toString()); - } diff --git a/patches/api/0429-Experimental-annotations-change.patch b/patches/api/0429-Experimental-annotations-change.patch index 9ea8f3a12..1b4b1cf58 100644 --- a/patches/api/0429-Experimental-annotations-change.patch +++ b/patches/api/0429-Experimental-annotations-change.patch @@ -25,10 +25,10 @@ index 7522c611b5214dd09867c434d5f7cf161f5c04ca..026b1832bcd163ab89668c991bf002e6 /** diff --git a/src/main/java/org/bukkit/Material.java b/src/main/java/org/bukkit/Material.java -index c4f067598a40b0381bc9e601a3809e2683c10407..54704da43cf9c429f3914f0580246dde99aa93c0 100644 +index 6959f36023b12ec2dece9b91a3b8a5d07b635430..de469f32dd9a01e0e2fde016044a783dde0c5b98 100644 --- a/src/main/java/org/bukkit/Material.java +++ b/src/main/java/org/bukkit/Material.java -@@ -2497,6 +2497,8 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla +@@ -2499,6 +2499,8 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla EGG(21603, 16), COMPASS(24139), RECOVERY_COMPASS(12710), @@ -162,15 +162,15 @@ index 4adc91ba3dff00ab44303778e9d4499f7808ad00..beb62426490a361af793fb530106d854 } diff --git a/src/main/java/org/bukkit/event/inventory/InventoryType.java b/src/main/java/org/bukkit/event/inventory/InventoryType.java -index fbdbd2f4da5e09d4b111ddcf72e2d7dd59046bd7..126d60a4d0b3b140b922fb24aa425e805892ad32 100644 +index ae4ae1fa6d407665ef03edcdef683d741668acf1..b4fe8108e8b36b8ce859cdd4a5b557034f923c85 100644 --- a/src/main/java/org/bukkit/event/inventory/InventoryType.java +++ b/src/main/java/org/bukkit/event/inventory/InventoryType.java -@@ -146,7 +146,6 @@ public enum InventoryType { +@@ -148,7 +148,6 @@ public enum InventoryType { /** * A crafter inventory, with 9 CRAFTING slots. */ - @ApiStatus.Experimental - CRAFTER(9, "Crafter"), + CRAFTER(9, "Crafter", MenuType.CRAFTER_3X3), /** * The new smithing inventory, with 3 CRAFTING slots and 1 RESULT slot. diff --git a/src/main/java/org/bukkit/inventory/CrafterInventory.java b/src/main/java/org/bukkit/inventory/CrafterInventory.java diff --git a/patches/api/0431-Improve-Registry.patch b/patches/api/0431-Improve-Registry.patch index 1ae2f1b34..45bd41d64 100644 --- a/patches/api/0431-Improve-Registry.patch +++ b/patches/api/0431-Improve-Registry.patch @@ -49,10 +49,10 @@ index 62d2b3f950860dee0898d77b0a29635c3f9a7e23..98fdfc8978fea1937e31a7427433a192 @Override public @NotNull String translationKey() { diff --git a/src/main/java/org/bukkit/Registry.java b/src/main/java/org/bukkit/Registry.java -index 1df2b8fcf90333d5981f16d9dddddd48289f94e4..5d21459e9128c515508a2b4b2265d9824e10d9d5 100644 +index 7870a796e719148a42d18f1497b56c0d8f651a43..ff82bf3ea959c78e71ec7b0972a2d472f20aaf04 100644 --- a/src/main/java/org/bukkit/Registry.java +++ b/src/main/java/org/bukkit/Registry.java -@@ -359,6 +359,79 @@ public interface Registry extends Iterable { +@@ -367,6 +367,79 @@ public interface Registry extends Iterable { @Nullable T get(@NotNull NamespacedKey key); @@ -132,7 +132,7 @@ index 1df2b8fcf90333d5981f16d9dddddd48289f94e4..5d21459e9128c515508a2b4b2265d982 /** * Returns a new stream, which contains all registry items, which are registered to the registry. * -@@ -433,5 +506,12 @@ public interface Registry extends Iterable { +@@ -441,5 +514,12 @@ public interface Registry extends Iterable { public Class getType() { return this.type; } diff --git a/patches/api/0433-Add-missing-InventoryType.patch b/patches/api/0433-Add-missing-InventoryType.patch index 34200f73e..3735af569 100644 --- a/patches/api/0433-Add-missing-InventoryType.patch +++ b/patches/api/0433-Add-missing-InventoryType.patch @@ -6,18 +6,18 @@ Subject: [PATCH] Add missing InventoryType Upstream did not add a DECORATED_POT inventory type diff --git a/src/main/java/org/bukkit/event/inventory/InventoryType.java b/src/main/java/org/bukkit/event/inventory/InventoryType.java -index 126d60a4d0b3b140b922fb24aa425e805892ad32..398f74ba0d2e890fb556cd964f61da7c623a7c6d 100644 +index b4fe8108e8b36b8ce859cdd4a5b557034f923c85..7184f80899206bedeac387e9f8a35482801efd4b 100644 --- a/src/main/java/org/bukkit/event/inventory/InventoryType.java +++ b/src/main/java/org/bukkit/event/inventory/InventoryType.java -@@ -143,6 +143,12 @@ public enum InventoryType { +@@ -145,6 +145,12 @@ public enum InventoryType { * Pseudo jukebox inventory with 1 slot of undefined type. */ - JUKEBOX(1, "Jukebox", false), + JUKEBOX(1, "Jukebox", null, false), + // Paper start - add missing type + /** + * Pseudo decorated pot with 1 slot of undefined type. + */ -+ DECORATED_POT(1, "Decorated Pot", false), ++ DECORATED_POT(1, "Decorated Pot", null, false), + // Paper end - add missing type /** * A crafter inventory, with 9 CRAFTING slots. diff --git a/patches/api/0469-Fix-equipment-slot-and-group-API.patch b/patches/api/0469-Fix-equipment-slot-and-group-API.patch index b6b99f5ea..81d91485d 100644 --- a/patches/api/0469-Fix-equipment-slot-and-group-API.patch +++ b/patches/api/0469-Fix-equipment-slot-and-group-API.patch @@ -10,10 +10,10 @@ Adds the following: Co-authored-by: SoSeDiK diff --git a/src/main/java/org/bukkit/attribute/AttributeModifier.java b/src/main/java/org/bukkit/attribute/AttributeModifier.java -index c57690798108e9f91f8c552f39dcc2b080fe1b61..bfa378fe3d074bafbc0af2c4d858e2a34d3126bd 100644 +index def473b6424da1e81448bd492b7fef46691eaf8c..027a7d3b6feb52f6c3424edc0820d29fdaf6ebae 100644 --- a/src/main/java/org/bukkit/attribute/AttributeModifier.java +++ b/src/main/java/org/bukkit/attribute/AttributeModifier.java -@@ -118,6 +118,7 @@ public class AttributeModifier implements ConfigurationSerializable, Keyed { +@@ -130,6 +130,7 @@ public class AttributeModifier implements ConfigurationSerializable, Keyed { */ @Nullable @Deprecated @@ -22,10 +22,10 @@ index c57690798108e9f91f8c552f39dcc2b080fe1b61..bfa378fe3d074bafbc0af2c4d858e2a3 return slot == EquipmentSlotGroup.ANY ? null : slot.getExample(); } diff --git a/src/main/java/org/bukkit/entity/LivingEntity.java b/src/main/java/org/bukkit/entity/LivingEntity.java -index 8369da45206d2606f0715f3d803163dd8028251e..fcdc5fce88720cc926a3953d80b5045113d1516c 100644 +index 51a428473e702be3ab79bd1e579d1114f747791b..68c08e7a212bc3e3885f9b5a4d9aef85fcb3b029 100644 --- a/src/main/java/org/bukkit/entity/LivingEntity.java +++ b/src/main/java/org/bukkit/entity/LivingEntity.java -@@ -1447,4 +1447,15 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource +@@ -1457,4 +1457,15 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource */ void setBodyYaw(float bodyYaw); // Paper end - body yaw API diff --git a/patches/api/0471-General-ItemMeta-fixes.patch b/patches/api/0471-General-ItemMeta-fixes.patch index 34bd355a5..e5a452785 100644 --- a/patches/api/0471-General-ItemMeta-fixes.patch +++ b/patches/api/0471-General-ItemMeta-fixes.patch @@ -132,31 +132,6 @@ index ff6818b6d9e0207eafdd749928f33aeac3f27191..992f39da07bafe9769effaa7dc6adc01 /** * Checks to see if this item has a maximum amount of damage. * -diff --git a/src/main/java/org/bukkit/inventory/meta/FireworkMeta.java b/src/main/java/org/bukkit/inventory/meta/FireworkMeta.java -index 9bd15803cd3526da951ed197305a1b9385305927..5833c4c16b08a0f338a5cd7c0011e82eeda222c2 100644 ---- a/src/main/java/org/bukkit/inventory/meta/FireworkMeta.java -+++ b/src/main/java/org/bukkit/inventory/meta/FireworkMeta.java -@@ -75,10 +75,20 @@ public interface FireworkMeta extends ItemMeta { - */ - boolean hasEffects(); - -+ // Paper start - add hasPower -+ /** -+ * Checks if power is defined on this meta. -+ * -+ * @return true if there is a power specified -+ */ -+ boolean hasPower(); -+ // Paper end - add hasPower -+ - /** - * Gets the approximate height the firework will fly. - * - * @return approximate flight height of the firework. -+ * @see #hasPower() - */ - int getPower(); - diff --git a/src/main/java/org/bukkit/inventory/meta/ItemMeta.java b/src/main/java/org/bukkit/inventory/meta/ItemMeta.java index 1a4260b00b193b94ce4b1b2954644f4e41baff4c..5d5fcb2720b62e47d47f441032c4de02574b051a 100644 --- a/src/main/java/org/bukkit/inventory/meta/ItemMeta.java diff --git a/patches/api/0474-Registry-Modification-API.patch b/patches/api/0474-Registry-Modification-API.patch index 58de2e6b7..78231b787 100644 --- a/patches/api/0474-Registry-Modification-API.patch +++ b/patches/api/0474-Registry-Modification-API.patch @@ -795,10 +795,10 @@ index 0000000000000000000000000000000000000000..5fde17e97eddcd1d01ee39694c9159d0 + } +} diff --git a/src/main/java/org/bukkit/Registry.java b/src/main/java/org/bukkit/Registry.java -index 5d21459e9128c515508a2b4b2265d9824e10d9d5..20015393f91af405c99db2635a471fb6ff19e4bf 100644 +index ff82bf3ea959c78e71ec7b0972a2d472f20aaf04..1392a1295349cfc43fbc115c912c1995779ffe62 100644 --- a/src/main/java/org/bukkit/Registry.java +++ b/src/main/java/org/bukkit/Registry.java -@@ -358,6 +358,27 @@ public interface Registry extends Iterable { +@@ -366,6 +366,27 @@ public interface Registry extends Iterable { */ @Nullable T get(@NotNull NamespacedKey key); @@ -826,7 +826,7 @@ index 5d21459e9128c515508a2b4b2265d9824e10d9d5..20015393f91af405c99db2635a471fb6 // Paper start - improve Registry /** -@@ -432,6 +453,34 @@ public interface Registry extends Iterable { +@@ -440,6 +461,34 @@ public interface Registry extends Iterable { } // Paper end - improve Registry @@ -861,7 +861,7 @@ index 5d21459e9128c515508a2b4b2265d9824e10d9d5..20015393f91af405c99db2635a471fb6 /** * Returns a new stream, which contains all registry items, which are registered to the registry. * -@@ -513,5 +562,23 @@ public interface Registry extends Iterable { +@@ -521,5 +570,23 @@ public interface Registry extends Iterable { return value.getKey(); } // Paper end - improve Registry diff --git a/patches/api/0475-Introduce-registry-entry-and-builders.patch b/patches/api/0475-Introduce-registry-entry-and-builders.patch index 44bdb4b36..2251dfb44 100644 --- a/patches/api/0475-Introduce-registry-entry-and-builders.patch +++ b/patches/api/0475-Introduce-registry-entry-and-builders.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Introduce registry entry and builders diff --git a/src/main/java/io/papermc/paper/registry/RegistryKey.java b/src/main/java/io/papermc/paper/registry/RegistryKey.java -index 76daccf4ea502e1747a6f9176dc16fd20c561286..2945dde566682f977e84fde5d473a6c69be24df1 100644 +index 7763ea28a00c25ffd8ba8941cff29bae5ae117a2..ccbe3fa2e01a80abb801d14891dce34ed179b5ee 100644 --- a/src/main/java/io/papermc/paper/registry/RegistryKey.java +++ b/src/main/java/io/papermc/paper/registry/RegistryKey.java -@@ -76,9 +76,10 @@ public sealed interface RegistryKey extends Keyed permits RegistryKeyImpl { +@@ -77,9 +77,10 @@ public sealed interface RegistryKey extends Keyed permits RegistryKeyImpl { @ApiStatus.Internal RegistryKey BLOCK = create("block"); /** diff --git a/patches/api/0487-Add-FeatureFlag-API.patch b/patches/api/0487-Add-FeatureFlag-API.patch index 9ac403aad..e91966612 100644 --- a/patches/api/0487-Add-FeatureFlag-API.patch +++ b/patches/api/0487-Add-FeatureFlag-API.patch @@ -242,10 +242,10 @@ index 330e3013eda204aa9b33d5e1c3104e0b595abdbc..c80e0ef587a001ee6de3f5c182cc9696 /** * Do not use, method will get removed, and the plugin won't run diff --git a/src/main/java/org/bukkit/block/BlockType.java b/src/main/java/org/bukkit/block/BlockType.java -index 8f430a4067fc722ebfbca846cccded4fb0a3a4e5..a98cc1bc25fcde49b525ae6f841ea2841111e028 100644 +index 3dc165265af4a9cb0e05018b9273b7dfdecf730a..72aa7e4004afcaa132dc4dbbe2ff050b503928af 100644 --- a/src/main/java/org/bukkit/block/BlockType.java +++ b/src/main/java/org/bukkit/block/BlockType.java -@@ -123,7 +123,7 @@ import org.jetbrains.annotations.Nullable; +@@ -125,7 +125,7 @@ import org.jetbrains.annotations.Nullable; * changes may occur. Do not use this API in plugins. */ @ApiStatus.Internal @@ -254,7 +254,7 @@ index 8f430a4067fc722ebfbca846cccded4fb0a3a4e5..a98cc1bc25fcde49b525ae6f841ea284 /** * Typed represents a subtype of {@link BlockType}s that have a known block -@@ -3479,7 +3479,9 @@ public interface BlockType extends Keyed, Translatable, net.kyori.adventure.tran +@@ -3481,7 +3481,9 @@ public interface BlockType extends Keyed, Translatable, net.kyori.adventure.tran * * @param world the world to check * @return true if this BlockType can be used in this World. diff --git a/patches/server/0008-CB-fixes.patch b/patches/server/0008-CB-fixes.patch index 000d9843e..d2f68ddc0 100644 --- a/patches/server/0008-CB-fixes.patch +++ b/patches/server/0008-CB-fixes.patch @@ -82,27 +82,8 @@ index 85c7f3027978b1d7d6c31b7ad21b3377cdda5925..e34deaf398dc6722c3128bdd6b9bc16d + } + // Paper end } -diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 751900e0c2a946ba4291174c81b2bdbdbe994e94..f04c0f8b3905b488aac221fedde335a54ad1ff58 100644 ---- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java -+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -2522,7 +2522,13 @@ public final class CraftServer implements Server { - Preconditions.checkArgument(key != null, "NamespacedKey key cannot be null"); - - ReloadableServerRegistries.Holder registry = this.getServer().reloadableRegistries(); -- return new CraftLootTable(key, registry.getLootTable(CraftLootTable.bukkitKeyToMinecraft(key))); -+ // Paper start - honor method contract -+ final ResourceKey lootTableKey = CraftLootTable.bukkitKeyToMinecraft(key); -+ final Optional table = registry.get().lookup(Registries.LOOT_TABLE) -+ .flatMap(registryEntryLookup -> registryEntryLookup.get(lootTableKey)) -+ .map(net.minecraft.core.Holder::value); -+ return table.map(lootTable -> new CraftLootTable(key, lootTable)).orElse(null); -+ // Paper end - } - - @Override diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java -index dbcde37cfdeb6141c3f5c4f8b95d60fca91c7977..2122d7316f55ab5bec7058fe1b8ee3ceb42deea7 100644 +index cf06abf508fab734f5945e1d292c01512a50749e..42a1a0588e2b506082499ac9791d039089a64631 100644 --- a/src/main/java/org/bukkit/craftbukkit/Main.java +++ b/src/main/java/org/bukkit/craftbukkit/Main.java @@ -123,6 +123,7 @@ public class Main { @@ -134,7 +115,7 @@ index 905adf97c0d1f0d1c774a6835a5dffcfea884e58..c017ce2ca1bc535795c958a2e509af2a public class CraftScheduler implements BukkitScheduler { diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java -index cfb4cf66aa5f32a96a15886c6cf4a3946bd232ec..aa6a9dcd5528df38dddc0c661334c35658a19cee 100644 +index b0cc506f1b3eb53e8e2299787071de707a036df0..eeffc4be4ae7168c9f69edbbff6642fd4c214b3d 100644 --- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java +++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java @@ -240,7 +240,7 @@ public final class CraftMagicNumbers implements UnsafeValues { diff --git a/patches/server/0009-MC-Utils.patch b/patches/server/0009-MC-Utils.patch index 1fc2a2627..8ace4e373 100644 --- a/patches/server/0009-MC-Utils.patch +++ b/patches/server/0009-MC-Utils.patch @@ -5052,7 +5052,7 @@ index 05a4056b242159b1c85aa6ebf43b69cf85c00021..06cbe7a7ea131a8bead857cbfbd27810 public Entity(EntityType type, Level world) { this.id = Entity.ENTITY_COUNTER.incrementAndGet(); diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 12db4c5db3d7951df984db03d09d14d808e58699..44d4aee059d74676bffb8b6bc6f6ad4dd96fcb33 100644 +index c1db114edd9e31273b76374cbd19710b01cada2b..26064174397dc95f9b117d901e22c55abebf3c39 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -282,6 +282,7 @@ public abstract class LivingEntity extends Entity implements Attackable { @@ -5064,7 +5064,7 @@ index 12db4c5db3d7951df984db03d09d14d808e58699..44d4aee059d74676bffb8b6bc6f6ad4d @Override public float getBukkitYaw() { diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index d7a3f704cce228c50d26f1ecd98e819eca561bfc..3457e1c9791b294b5e4dab478d90cdd1a1cf7fef 100644 +index 5fa5c6fa8c143e1aa1dacc7a6b63b11ad4b074ec..5025f7f5d66f2aedd57db137ae2dc69c723768b3 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java @@ -953,6 +953,25 @@ public final class ItemStack implements DataComponentHolder { @@ -5563,10 +5563,10 @@ index 34933c5324126f9afdc5cba9dea997ace8f01806..1cfc906317f07a44f06a4adf021c44e3 return false; } else { diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index a094eb1348509fea0c3d253cddfe409998dcbf23..2ea3ad9ab43dec0555d6716bebefbc3bb6553f1a 100644 +index 4c5b6f8d63e4c60a1dc81e68117fa049b956819a..958925a980f50cc85b10d36bcc343947cec8f285 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -2601,4 +2601,9 @@ public final class CraftServer implements Server { +@@ -2598,4 +2598,9 @@ public final class CraftServer implements Server { return this.spigot; } // Spigot end @@ -5657,7 +5657,7 @@ index 508419378c88ba8688edbd5142d9d8ba52396507..69c62699e3412f2730e3db65f196099d + // Paper end } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index e130d0aa64d0caaa7760d8de4b1f989523f9de20..9ca244b69995552df63fb5d4e3d6961b585bcc47 100644 +index 4cbf0d797fc2d57c822877c111698b2077399d32..9cd22b09b295ecd95d17d1dd5edb96f916eb6c09 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -2420,4 +2420,34 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0010-Adventure.patch b/patches/server/0010-Adventure.patch index c0eaef344..6ea30f61a 100644 --- a/patches/server/0010-Adventure.patch +++ b/patches/server/0010-Adventure.patch @@ -2786,10 +2786,10 @@ index cb136a30287a17947ed018cdc48e6f91ed904072..ee5188f3aa2ff71306f5af8046e8ddf9 this.chatVisibility = clientOptions.chatVisibility(); this.canChatColor = clientOptions.chatColors(); diff --git a/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java -index 677ee8dfa0d2f5bcb23ee870a76bcee63e557813..678f12679985c6fa9effe8beec306d95d5e0bdac 100644 +index 16320a5fccc7faf7ceac95d471532104a61d27a5..b2bddc6183204b9f519549073e38741e1a9322c4 100644 --- a/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java -@@ -67,7 +67,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack +@@ -72,7 +72,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack private static final Component TIMEOUT_DISCONNECTION_MESSAGE = Component.translatable("disconnect.timeout"); static final Component DISCONNECT_UNEXPECTED_QUERY = Component.translatable("multiplayer.disconnect.unexpected_query_response"); protected final MinecraftServer server; @@ -2798,7 +2798,7 @@ index 677ee8dfa0d2f5bcb23ee870a76bcee63e557813..678f12679985c6fa9effe8beec306d95 private final boolean transferred; private long keepAliveTime; private boolean keepAlivePending; -@@ -76,6 +76,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack +@@ -81,6 +81,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack private boolean closed = false; private int latency; private volatile boolean suspendFlushingOnServerThread = false; @@ -2806,7 +2806,7 @@ index 677ee8dfa0d2f5bcb23ee870a76bcee63e557813..678f12679985c6fa9effe8beec306d95 public ServerCommonPacketListenerImpl(MinecraftServer minecraftserver, Connection networkmanager, CommonListenerCookie commonlistenercookie, ServerPlayer player) { // CraftBukkit this.server = minecraftserver; -@@ -189,6 +190,18 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack +@@ -194,6 +195,18 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack ServerCommonPacketListenerImpl.LOGGER.info("Disconnecting {} due to resource pack {} rejection", this.playerProfile().getName(), packet.id()); this.disconnect((Component) Component.translatable("multiplayer.requiredTexturePrompt.disconnect")); } @@ -2825,7 +2825,7 @@ index 677ee8dfa0d2f5bcb23ee870a76bcee63e557813..678f12679985c6fa9effe8beec306d95 this.cserver.getPluginManager().callEvent(new PlayerResourcePackStatusEvent(this.getCraftPlayer(), packet.id(), PlayerResourcePackStatusEvent.Status.values()[packet.action().ordinal()])); // CraftBukkit } -@@ -275,6 +288,12 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack +@@ -280,6 +293,12 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack } } @@ -2838,7 +2838,7 @@ index 677ee8dfa0d2f5bcb23ee870a76bcee63e557813..678f12679985c6fa9effe8beec306d95 public void disconnect(Component reason) { this.disconnect(new DisconnectionDetails(reason)); } -@@ -305,9 +324,9 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack +@@ -310,9 +329,9 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack return; } @@ -2850,7 +2850,7 @@ index 677ee8dfa0d2f5bcb23ee870a76bcee63e557813..678f12679985c6fa9effe8beec306d95 if (this.cserver.getServer().isRunning()) { this.cserver.getPluginManager().callEvent(event); -@@ -319,7 +338,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack +@@ -324,7 +343,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack } this.player.kickLeaveMessage = event.getLeaveMessage(); // CraftBukkit - SPIGOT-3034: Forward leave message to PlayerQuitEvent // Send the possibly modified leave message @@ -2947,10 +2947,10 @@ index 2de70e3a3038b2d2bb47b58f0e14d937c35d55ba..4acee8121ff62413dbbf2294d17da3bd @Override diff --git a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java -index 8e715261b99bcc19b6f4b9787987c59aa19ba70e..851e4bdf1739736fd193786a6541ffb341525dcb 100644 +index b53e3e5e02ed501d30c3fca4c3130263c32cd2f5..b2f7c76207f2dc0c62f608f21aba4b531f8f523f 100644 --- a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java -@@ -333,7 +333,7 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, +@@ -338,7 +338,7 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, if (PlayerPreLoginEvent.getHandlerList().getRegisteredListeners().length != 0) { final PlayerPreLoginEvent event = new PlayerPreLoginEvent(playerName, address, uniqueId); if (asyncEvent.getResult() != PlayerPreLoginEvent.Result.ALLOWED) { @@ -2959,7 +2959,7 @@ index 8e715261b99bcc19b6f4b9787987c59aa19ba70e..851e4bdf1739736fd193786a6541ffb3 } Waitable waitable = new Waitable() { @Override -@@ -345,12 +345,12 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, +@@ -350,12 +350,12 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, ServerLoginPacketListenerImpl.this.server.processQueue.add(waitable); if (waitable.get() != PlayerPreLoginEvent.Result.ALLOWED) { @@ -3242,7 +3242,7 @@ index ed54c81a3269360acce674aa4e1d54ccb2461841..c9c849534c3998cfcab7ddcb12a71ccb } diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index 3457e1c9791b294b5e4dab478d90cdd1a1cf7fef..1138d238caa18171b6562cc748c92cec03bfbb97 100644 +index 5025f7f5d66f2aedd57db137ae2dc69c723768b3..1cc9078fa63da4f39ef4a551cd6a5ff207f58306 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java @@ -183,7 +183,15 @@ public final class ItemStack implements DataComponentHolder { @@ -3327,7 +3327,7 @@ index 49c037e961c5ca5ba8d6a870cb32ffe8719adc91..2772c19f58a35713d61aab24f6f0d6f5 } } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 2ea3ad9ab43dec0555d6716bebefbc3bb6553f1a..be068650a568fc1d0d3b9c5acd040adafb2344e1 100644 +index 958925a980f50cc85b10d36bcc343947cec8f285..ee0fbba1ae29bb809303ccc09f64d48c54d426cb 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -644,8 +644,10 @@ public final class CraftServer implements Server { @@ -3346,13 +3346,13 @@ index 2ea3ad9ab43dec0555d6716bebefbc3bb6553f1a..be068650a568fc1d0d3b9c5acd040ada } + // Paper start -+ @Override + @Override + public net.kyori.adventure.text.Component shutdownMessage() { + String msg = getShutdownMessage(); + return msg != null ? net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer.legacySection().deserialize(msg) : null; + } + // Paper end - @Override ++ @Override + @Deprecated // Paper public String getShutdownMessage() { return this.configuration.getString("settings.shutdown-message"); @@ -3429,12 +3429,12 @@ index 2ea3ad9ab43dec0555d6716bebefbc3bb6553f1a..be068650a568fc1d0d3b9c5acd040ada } + // Paper start -+ @Override + @Override + public Merchant createMerchant(net.kyori.adventure.text.Component title) { + return new org.bukkit.craftbukkit.inventory.CraftMerchantCustom(title == null ? InventoryType.MERCHANT.defaultTitle() : title); + } + // Paper end - @Override ++ @Override + @Deprecated // Paper public Merchant createMerchant(String title) { return new CraftMerchantCustom(title == null ? InventoryType.MERCHANT.getDefaultTitle() : title); @@ -3457,7 +3457,7 @@ index 2ea3ad9ab43dec0555d6716bebefbc3bb6553f1a..be068650a568fc1d0d3b9c5acd040ada @Override public String getMotd() { return this.console.getMotd(); -@@ -2606,4 +2663,57 @@ public final class CraftServer implements Server { +@@ -2603,4 +2660,57 @@ public final class CraftServer implements Server { public double[] getTPS() { return new double[]{0, 0, 0}; // TODO } @@ -4096,10 +4096,10 @@ index d09102fe44dffa61dff883488f47715effaa8211..269326e7689eba91bcfd3475006e8cbf @Override public boolean isPermissionSet(String name) { diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java -index 59107e11f29e2c6dd213966b3000c79eabdbd39b..0c94a1094a3af0232bb2957708fa997933db621b 100644 +index f77f14d549479a5e6d4ef823c137954de746a5ce..a93895a6e656c25e819354ecf5c73ff4bae83675 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java -@@ -321,9 +321,12 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity { +@@ -329,9 +329,12 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity { container = CraftEventFactory.callInventoryOpenEvent(player, container); if (container == null) return; @@ -4114,7 +4114,7 @@ index 59107e11f29e2c6dd213966b3000c79eabdbd39b..0c94a1094a3af0232bb2957708fa9979 player.containerMenu = container; player.initMenu(container); } -@@ -393,8 +396,12 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity { +@@ -401,8 +404,12 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity { // Now open the window MenuType windowType = CraftContainer.getNotchInventoryType(inventory.getTopInventory()); @@ -4148,10 +4148,10 @@ index 55945b83a5426b352bad9507cc9e94afb1278032..9ea1537408ff2d790747b6e5a681d917 public boolean isOp() { 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 9ca244b69995552df63fb5d4e3d6961b585bcc47..807184636a99c17fe6ed8dd1cd07e1872d613657 100644 +index 9cd22b09b295ecd95d17d1dd5edb96f916eb6c09..69b8d0f73ced69cd88029a5d7e11aca40d70f9d1 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -388,14 +388,40 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -390,14 +390,40 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @Override public String getDisplayName() { @@ -4192,7 +4192,7 @@ index 9ca244b69995552df63fb5d4e3d6961b585bcc47..807184636a99c17fe6ed8dd1cd07e187 @Override public String getPlayerListName() { return this.getHandle().listName == null ? this.getName() : CraftChatMessage.fromComponent(this.getHandle().listName); -@@ -407,6 +433,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -409,6 +435,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { name = this.getName(); } this.getHandle().listName = name.equals(this.getName()) ? null : CraftChatMessage.fromStringOrNull(name); @@ -4200,7 +4200,7 @@ index 9ca244b69995552df63fb5d4e3d6961b585bcc47..807184636a99c17fe6ed8dd1cd07e187 for (ServerPlayer player : (List) this.server.getHandle().players) { if (player.getBukkitEntity().canSee(this)) { player.connection.send(new ClientboundPlayerInfoUpdatePacket(ClientboundPlayerInfoUpdatePacket.Action.UPDATE_DISPLAY_NAME, this.getHandle())); -@@ -414,42 +441,42 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -416,42 +443,42 @@ public class CraftPlayer extends CraftHumanEntity implements Player { } } @@ -4253,7 +4253,7 @@ index 9ca244b69995552df63fb5d4e3d6961b585bcc47..807184636a99c17fe6ed8dd1cd07e187 } @@ -481,6 +508,23 @@ public class CraftPlayer extends CraftHumanEntity implements Player { - this.getHandle().connection.disconnect(CraftChatMessage.fromStringOrEmpty(message, true)); + this.getHandle().transferCookieConnection.kickPlayer(CraftChatMessage.fromStringOrEmpty(message, true)); } + // Paper start @@ -4677,7 +4677,7 @@ index 5725b0281ac53a2354b233223259d6784353bc6e..9ef939b76d06874b856e0c850addb364 @Override public int getLineWidth() { diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 20eb63eeac7f5c9a1d98a9aa8f90a588cb036c70..8f468a3bfa8ef381eabb45ebb3dd9a4942e98dd5 100644 +index 7719afbb1af4091f688a75c92ee8cae8669974ff..34636f7a05d868c4df86316a65c4e008f54db634 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -917,7 +917,7 @@ public class CraftEventFactory { @@ -4699,7 +4699,7 @@ index 20eb63eeac7f5c9a1d98a9aa8f90a588cb036c70..8f468a3bfa8ef381eabb45ebb3dd9a49 return event; } diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftContainer.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftContainer.java -index 42c888af154a133e118a9ff9fef587e345c13e19..867091ff253541ec45b6ae7f1fb3acc83a5c4966 100644 +index 45a8d918d9ecf459a4e66dca555a022ceb507222..1a2329021a6b29777c637ee4dc8cd69ed18001c9 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftContainer.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftContainer.java @@ -72,6 +72,13 @@ public class CraftContainer extends AbstractContainerMenu { @@ -4846,29 +4846,55 @@ index 500bfe5dd745327f953a314e863f7318953bf3bc..e2daeeba1bacbb5c5ca2aa922fa67b02 + } + // Paper end - Adventure } +diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMenuType.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMenuType.java +index b09f794abd68551058e5764749d76c9ce8d2b849..d658634ea4468c9dbfb29bc12282441c96358566 100644 +--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMenuType.java ++++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMenuType.java +@@ -37,6 +37,12 @@ public class CraftMenuType implements MenuType.Typed + + @Override + public V create(final HumanEntity player, final String title) { ++ // Paper start - adventure ++ return create(player, net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer.legacySection().deserialize(title)); ++ } ++ @Override ++ public V create(final HumanEntity player, final net.kyori.adventure.text.Component title) { ++ // Paper end - adventure + Preconditions.checkArgument(player != null, "The given player must not be null"); + Preconditions.checkArgument(title != null, "The given title must not be null"); + Preconditions.checkArgument(player instanceof CraftHumanEntity, "The given player must be a CraftHumanEntity"); +@@ -45,7 +51,7 @@ public class CraftMenuType implements MenuType.Typed + final ServerPlayer serverPlayer = (ServerPlayer) craftHuman.getHandle(); + + final AbstractContainerMenu container = this.typeData.get().menuBuilder().build(serverPlayer, this.handle); +- container.setTitle(CraftChatMessage.fromString(title)[0]); ++ container.setTitle(io.papermc.paper.adventure.PaperAdventure.asVanilla(title)); // Paper - adventure + container.checkReachable = false; + return (V) container.getBukkitView(); + } diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMerchantCustom.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMerchantCustom.java -index 9e05a8515c5f6f340182e91150fcad8bbf80a22b..adf22ce4f0bcd3bd57dc2030c6c92d3df96566e3 100644 +index b9025adf652f22b0ba703b4e249a25b80ee6359d..ef47eb9a321a7b082413d3986d3d394afb899610 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMerchantCustom.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMerchantCustom.java -@@ -13,10 +13,17 @@ import org.bukkit.craftbukkit.util.CraftChatMessage; +@@ -15,10 +15,17 @@ public class CraftMerchantCustom implements CraftMerchant { - public class CraftMerchantCustom extends CraftMerchant { + private MinecraftMerchant merchant; + @Deprecated // Paper - Adventure public CraftMerchantCustom(String title) { - super(new MinecraftMerchant(title)); + this.merchant = new MinecraftMerchant(title); this.getMerchant().craftMerchant = this; } + // Paper start + public CraftMerchantCustom(net.kyori.adventure.text.Component title) { -+ super(new MinecraftMerchant(title)); ++ this.merchant = new MinecraftMerchant(title); + getMerchant().craftMerchant = this; + } + // Paper end @Override public String toString() { -@@ -35,10 +42,17 @@ public class CraftMerchantCustom extends CraftMerchant { +@@ -37,10 +44,17 @@ public class CraftMerchantCustom implements CraftMerchant { private Player tradingPlayer; protected CraftMerchant craftMerchant; diff --git a/patches/server/0017-Paper-command.patch b/patches/server/0017-Paper-command.patch index c38bec538..63333dfff 100644 --- a/patches/server/0017-Paper-command.patch +++ b/patches/server/0017-Paper-command.patch @@ -617,7 +617,7 @@ index bb59986c211f7d6ea50b1ad4bd5565227bec8a6c..9c950fc1de15b5039e34a9fdf893e97a this.setPvpAllowed(dedicatedserverproperties.pvp); this.setFlightAllowed(dedicatedserverproperties.allowFlight); diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 17df1085e29429b202a6f9003343b15b15e2f8f7..29f94e574e39714caec95af5c176c9dba481728e 100644 +index c6cc48c955f052d8f98e3b28c80910b299467480..3ef43c8d39f6012e0b8e98fd216b34a20449cca0 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -986,6 +986,7 @@ public final class CraftServer implements Server { @@ -628,7 +628,7 @@ index 17df1085e29429b202a6f9003343b15b15e2f8f7..29f94e574e39714caec95af5c176c9db this.overrideAllCommandBlockCommands = this.commandsConfiguration.getStringList("command-block-overrides").contains("*"); this.ignoreVanillaPermissions = this.commandsConfiguration.getBoolean("ignore-vanilla-permissions"); -@@ -2711,6 +2712,34 @@ public final class CraftServer implements Server { +@@ -2708,6 +2709,34 @@ public final class CraftServer implements Server { // Paper end // Paper start diff --git a/patches/server/0023-Timings-v2.patch b/patches/server/0023-Timings-v2.patch index 2af23f8ad..5bce38679 100644 --- a/patches/server/0023-Timings-v2.patch +++ b/patches/server/0023-Timings-v2.patch @@ -1229,7 +1229,7 @@ index 4c39d9e0466240b5cd459ee649a22fe3a72bf9f0..eb98bb1bd76869fd76b34885223c8e57 this.entityManager.saveAll(); } else { diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 556d8f23ee2de77cea71abcc0e56718e60b20b05..47e1640cafc8087d94d0b88b8b3117591f9f238e 100644 +index 4acee8121ff62413dbbf2294d17da3bd2f974d5a..3a67b2b6a6d3204b2a7bbe8adbf2b0ecf7898551 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -330,7 +330,6 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl @@ -1378,7 +1378,7 @@ index e465aaa4fd29b4966ea8d88316c6d8f217da2e73..474f020371bb9e5fd2c5b22e44d79029 } diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 44d4aee059d74676bffb8b6bc6f6ad4dd96fcb33..97ad63aad3c559feb1e762af1e00fd550aa5b251 100644 +index 26064174397dc95f9b117d901e22c55abebf3c39..d1e042ec0c1a818d713b31c3d81b48327c3578d5 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -156,7 +156,7 @@ import org.bukkit.event.entity.EntityTeleportEvent; @@ -1590,7 +1590,7 @@ index 46a090123e205394791cdbde2af84c58ce55f7e1..47f5f3d58bb3bf85cf35f9baae77df7f }; } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index ee63b8134b8b3187a65d2b99962cfacbee18ff9f..29bb34e9207bd6c49cfbe58d4b598dcd35b7a65c 100644 +index 25a03307a576368f417f1ec3f44213ed469dcd71..b3d4cb03f6d3951632fd15101aa68e130a43879b 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -376,7 +376,7 @@ public final class CraftServer implements Server { @@ -1602,7 +1602,7 @@ index ee63b8134b8b3187a65d2b99962cfacbee18ff9f..29bb34e9207bd6c49cfbe58d4b598dcd this.overrideSpawnLimits(); console.autosavePeriod = this.configuration.getInt("ticks-per.autosave"); this.warningState = WarningState.value(this.configuration.getString("settings.deprecated-verbose")); -@@ -2620,12 +2620,31 @@ public final class CraftServer implements Server { +@@ -2617,12 +2617,31 @@ public final class CraftServer implements Server { private final org.bukkit.Server.Spigot spigot = new org.bukkit.Server.Spigot() { @@ -1804,7 +1804,7 @@ index b0ffa23faf62629043dfd613315eaf9c5fcc2cfe..00000000000000000000000000000000 - } -} diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 807184636a99c17fe6ed8dd1cd07e1872d613657..68b9b4aba7dba31e4526165e6efb8c40f9e841bc 100644 +index 69b8d0f73ced69cd88029a5d7e11aca40d70f9d1..e4ea877228102ccf93fe8c92b0cec8ebd89771a0 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -2782,6 +2782,14 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0024-Further-improve-server-tick-loop.patch b/patches/server/0024-Further-improve-server-tick-loop.patch index 63028f2e6..03bcb73a6 100644 --- a/patches/server/0024-Further-improve-server-tick-loop.patch +++ b/patches/server/0024-Further-improve-server-tick-loop.patch @@ -146,10 +146,10 @@ index d76dae9ce9022308b316080ac48b7030d674cc6b..e9d56d75b7c648f04d3a56942b286609 this.startMetricsRecordingTick(); this.profiler.push("tick"); diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index f2355612b497079f1de84e953c36720794da51d8..1056badff06575ef13907afac60af734ffa2b863 100644 +index b3d4cb03f6d3951632fd15101aa68e130a43879b..90da60f7cdfe809c2035c9cd242f748ec8bf5eb0 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -2673,7 +2673,11 @@ public final class CraftServer implements Server { +@@ -2670,7 +2670,11 @@ public final class CraftServer implements Server { @Override public double[] getTPS() { diff --git a/patches/server/0051-Use-UserCache-for-player-heads.patch b/patches/server/0051-Use-UserCache-for-player-heads.patch index e0b11bcf1..b7c3f11a2 100644 --- a/patches/server/0051-Use-UserCache-for-player-heads.patch +++ b/patches/server/0051-Use-UserCache-for-player-heads.patch @@ -5,20 +5,20 @@ Subject: [PATCH] Use UserCache for player heads diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaSkull.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaSkull.java -index f6a53ac07ff2decf4bcd35d1a9d7352965f75e7f..a36fcd9bfcbd2b37d7cf40b32abc0aea2761ce15 100644 +index 43609c99347c2e3e6ee9a1b8926b32b458781fba..7181d81c231908f208b48a29f918136cb143f476 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaSkull.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaSkull.java -@@ -177,7 +177,13 @@ class CraftMetaSkull extends CraftMetaItem implements SkullMeta { +@@ -172,7 +172,13 @@ class CraftMetaSkull extends CraftMetaItem implements SkullMeta { if (name == null) { this.setProfile(null); } else { -- this.setProfile(new GameProfile(Util.NIL_UUID, name)); +- this.setProfile(new ResolvableProfile(new GameProfile(Util.NIL_UUID, name))); + // Paper start - Use Online Players Skull + GameProfile newProfile = null; + net.minecraft.server.level.ServerPlayer player = net.minecraft.server.MinecraftServer.getServer().getPlayerList().getPlayerByName(name); + if (player != null) newProfile = player.getGameProfile(); + if (newProfile == null) newProfile = new GameProfile(Util.NIL_UUID, name); -+ this.setProfile(newProfile); ++ this.setProfile(new ResolvableProfile(newProfile)); + // Paper end } diff --git a/patches/server/0059-Player-Tab-List-and-Title-APIs.patch b/patches/server/0059-Player-Tab-List-and-Title-APIs.patch index db2fa8856..93c3f6715 100644 --- a/patches/server/0059-Player-Tab-List-and-Title-APIs.patch +++ b/patches/server/0059-Player-Tab-List-and-Title-APIs.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Player Tab List and Title APIs diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 68df6270f7d08cde78235749950e05bf60c1641c..ef3f1d00a595fd1fb7297d7ab96e791acbcbbed6 100644 +index 9751cace64d9ad2b8b55080b13834e8ccb056b42..951b89ced33b2a12dff90e32201643bee64962e1 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -386,6 +386,98 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -388,6 +388,98 @@ public class CraftPlayer extends CraftHumanEntity implements Player { } } diff --git a/patches/server/0064-Add-methods-for-working-with-arrows-stuck-in-living-.patch b/patches/server/0064-Add-methods-for-working-with-arrows-stuck-in-living-.patch index ddf3e716b..626a91f8d 100644 --- a/patches/server/0064-Add-methods-for-working-with-arrows-stuck-in-living-.patch +++ b/patches/server/0064-Add-methods-for-working-with-arrows-stuck-in-living-.patch @@ -7,7 +7,7 @@ Upstream added methods for this, original methods are now deprecated diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index e6c68fd9a5fcd374cd7feca081189c9ba9225743..c36e4c1802e304853320576e0521dbc53cd25425 100644 +index 812a4db4a91b887ef61b3ead9fa781561e6039ce..238ec25cc3109659d524fcc1de48afcd5f59552b 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java @@ -283,10 +283,29 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { @@ -41,7 +41,7 @@ index e6c68fd9a5fcd374cd7feca081189c9ba9225743..c36e4c1802e304853320576e0521dbc5 @Override public void damage(double amount) { -@@ -802,4 +821,16 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { +@@ -807,4 +826,16 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { this.getHandle().persistentInvisibility = invisible; this.getHandle().setSharedFlag(5, invisible); } diff --git a/patches/server/0066-Complete-resource-pack-API.patch b/patches/server/0066-Complete-resource-pack-API.patch index 02e8bb2c5..64768be86 100644 --- a/patches/server/0066-Complete-resource-pack-API.patch +++ b/patches/server/0066-Complete-resource-pack-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Complete resource pack API diff --git a/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java -index 678f12679985c6fa9effe8beec306d95d5e0bdac..8520f0f2b4b4e758b2e2fae206b7fd818a6fa14f 100644 +index b2bddc6183204b9f519549073e38741e1a9322c4..9bfdcdf427f7c0689d346d17942b5902a9138a4e 100644 --- a/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java -@@ -202,7 +202,11 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack +@@ -207,7 +207,11 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack callback.packEventReceived(packet.id(), net.kyori.adventure.resource.ResourcePackStatus.valueOf(packet.action().name()), this.getCraftPlayer()); } // Paper end @@ -22,7 +22,7 @@ index 678f12679985c6fa9effe8beec306d95d5e0bdac..8520f0f2b4b4e758b2e2fae206b7fd81 } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index ef3f1d00a595fd1fb7297d7ab96e791acbcbbed6..174c86a7213ecf3c8dc03aeaf55c56a4c4ce55ad 100644 +index 951b89ced33b2a12dff90e32201643bee64962e1..a19e1c7821c6abfa4288d8a16e30b2160be742f5 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -208,6 +208,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0068-Allow-Reloading-of-Custom-Permissions.patch b/patches/server/0068-Allow-Reloading-of-Custom-Permissions.patch index b3e1413c0..fcc08616d 100644 --- a/patches/server/0068-Allow-Reloading-of-Custom-Permissions.patch +++ b/patches/server/0068-Allow-Reloading-of-Custom-Permissions.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Allow Reloading of Custom Permissions https://github.com/PaperMC/Paper/issues/49 diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index da2e0bb591468e7940f057a583ce166abc79d399..99571e69aabbbfb0e439a42d113c206decb1377b 100644 +index c8d8161bc8558be20583ca9e68611ea26e61deb0..ca2a17db0713fdb332549a76bee7e56502f96e56 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -2793,5 +2793,23 @@ public final class CraftServer implements Server { +@@ -2790,5 +2790,23 @@ public final class CraftServer implements Server { } return this.adventure$audiences; } diff --git a/patches/server/0070-Handle-Item-Meta-Inconsistencies.patch b/patches/server/0070-Handle-Item-Meta-Inconsistencies.patch index 00c91ac5e..29c426b5d 100644 --- a/patches/server/0070-Handle-Item-Meta-Inconsistencies.patch +++ b/patches/server/0070-Handle-Item-Meta-Inconsistencies.patch @@ -263,10 +263,10 @@ index 7ae3cdb80335cbeb0ff695eb719a170651586722..97c40582bca095532fff9a81515f38ea + } diff --git a/src/main/java/org/bukkit/craftbukkit/profile/CraftPlayerProfile.java b/src/main/java/org/bukkit/craftbukkit/profile/CraftPlayerProfile.java -index 358af0121ce3d87a9f51da2bae0699034c1560b4..94cae8f3c13d0afcbe97478fba34ff4f12f8c7ee 100644 +index e7deba518b8a3df9e642a1bcd7b6642c3dc7583b..26a7c2d37e6a8284ab444a9edad967bdcad1e5a3 100644 --- a/src/main/java/org/bukkit/craftbukkit/profile/CraftPlayerProfile.java +++ b/src/main/java/org/bukkit/craftbukkit/profile/CraftPlayerProfile.java -@@ -37,6 +37,17 @@ public final class CraftPlayerProfile implements PlayerProfile { +@@ -40,6 +40,17 @@ public final class CraftPlayerProfile implements PlayerProfile { boolean isValidSkullProfile = (gameProfile.getName() != null) || gameProfile.getProperties().containsKey(CraftPlayerTextures.PROPERTY_NAME); Preconditions.checkArgument(isValidSkullProfile, "The skull profile is missing a name or textures!"); @@ -284,16 +284,16 @@ index 358af0121ce3d87a9f51da2bae0699034c1560b4..94cae8f3c13d0afcbe97478fba34ff4f return gameProfile; } -@@ -53,6 +64,8 @@ public final class CraftPlayerProfile implements PlayerProfile { - - public CraftPlayerProfile(UUID uniqueId, String name) { - Preconditions.checkArgument((uniqueId != null) || !StringUtils.isBlank(name), "uniqueId is null or name is blank"); +@@ -67,6 +78,8 @@ public final class CraftPlayerProfile implements PlayerProfile { + if (applyPreconditions) { + Preconditions.checkArgument((uniqueId != null) || !StringUtils.isBlank(name), "uniqueId is null or name is blank"); + } + Preconditions.checkArgument(name == null || name.length() <= 16, "The name of the profile is longer than 16 characters"); // Paper - Validate + Preconditions.checkArgument(name == null || net.minecraft.util.StringUtil.isValidPlayerName(name), "The name of the profile contains invalid characters: %s", name); // Paper - Validate - this.uniqueId = (uniqueId == null) ? Util.NIL_UUID : uniqueId; - this.name = (name == null) ? "" : name; + this.uniqueId = uniqueId; + this.name = name; } -@@ -89,6 +102,7 @@ public final class CraftPlayerProfile implements PlayerProfile { +@@ -114,6 +127,7 @@ public final class CraftPlayerProfile implements PlayerProfile { // Assert: (property == null) || property.getName().equals(propertyName) this.removeProperty(propertyName); if (property != null) { diff --git a/patches/server/0073-Custom-replacement-for-eaten-items.patch b/patches/server/0073-Custom-replacement-for-eaten-items.patch index ad90d60cf..c7a07a435 100644 --- a/patches/server/0073-Custom-replacement-for-eaten-items.patch +++ b/patches/server/0073-Custom-replacement-for-eaten-items.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Custom replacement for eaten items diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index ba194f42217f1176ac08123d3bb5cb24e1a6c119..e7b308ba4a253b270aebebd19e2671514c5357ca 100644 +index a5f7289158623c8fb9fd02beecc2ce9f2057a00c..b8a69688bcc69dff11e4bceb06ab435bfc6b3fc9 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -3858,10 +3858,11 @@ public abstract class LivingEntity extends Entity implements Attackable { @@ -13,7 +13,7 @@ index ba194f42217f1176ac08123d3bb5cb24e1a6c119..e7b308ba4a253b270aebebd19e267151 // CraftBukkit start - fire PlayerItemConsumeEvent ItemStack itemstack; + PlayerItemConsumeEvent event = null; // Paper - if (this instanceof ServerPlayer) { + if (this instanceof ServerPlayer entityPlayer) { org.bukkit.inventory.ItemStack craftItem = CraftItemStack.asBukkitCopy(this.useItem); org.bukkit.inventory.EquipmentSlot hand = org.bukkit.craftbukkit.CraftEquipmentSlot.getHand(enumhand); - PlayerItemConsumeEvent event = new PlayerItemConsumeEvent((Player) this.getBukkitEntity(), craftItem, hand); @@ -21,7 +21,7 @@ index ba194f42217f1176ac08123d3bb5cb24e1a6c119..e7b308ba4a253b270aebebd19e267151 this.level().getCraftServer().getPluginManager().callEvent(event); if (event.isCancelled()) { -@@ -3875,6 +3876,12 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -3878,6 +3879,12 @@ public abstract class LivingEntity extends Entity implements Attackable { } else { itemstack = this.useItem.finishUsingItem(this.level(), this); } @@ -34,7 +34,7 @@ index ba194f42217f1176ac08123d3bb5cb24e1a6c119..e7b308ba4a253b270aebebd19e267151 // CraftBukkit end if (itemstack != this.useItem) { -@@ -3882,6 +3889,11 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -3885,6 +3892,11 @@ public abstract class LivingEntity extends Entity implements Attackable { } this.stopUsingItem(); diff --git a/patches/server/0110-Cache-user-authenticator-threads.patch b/patches/server/0110-Cache-user-authenticator-threads.patch index 27f8fcc1f..f16083a26 100644 --- a/patches/server/0110-Cache-user-authenticator-threads.patch +++ b/patches/server/0110-Cache-user-authenticator-threads.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Cache user authenticator threads diff --git a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java -index 851e4bdf1739736fd193786a6541ffb341525dcb..6b490eb5b14cb2d3174aff79d1144c87665c7d38 100644 +index b2f7c76207f2dc0c62f608f21aba4b531f8f523f..e65c582635317b9f8a1af4e6f6a5fb916f73cc35 100644 --- a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java -@@ -71,6 +71,7 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, +@@ -76,6 +76,7 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, // CraftBukkit end private static final AtomicInteger UNIQUE_THREAD_ID = new AtomicInteger(0); static final Logger LOGGER = LogUtils.getLogger(); @@ -16,7 +16,7 @@ index 851e4bdf1739736fd193786a6541ffb341525dcb..6b490eb5b14cb2d3174aff79d1144c87 private static final int MAX_TICKS_BEFORE_LOGIN = 600; private final byte[] challenge; final MinecraftServer server; -@@ -169,7 +170,8 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, +@@ -174,7 +175,8 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, this.connection.send(new ClientboundHelloPacket("", this.server.getKeyPair().getPublic().getEncoded(), this.challenge, true)); } else { // CraftBukkit start @@ -26,7 +26,7 @@ index 851e4bdf1739736fd193786a6541ffb341525dcb..6b490eb5b14cb2d3174aff79d1144c87 @Override public void run() { -@@ -184,10 +186,8 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, +@@ -189,10 +191,8 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, ServerLoginPacketListenerImpl.this.server.server.getLogger().log(java.util.logging.Level.WARNING, "Exception verifying " + ServerLoginPacketListenerImpl.this.requestedUsername, ex); } } @@ -39,7 +39,7 @@ index 851e4bdf1739736fd193786a6541ffb341525dcb..6b490eb5b14cb2d3174aff79d1144c87 // CraftBukkit end } -@@ -266,7 +266,8 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, +@@ -271,7 +271,8 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, throw new IllegalStateException("Protocol error", cryptographyexception); } @@ -49,7 +49,7 @@ index 851e4bdf1739736fd193786a6541ffb341525dcb..6b490eb5b14cb2d3174aff79d1144c87 public void run() { String s1 = (String) Objects.requireNonNull(ServerLoginPacketListenerImpl.this.requestedUsername, "Player name not initialized"); -@@ -314,10 +315,8 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, +@@ -319,10 +320,8 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, return ServerLoginPacketListenerImpl.this.server.getPreventProxyConnections() && socketaddress instanceof InetSocketAddress ? ((InetSocketAddress) socketaddress).getAddress() : null; } diff --git a/patches/server/0111-Allow-Reloading-of-Command-Aliases.patch b/patches/server/0111-Allow-Reloading-of-Command-Aliases.patch index c2d729c66..c9a7a105f 100644 --- a/patches/server/0111-Allow-Reloading-of-Command-Aliases.patch +++ b/patches/server/0111-Allow-Reloading-of-Command-Aliases.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Allow Reloading of Command Aliases Reload the aliases stored in commands.yml diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index ff807bfe89708d9c680b84eda902b49f3167f3a4..eb12f17b58256489717a0462964b1cef5bc3624b 100644 +index 20076b59ed7433cc280e2574a09e8db1d58eb027..67805fe23d91961b036089674e4f6202fad3c505 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -2819,5 +2819,24 @@ public final class CraftServer implements Server { +@@ -2816,5 +2816,24 @@ public final class CraftServer implements Server { DefaultPermissions.registerCorePermissions(); CraftDefaultPermissions.registerCorePermissions(); } diff --git a/patches/server/0119-String-based-Action-Bar-API.patch b/patches/server/0119-String-based-Action-Bar-API.patch index b4a1ec659..31024a0f8 100644 --- a/patches/server/0119-String-based-Action-Bar-API.patch +++ b/patches/server/0119-String-based-Action-Bar-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] String based Action Bar API diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index c399264ccffe646be10b3f13ebe0c0103d97f62c..d471e9370fdbcbce5357e52e8ea2a10c196cd33d 100644 +index cdcb2fb6229277872db36b6a4c439080f083f64c..258808bcb6f853c5679476305074823a7bb8b379 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -388,6 +388,28 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -390,6 +390,28 @@ public class CraftPlayer extends CraftHumanEntity implements Player { } // Paper start diff --git a/patches/server/0120-Properly-fix-item-duplication-bug.patch b/patches/server/0120-Properly-fix-item-duplication-bug.patch index 95bf2bd4b..9fb45d288 100644 --- a/patches/server/0120-Properly-fix-item-duplication-bug.patch +++ b/patches/server/0120-Properly-fix-item-duplication-bug.patch @@ -19,10 +19,10 @@ index 984dc7f7f7315b8a8cdb9744ef8454a330888ba7..f067b10e13f01e751fc4ebf088740c7d @Override diff --git a/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java -index 8520f0f2b4b4e758b2e2fae206b7fd818a6fa14f..73d40f768b6882062656cba30acc5f86f26d1a96 100644 +index 9bfdcdf427f7c0689d346d17942b5902a9138a4e..5f3b3f03936cfe23ed792c57d342a9932ea2e962 100644 --- a/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java -@@ -179,7 +179,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack +@@ -184,7 +184,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack } public final boolean isDisconnected() { diff --git a/patches/server/0130-Add-configuration-option-to-prevent-player-names-fro.patch b/patches/server/0130-Add-configuration-option-to-prevent-player-names-fro.patch index eeb924593..133565490 100644 --- a/patches/server/0130-Add-configuration-option-to-prevent-player-names-fro.patch +++ b/patches/server/0130-Add-configuration-option-to-prevent-player-names-fro.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Add configuration option to prevent player names from being diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index eb12f17b58256489717a0462964b1cef5bc3624b..1fd2f6053e660674baa239f142a720d59e64c776 100644 +index 67805fe23d91961b036089674e4f6202fad3c505..16110e41480ad4508e56c196c551debdf0e96811 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -2838,5 +2838,10 @@ public final class CraftServer implements Server { +@@ -2835,5 +2835,10 @@ public final class CraftServer implements Server { commandMap.registerServerAliases(); return true; } diff --git a/patches/server/0135-Do-not-submit-profile-lookups-to-worldgen-threads.patch b/patches/server/0135-Do-not-submit-profile-lookups-to-worldgen-threads.patch index 57ef5ff7b..415b98a1a 100644 --- a/patches/server/0135-Do-not-submit-profile-lookups-to-worldgen-threads.patch +++ b/patches/server/0135-Do-not-submit-profile-lookups-to-worldgen-threads.patch @@ -63,10 +63,10 @@ index f720c5ef71edd65de76bcac9632173184576ea9e..c278caa030ceccec8e2721068848a34b public static void clear() { diff --git a/src/main/java/org/bukkit/craftbukkit/profile/CraftPlayerProfile.java b/src/main/java/org/bukkit/craftbukkit/profile/CraftPlayerProfile.java -index 94cae8f3c13d0afcbe97478fba34ff4f12f8c7ee..c49db689827b20ad211f06b9bad7062c8ef82c68 100644 +index 56a71862eac5c45fde2e1d9e96e763d9dbf24cc4..0c250e5b0bd3232d829b0c028f237e6bf5fd334d 100644 --- a/src/main/java/org/bukkit/craftbukkit/profile/CraftPlayerProfile.java +++ b/src/main/java/org/bukkit/craftbukkit/profile/CraftPlayerProfile.java -@@ -136,7 +136,7 @@ public final class CraftPlayerProfile implements PlayerProfile { +@@ -161,7 +161,7 @@ public final class CraftPlayerProfile implements PlayerProfile { @Override public CompletableFuture update() { diff --git a/patches/server/0136-Basic-PlayerProfile-API.patch b/patches/server/0136-Basic-PlayerProfile-API.patch index c6ad6df56..5937b4427 100644 --- a/patches/server/0136-Basic-PlayerProfile-API.patch +++ b/patches/server/0136-Basic-PlayerProfile-API.patch @@ -16,10 +16,10 @@ public org.bukkit.craftbukkit.profile.CraftPlayerProfile setProperty(Ljava/lang/ diff --git a/src/main/java/com/destroystokyo/paper/profile/CraftPlayerProfile.java b/src/main/java/com/destroystokyo/paper/profile/CraftPlayerProfile.java new file mode 100644 -index 0000000000000000000000000000000000000000..cbe2789f8a055550dd7840a7bed980efd65eb9a1 +index 0000000000000000000000000000000000000000..23181027bb077417655913c29377bed720c9e9c1 --- /dev/null +++ b/src/main/java/com/destroystokyo/paper/profile/CraftPlayerProfile.java -@@ -0,0 +1,422 @@ +@@ -0,0 +1,449 @@ +package com.destroystokyo.paper.profile; + +import com.google.common.base.Preconditions; @@ -34,6 +34,7 @@ index 0000000000000000000000000000000000000000..cbe2789f8a055550dd7840a7bed980ef +import net.minecraft.server.MinecraftServer; +import net.minecraft.server.players.GameProfileCache; +import net.minecraft.util.StringUtil; ++import net.minecraft.world.item.component.ResolvableProfile; +import org.apache.commons.lang3.StringUtils; +import org.apache.commons.lang3.Validate; +import org.bukkit.configuration.serialization.SerializableAs; @@ -52,6 +53,8 @@ index 0000000000000000000000000000000000000000..cbe2789f8a055550dd7840a7bed980ef +@SerializableAs("PlayerProfile") +public class CraftPlayerProfile implements PlayerProfile, SharedPlayerProfile { + ++ private boolean emptyName; ++ private boolean emptyUUID; + private GameProfile profile; + private final PropertySet properties = new PropertySet(); + @@ -61,6 +64,8 @@ index 0000000000000000000000000000000000000000..cbe2789f8a055550dd7840a7bed980ef + + public CraftPlayerProfile(UUID id, String name) { + this.profile = createAuthLibProfile(id, name); ++ this.emptyName = name == null; ++ this.emptyUUID = id == null; + } + + public CraftPlayerProfile(GameProfile profile) { @@ -68,6 +73,11 @@ index 0000000000000000000000000000000000000000..cbe2789f8a055550dd7840a7bed980ef + this.profile = profile; + } + ++ public CraftPlayerProfile(ResolvableProfile resolvableProfile) { ++ this(resolvableProfile.id().orElse(null), resolvableProfile.name().orElse(null)); ++ copyProfileProperties(resolvableProfile.gameProfile(), this.profile); ++ } ++ + @Override + public boolean hasProperty(String property) { + return profile.getProperties().containsKey(property); @@ -106,7 +116,7 @@ index 0000000000000000000000000000000000000000..cbe2789f8a055550dd7840a7bed980ef + @Nullable + @Override + public UUID getId() { -+ return profile.getId().equals(Util.NIL_UUID) ? null : profile.getId(); ++ return this.emptyUUID ? null : this.profile.getId(); + } + + @Override @@ -116,6 +126,7 @@ index 0000000000000000000000000000000000000000..cbe2789f8a055550dd7840a7bed980ef + final UUID previousId = this.getId(); + this.profile = createAuthLibProfile(uuid, previousProfile.getName()); + copyProfileProperties(previousProfile, this.profile); ++ this.emptyUUID = uuid == null; + return previousId; + } + @@ -127,7 +138,7 @@ index 0000000000000000000000000000000000000000..cbe2789f8a055550dd7840a7bed980ef + @Nullable + @Override + public String getName() { -+ return profile.getName(); ++ return this.emptyName ? null : this.profile.getName(); + } + + @Override @@ -136,6 +147,7 @@ index 0000000000000000000000000000000000000000..cbe2789f8a055550dd7840a7bed980ef + GameProfile prev = this.profile; + this.profile = createAuthLibProfile(prev.getId(), name); + copyProfileProperties(prev, this.profile); ++ this.emptyName = name == null; + return prev.getName(); + } + @@ -184,6 +196,15 @@ index 0000000000000000000000000000000000000000..cbe2789f8a055550dd7840a7bed980ef + } + + @Override ++ public @NotNull ResolvableProfile buildResolvableProfile() { ++ if (this.emptyName || this.emptyUUID) { ++ return new ResolvableProfile(this.emptyName ? Optional.empty() : Optional.of(this.profile.getName()), this.emptyUUID ? Optional.empty() : Optional.of(this.profile.getId()), this.profile.getProperties()); ++ } else { ++ return new ResolvableProfile(this.buildGameProfile()); ++ } ++ } ++ ++ @Override + public CraftPlayerProfile clone() { + CraftPlayerProfile clone = new CraftPlayerProfile(this.getId(), this.getName()); + clone.setProperties(getProperties()); @@ -251,6 +272,7 @@ index 0000000000000000000000000000000000000000..cbe2789f8a055550dd7840a7bed980ef + public boolean complete(boolean textures) { + return complete(textures, GlobalConfiguration.get().proxies.isProxyOnlineMode()); + } ++ + public boolean complete(boolean textures, boolean onlineMode) { + if (this.isComplete() && (!textures || hasTextures())) { // Don't do lookup if we already have everything + return true; @@ -328,6 +350,10 @@ index 0000000000000000000000000000000000000000..cbe2789f8a055550dd7840a7bed980ef + return craft.getGameProfile(); + } + ++ public static ResolvableProfile asResolvableProfileCopy(PlayerProfile profile) { ++ return ((SharedPlayerProfile) profile).buildResolvableProfile(); ++ } ++ + @Override + public @NotNull Map serialize() { + Map map = new LinkedHashMap<>(); @@ -368,10 +394,16 @@ index 0000000000000000000000000000000000000000..cbe2789f8a055550dd7840a7bed980ef + } + + @Override -+ public boolean equals(Object obj) { -+ if (this == obj) return true; -+ if (!(obj instanceof CraftPlayerProfile otherProfile)) return false; -+ return Objects.equals(this.profile, otherProfile.profile); ++ public boolean equals(final Object o) { ++ if (this == o) return true; ++ if (o == null || this.getClass() != o.getClass()) return false; ++ final CraftPlayerProfile that = (CraftPlayerProfile) o; ++ return this.emptyName == that.emptyName && this.emptyUUID == that.emptyUUID && Objects.equals(this.profile, that.profile); ++ } ++ ++ @Override ++ public int hashCode() { ++ return Objects.hash(this.emptyName, this.emptyUUID, this.profile); + } + + @Override @@ -382,11 +414,6 @@ index 0000000000000000000000000000000000000000..cbe2789f8a055550dd7840a7bed980ef + "]"; + } + -+ @Override -+ public int hashCode() { -+ return this.profile.hashCode(); -+ } -+ + private class PropertySet extends AbstractSet { + + @Override @@ -531,14 +558,15 @@ index 0000000000000000000000000000000000000000..985e6fc43a0946943847e0c283426242 +} diff --git a/src/main/java/com/destroystokyo/paper/profile/SharedPlayerProfile.java b/src/main/java/com/destroystokyo/paper/profile/SharedPlayerProfile.java new file mode 100644 -index 0000000000000000000000000000000000000000..7ac27392a8647ef7d0dc78efe78703e993885017 +index 0000000000000000000000000000000000000000..332700f84c5587e47a4d2056bfbb5413de97e9f2 --- /dev/null +++ b/src/main/java/com/destroystokyo/paper/profile/SharedPlayerProfile.java -@@ -0,0 +1,23 @@ +@@ -0,0 +1,26 @@ +package com.destroystokyo.paper.profile; + +import com.mojang.authlib.GameProfile; +import com.mojang.authlib.properties.Property; ++import net.minecraft.world.item.component.ResolvableProfile; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + @@ -557,6 +585,8 @@ index 0000000000000000000000000000000000000000..7ac27392a8647ef7d0dc78efe78703e9 + @Nullable void setProperty(@NotNull String propertyName, @Nullable Property property); + + @NotNull GameProfile buildGameProfile(); ++ ++ @NotNull ResolvableProfile buildResolvableProfile(); +} diff --git a/src/main/java/net/minecraft/server/Main.java b/src/main/java/net/minecraft/server/Main.java index 6afede80c10503a261d0f735c351d943597be9ff..993296f9c2457809bd6b844c309895f417eb42a5 100644 @@ -594,7 +624,7 @@ index 416b26c2ab62b29d640169166980e398d5824b14..774d81c702edb76a2f6184d4dc53687d String s1 = name.toLowerCase(Locale.ROOT); GameProfileCache.GameProfileInfo usercache_usercacheentry = (GameProfileCache.GameProfileInfo) this.profilesByName.get(s1); diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 1fd2f6053e660674baa239f142a720d59e64c776..5ab2836f14e1a7482e7136004507d66c4abb4bdd 100644 +index 16110e41480ad4508e56c196c551debdf0e96811..c5618c1a773442c9c016b67ea64d83f8efcb3b89 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -262,6 +262,9 @@ import org.yaml.snakeyaml.error.MarkedYAMLException; @@ -615,7 +645,7 @@ index 1fd2f6053e660674baa239f142a720d59e64c776..5ab2836f14e1a7482e7136004507d66c CraftItemFactory.instance(); CraftEntityFactory.instance(); } -@@ -2843,5 +2847,39 @@ public final class CraftServer implements Server { +@@ -2840,5 +2844,39 @@ public final class CraftServer implements Server { public boolean suggestPlayerNamesWhenNullTabCompletions() { return io.papermc.paper.configuration.GlobalConfiguration.get().commands.suggestPlayerNamesWhenNullTabCompletions; } @@ -656,11 +686,11 @@ index 1fd2f6053e660674baa239f142a720d59e64c776..5ab2836f14e1a7482e7136004507d66c // Paper end } diff --git a/src/main/java/org/bukkit/craftbukkit/profile/CraftPlayerProfile.java b/src/main/java/org/bukkit/craftbukkit/profile/CraftPlayerProfile.java -index c49db689827b20ad211f06b9bad7062c8ef82c68..ce30a8853d5095ce5bf1ec902b41d27db9e35b4f 100644 +index 210fdad5f2041368fc359b275f1cbf05b70b6989..d9cc76d7e60001957c0f59fdc32d016f3589aa08 100644 --- a/src/main/java/org/bukkit/craftbukkit/profile/CraftPlayerProfile.java +++ b/src/main/java/org/bukkit/craftbukkit/profile/CraftPlayerProfile.java -@@ -28,7 +28,7 @@ import org.bukkit.profile.PlayerProfile; - import org.bukkit.profile.PlayerTextures; +@@ -31,7 +31,7 @@ import org.bukkit.profile.PlayerTextures; + import org.jetbrains.annotations.ApiStatus; @SerializableAs("PlayerProfile") -public final class CraftPlayerProfile implements PlayerProfile { @@ -668,7 +698,7 @@ index c49db689827b20ad211f06b9bad7062c8ef82c68..ce30a8853d5095ce5bf1ec902b41d27d @Nonnull public static GameProfile validateSkullProfile(@Nonnull GameProfile gameProfile) { -@@ -107,8 +107,10 @@ public final class CraftPlayerProfile implements PlayerProfile { +@@ -132,8 +132,10 @@ public final class CraftPlayerProfile implements PlayerProfile { } } @@ -681,16 +711,16 @@ index c49db689827b20ad211f06b9bad7062c8ef82c68..ce30a8853d5095ce5bf1ec902b41d27d } void rebuildDirtyProperties() { -@@ -251,6 +253,7 @@ public final class CraftPlayerProfile implements PlayerProfile { +@@ -283,6 +285,7 @@ public final class CraftPlayerProfile implements PlayerProfile { @Override public Map serialize() { + // Paper - diff on change Map map = new LinkedHashMap<>(); - if (this.getUniqueId() != null) { - map.put("uniqueId", this.getUniqueId().toString()); -@@ -266,10 +269,12 @@ public final class CraftPlayerProfile implements PlayerProfile { - }); + if (this.uniqueId != null) { + map.put("uniqueId", this.uniqueId.toString()); +@@ -296,10 +299,12 @@ public final class CraftPlayerProfile implements PlayerProfile { + this.properties.forEach((propertyName, property) -> propertiesData.add(CraftProfileProperty.serialize(property))); map.put("properties", propertiesData); } + // Paper - diff on change @@ -702,7 +732,7 @@ index c49db689827b20ad211f06b9bad7062c8ef82c68..ce30a8853d5095ce5bf1ec902b41d27d UUID uniqueId = ConfigSerializationUtil.getUuid(map, "uniqueId", true); String name = ConfigSerializationUtil.getString(map, "name", true); -@@ -283,7 +288,7 @@ public final class CraftPlayerProfile implements PlayerProfile { +@@ -313,7 +318,7 @@ public final class CraftPlayerProfile implements PlayerProfile { profile.properties.put(property.name(), property); } } diff --git a/patches/server/0138-Shoulder-Entities-Release-API.patch b/patches/server/0138-Shoulder-Entities-Release-API.patch index b0762a454..c169c6edc 100644 --- a/patches/server/0138-Shoulder-Entities-Release-API.patch +++ b/patches/server/0138-Shoulder-Entities-Release-API.patch @@ -59,10 +59,10 @@ index 7995a4626b3ed68234d468418408b9a8e179b6f6..362d75522aaa721e9fb1d12a149d0efe @Override public abstract boolean isSpectator(); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java -index 0c94a1094a3af0232bb2957708fa997933db621b..9574d5e0ee9109155f16861d0c46e45ef4c1d1a8 100644 +index a93895a6e656c25e819354ecf5c73ff4bae83675..f0efea03165039525a98dc30c34d876972d9fe71 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java -@@ -512,6 +512,32 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity { +@@ -520,6 +520,32 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity { this.getHandle().getCooldowns().addCooldown(CraftItemType.bukkitToMinecraft(material), ticks); } diff --git a/patches/server/0140-Block-player-logins-during-server-shutdown.patch b/patches/server/0140-Block-player-logins-during-server-shutdown.patch index 0dc0c7b69..5609f8375 100644 --- a/patches/server/0140-Block-player-logins-during-server-shutdown.patch +++ b/patches/server/0140-Block-player-logins-during-server-shutdown.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Block player logins during server shutdown diff --git a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java -index 6b490eb5b14cb2d3174aff79d1144c87665c7d38..556a7d082f0c33606a0231aa1b52d0c12d57035c 100644 +index e65c582635317b9f8a1af4e6f6a5fb916f73cc35..0c2137dda44f2341bffe0928dc77be8ca6371bc9 100644 --- a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java -@@ -97,6 +97,12 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, +@@ -102,6 +102,12 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, @Override public void tick() { diff --git a/patches/server/0150-Allow-specifying-a-custom-authentication-servers-dow.patch b/patches/server/0150-Allow-specifying-a-custom-authentication-servers-dow.patch index adf56dbfa..062c5f0c8 100644 --- a/patches/server/0150-Allow-specifying-a-custom-authentication-servers-dow.patch +++ b/patches/server/0150-Allow-specifying-a-custom-authentication-servers-dow.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Allow specifying a custom "authentication servers down" kick diff --git a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java -index 556a7d082f0c33606a0231aa1b52d0c12d57035c..d1a05c93ba7b9d1cb3427a4a90346b4364784846 100644 +index 0c2137dda44f2341bffe0928dc77be8ca6371bc9..0d995abe33f41b96823d3e5a51e33f3dcb11d564 100644 --- a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java -@@ -303,7 +303,7 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, +@@ -308,7 +308,7 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, ServerLoginPacketListenerImpl.LOGGER.warn("Authentication servers are down but will let them in anyway!"); ServerLoginPacketListenerImpl.this.startClientVerification(ServerLoginPacketListenerImpl.this.createOfflineProfile(s1)); // Spigot } else { diff --git a/patches/server/0152-handle-ServerboundKeepAlivePacket-async.patch b/patches/server/0152-handle-ServerboundKeepAlivePacket-async.patch index 4bf90ddb2..f3e7e73c5 100644 --- a/patches/server/0152-handle-ServerboundKeepAlivePacket-async.patch +++ b/patches/server/0152-handle-ServerboundKeepAlivePacket-async.patch @@ -15,10 +15,10 @@ also adding some additional logging in order to help work out what is causing random disconnections for clients. diff --git a/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java -index 73d40f768b6882062656cba30acc5f86f26d1a96..07d2e60bcd7d1f3ba2f8005ec496561b3648ae86 100644 +index 5f3b3f03936cfe23ed792c57d342a9932ea2e962..5e5e669f564c6130d1dea004ae8810939954da98 100644 --- a/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java -@@ -117,14 +117,18 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack +@@ -122,14 +122,18 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack @Override public void handleKeepAlive(ServerboundKeepAlivePacket packet) { diff --git a/patches/server/0153-Expose-client-protocol-version-and-virtual-host.patch b/patches/server/0153-Expose-client-protocol-version-and-virtual-host.patch index 08669dde9..9dfb157c0 100644 --- a/patches/server/0153-Expose-client-protocol-version-and-virtual-host.patch +++ b/patches/server/0153-Expose-client-protocol-version-and-virtual-host.patch @@ -90,10 +90,10 @@ index 7ae4279768b70a4fdc8f4438898871a17c8fe402..582bbb376c75ab5bf737f3015ce8ad45 private void beginLogin(ClientIntentionPacket packet, boolean transfer) { diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index d471e9370fdbcbce5357e52e8ea2a10c196cd33d..f53504221e660bfe86220a8cc1ae28750794f0cf 100644 +index 258808bcb6f853c5679476305074823a7bb8b379..d099b898208392f380eb9ccd49bf84d54c194e67 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -334,6 +334,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -336,6 +336,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player { this.getHandle().transferCookieConnection.sendPacket(new ClientboundTransferPacket(host, port)); } diff --git a/patches/server/0154-revert-serverside-behavior-of-keepalives.patch b/patches/server/0154-revert-serverside-behavior-of-keepalives.patch index 349786b31..ee6e8a16c 100644 --- a/patches/server/0154-revert-serverside-behavior-of-keepalives.patch +++ b/patches/server/0154-revert-serverside-behavior-of-keepalives.patch @@ -17,10 +17,10 @@ from networking or during connections flood of chunk packets on slower clients, at the cost of dead connections being kept open for longer. diff --git a/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java -index 07d2e60bcd7d1f3ba2f8005ec496561b3648ae86..382920335337c8d0abd8b1f600fddd391249fe21 100644 +index 5e5e669f564c6130d1dea004ae8810939954da98..9b1df397e1d2d8ca04b34012808be2110526f401 100644 --- a/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java -@@ -69,7 +69,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack +@@ -74,7 +74,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack protected final MinecraftServer server; public final Connection connection; // Paper private final boolean transferred; @@ -29,7 +29,7 @@ index 07d2e60bcd7d1f3ba2f8005ec496561b3648ae86..382920335337c8d0abd8b1f600fddd39 private boolean keepAlivePending; private long keepAliveChallenge; private long closedListenerTime; -@@ -77,6 +77,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack +@@ -82,6 +82,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack private int latency; private volatile boolean suspendFlushingOnServerThread = false; public final java.util.Map packCallbacks = new java.util.concurrent.ConcurrentHashMap<>(); // Paper - adventure resource pack callbacks @@ -37,7 +37,7 @@ index 07d2e60bcd7d1f3ba2f8005ec496561b3648ae86..382920335337c8d0abd8b1f600fddd39 public ServerCommonPacketListenerImpl(MinecraftServer minecraftserver, Connection networkmanager, CommonListenerCookie commonlistenercookie, ServerPlayer player) { // CraftBukkit this.server = minecraftserver; -@@ -227,18 +228,22 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack +@@ -232,18 +233,22 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack protected void keepConnectionAlive() { this.server.getProfiler().push("keepAlive"); diff --git a/patches/server/0157-Prevent-logins-from-being-processed-when-the-player-.patch b/patches/server/0157-Prevent-logins-from-being-processed-when-the-player-.patch index d98153e8d..5d453de7b 100644 --- a/patches/server/0157-Prevent-logins-from-being-processed-when-the-player-.patch +++ b/patches/server/0157-Prevent-logins-from-being-processed-when-the-player-.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Prevent logins from being processed when the player has diff --git a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java -index d1a05c93ba7b9d1cb3427a4a90346b4364784846..3bcce44fd8f7964a2f9b0d9c778b995975a8c049 100644 +index 0d995abe33f41b96823d3e5a51e33f3dcb11d564..bfda68254b39f301ba2d3d70beeb35317d262c43 100644 --- a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java -@@ -104,7 +104,9 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, +@@ -109,7 +109,9 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, } // Paper end - Do not allow logins while the server is shutting down if (this.state == ServerLoginPacketListenerImpl.State.VERIFYING) { diff --git a/patches/server/0160-API-to-get-a-BlockState-without-a-snapshot.patch b/patches/server/0160-API-to-get-a-BlockState-without-a-snapshot.patch index b2a5f27dd..07ae92884 100644 --- a/patches/server/0160-API-to-get-a-BlockState-without-a-snapshot.patch +++ b/patches/server/0160-API-to-get-a-BlockState-without-a-snapshot.patch @@ -69,7 +69,7 @@ index a1c1a101aa424e74309f6f4c0a53a6a8db5df441..013298c424025cd88f15d61e50d196f7 public Biome getBiome() { return this.getWorld().getBiome(this.getX(), this.getY(), this.getZ()); diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftBlockEntityState.java b/src/main/java/org/bukkit/craftbukkit/block/CraftBlockEntityState.java -index f8b5595dc92036cc1889c0835f69389c93501fa7..a7bb7d263cb981fcf6dd35a3b32270e89e96945a 100644 +index 9df2da091082071e3461b8900af4879e80cd4d93..1ca25dfdb9ec5c3a4d26b71484e1326e1f50b40d 100644 --- a/src/main/java/org/bukkit/craftbukkit/block/CraftBlockEntityState.java +++ b/src/main/java/org/bukkit/craftbukkit/block/CraftBlockEntityState.java @@ -24,15 +24,26 @@ public class CraftBlockEntityState extends CraftBlockStat @@ -101,7 +101,7 @@ index f8b5595dc92036cc1889c0835f69389c93501fa7..a7bb7d263cb981fcf6dd35a3b32270e8 } protected CraftBlockEntityState(CraftBlockEntityState state, Location location) { -@@ -169,4 +180,11 @@ public class CraftBlockEntityState extends CraftBlockStat +@@ -176,4 +187,11 @@ public class CraftBlockEntityState extends CraftBlockStat public CraftBlockEntityState copy(Location location) { return new CraftBlockEntityState<>(this, location); } diff --git a/patches/server/0165-Add-setPlayerProfile-API-for-Skulls.patch b/patches/server/0165-Add-setPlayerProfile-API-for-Skulls.patch index d8b7b1001..3b0eaf255 100644 --- a/patches/server/0165-Add-setPlayerProfile-API-for-Skulls.patch +++ b/patches/server/0165-Add-setPlayerProfile-API-for-Skulls.patch @@ -7,7 +7,7 @@ This allows you to create already filled textures on Skulls to avoid texture loo which commonly cause rate limit issues with Mojang API diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftSkull.java b/src/main/java/org/bukkit/craftbukkit/block/CraftSkull.java -index 08838e17979b59555adc242ccdd7af7cbf11f9d6..23374a104510025fd8f882361a29825d0bec6ee0 100644 +index 95045d09a3581816770a195db87086c616b843a7..bae6f6132189fc82ec56f0fedee3518a143ed883 100644 --- a/src/main/java/org/bukkit/craftbukkit/block/CraftSkull.java +++ b/src/main/java/org/bukkit/craftbukkit/block/CraftSkull.java @@ -98,7 +98,22 @@ public class CraftSkull extends CraftBlockEntityState implemen @@ -18,13 +18,13 @@ index 08838e17979b59555adc242ccdd7af7cbf11f9d6..23374a104510025fd8f882361a29825d @Override + public void setPlayerProfile(com.destroystokyo.paper.profile.PlayerProfile profile) { + Preconditions.checkNotNull(profile, "profile"); -+ this.profile = com.destroystokyo.paper.profile.CraftPlayerProfile.asAuthlibCopy(profile); ++ this.profile = com.destroystokyo.paper.profile.CraftPlayerProfile.asResolvableProfileCopy(profile); + } + + @javax.annotation.Nullable + @Override + public com.destroystokyo.paper.profile.PlayerProfile getPlayerProfile() { -+ return profile != null ? com.destroystokyo.paper.profile.CraftPlayerProfile.asBukkitCopy(profile) : null; ++ return profile != null ? new com.destroystokyo.paper.profile.CraftPlayerProfile(profile) : null; + } + // Paper end + @@ -42,36 +42,36 @@ index 08838e17979b59555adc242ccdd7af7cbf11f9d6..23374a104510025fd8f882361a29825d if (profile == null) { this.profile = null; } else { -- this.profile = CraftPlayerProfile.validateSkullProfile(((CraftPlayerProfile) profile).buildGameProfile()); -+ this.profile = CraftPlayerProfile.validateSkullProfile(((com.destroystokyo.paper.profile.SharedPlayerProfile) profile).buildGameProfile()); // Paper +- this.profile = new ResolvableProfile(CraftPlayerProfile.validateSkullProfile(((CraftPlayerProfile) profile).buildGameProfile())); ++ this.profile = CraftPlayerProfile.validateSkullProfile(((com.destroystokyo.paper.profile.SharedPlayerProfile) profile).buildResolvableProfile()); // Paper } } diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaSkull.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaSkull.java -index a36fcd9bfcbd2b37d7cf40b32abc0aea2761ce15..d6e161374e0235031128a6ee86d1ffa875ea48aa 100644 +index 7181d81c231908f208b48a29f918136cb143f476..ca714e165e453d1072d083441d8b985290ada75a 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaSkull.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaSkull.java -@@ -153,6 +153,19 @@ class CraftMetaSkull extends CraftMetaItem implements SkullMeta { - return this.hasOwner() ? this.profile.getName() : null; +@@ -148,6 +148,19 @@ class CraftMetaSkull extends CraftMetaItem implements SkullMeta { + return this.hasOwner() ? this.profile.name().orElse(null) : null; } + // Paper start + @Override + public void setPlayerProfile(@org.jetbrains.annotations.Nullable com.destroystokyo.paper.profile.PlayerProfile profile) { -+ setProfile((profile == null) ? null : com.destroystokyo.paper.profile.CraftPlayerProfile.asAuthlibCopy(profile)); ++ setProfile((profile == null) ? null : com.destroystokyo.paper.profile.CraftPlayerProfile.asResolvableProfileCopy(profile)); + } + + @org.jetbrains.annotations.Nullable + @Override + public com.destroystokyo.paper.profile.PlayerProfile getPlayerProfile() { -+ return profile != null ? com.destroystokyo.paper.profile.CraftPlayerProfile.asBukkitCopy(profile) : null; ++ return profile != null ? new com.destroystokyo.paper.profile.CraftPlayerProfile(profile) : null; + } + // Paper end + @Override public OfflinePlayer getOwningPlayer() { if (this.hasOwner()) { -@@ -203,6 +216,7 @@ class CraftMetaSkull extends CraftMetaItem implements SkullMeta { +@@ -198,6 +211,7 @@ class CraftMetaSkull extends CraftMetaItem implements SkullMeta { } @Override @@ -79,24 +79,23 @@ index a36fcd9bfcbd2b37d7cf40b32abc0aea2761ce15..d6e161374e0235031128a6ee86d1ffa8 public PlayerProfile getOwnerProfile() { if (!this.hasOwner()) { return null; -@@ -212,11 +226,12 @@ class CraftMetaSkull extends CraftMetaItem implements SkullMeta { +@@ -207,9 +221,10 @@ class CraftMetaSkull extends CraftMetaItem implements SkullMeta { } @Override + @Deprecated // Paper public void setOwnerProfile(PlayerProfile profile) { - if (profile == null) { - this.setProfile(null); +- if (profile instanceof CraftPlayerProfile craftPlayerProfile) { +- this.setProfile(CraftPlayerProfile.validateSkullProfile(craftPlayerProfile.buildResolvableProfile())); ++ if (profile instanceof final com.destroystokyo.paper.profile.SharedPlayerProfile sharedProfile) { ++ this.setProfile(CraftPlayerProfile.validateSkullProfile(sharedProfile.buildResolvableProfile())); // Paper } else { -- this.setProfile(CraftPlayerProfile.validateSkullProfile(((CraftPlayerProfile) profile).buildGameProfile())); -+ this.setProfile(CraftPlayerProfile.validateSkullProfile(((com.destroystokyo.paper.profile.SharedPlayerProfile) profile).buildGameProfile())); // Paper + this.setProfile(null); } - } - -@@ -271,7 +286,7 @@ class CraftMetaSkull extends CraftMetaItem implements SkullMeta { +@@ -263,7 +278,7 @@ class CraftMetaSkull extends CraftMetaItem implements SkullMeta { super.serialize(builder); - if (this.profile != null) { + if (this.hasOwner()) { - builder.put(CraftMetaSkull.SKULL_OWNER.BUKKIT, new CraftPlayerProfile(this.profile)); + builder.put(CraftMetaSkull.SKULL_OWNER.BUKKIT, new com.destroystokyo.paper.profile.CraftPlayerProfile(this.profile)); // Paper } diff --git a/patches/server/0175-Add-more-fields-to-AsyncPreLoginEvent.patch b/patches/server/0175-Add-more-fields-to-AsyncPreLoginEvent.patch index 4e9f64075..a3e943365 100644 --- a/patches/server/0175-Add-more-fields-to-AsyncPreLoginEvent.patch +++ b/patches/server/0175-Add-more-fields-to-AsyncPreLoginEvent.patch @@ -7,10 +7,10 @@ Co-authored-by: Connor Linfoot Co-authored-by: MCMDEV diff --git a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java -index 3bcce44fd8f7964a2f9b0d9c778b995975a8c049..2d9db1ac80216a509a7590254e422b3c4792e3ec 100644 +index bfda68254b39f301ba2d3d70beeb35317d262c43..30e55f693b963496b85afa32da9c15cacb738836 100644 --- a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java -@@ -186,7 +186,7 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, +@@ -191,7 +191,7 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, try { GameProfile gameprofile = ServerLoginPacketListenerImpl.this.createOfflineProfile(ServerLoginPacketListenerImpl.this.requestedUsername); // Spigot @@ -19,7 +19,7 @@ index 3bcce44fd8f7964a2f9b0d9c778b995975a8c049..2d9db1ac80216a509a7590254e422b3c ServerLoginPacketListenerImpl.LOGGER.info("UUID of player {} is {}", gameprofile.getName(), gameprofile.getId()); ServerLoginPacketListenerImpl.this.startClientVerification(gameprofile); } catch (Exception ex) { -@@ -289,7 +289,7 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, +@@ -294,7 +294,7 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, if (!ServerLoginPacketListenerImpl.this.connection.isConnected()) { return; } @@ -28,7 +28,7 @@ index 3bcce44fd8f7964a2f9b0d9c778b995975a8c049..2d9db1ac80216a509a7590254e422b3c // CraftBukkit end ServerLoginPacketListenerImpl.LOGGER.info("UUID of player {} is {}", gameprofile.getName(), gameprofile.getId()); ServerLoginPacketListenerImpl.this.startClientVerification(gameprofile); -@@ -328,14 +328,23 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, +@@ -333,14 +333,23 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, } // CraftBukkit start @@ -54,7 +54,7 @@ index 3bcce44fd8f7964a2f9b0d9c778b995975a8c049..2d9db1ac80216a509a7590254e422b3c if (PlayerPreLoginEvent.getHandlerList().getRegisteredListeners().length != 0) { final PlayerPreLoginEvent event = new PlayerPreLoginEvent(playerName, address, uniqueId); -@@ -353,14 +362,13 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, +@@ -358,14 +367,13 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, ServerLoginPacketListenerImpl.this.server.processQueue.add(waitable); if (waitable.get() != PlayerPreLoginEvent.Result.ALLOWED) { this.disconnect(io.papermc.paper.adventure.PaperAdventure.asVanilla(event.kickMessage())); // Paper - Adventure diff --git a/patches/server/0176-Player.setPlayerProfile-API.patch b/patches/server/0176-Player.setPlayerProfile-API.patch index 21f5229b1..89d168e8a 100644 --- a/patches/server/0176-Player.setPlayerProfile-API.patch +++ b/patches/server/0176-Player.setPlayerProfile-API.patch @@ -9,7 +9,7 @@ This can be useful for changing name or skins after a player has logged in. public-f net.minecraft.world.entity.player.Player gameProfile diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index ec80a9138260497d0deccf3ade3f44fc849de1d5..72edfb965aca81c2d2442b794b42baa04ec713b3 100644 +index 6cdbd0281e38d7107f239e6e052c08e4ab12b552..0073c6c5433be3193a01257a26c7035e544f37dd 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -1472,7 +1472,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl @@ -22,10 +22,10 @@ index ec80a9138260497d0deccf3ade3f44fc849de1d5..72edfb965aca81c2d2442b794b42baa0 if (Float.isNaN(f)) { f = 0; diff --git a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java -index 2d9db1ac80216a509a7590254e422b3c4792e3ec..b31f00f2f0b7cec59301afe36c9dd7cdc120fc9d 100644 +index 30e55f693b963496b85afa32da9c15cacb738836..636b8aef2348fa4cfe63a9b7d77a64b14dc7a42c 100644 --- a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java -@@ -336,11 +336,11 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, +@@ -341,11 +341,11 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, // Paper start - Add more fields to AsyncPlayerPreLoginEvent final InetAddress rawAddress = ((InetSocketAddress) this.connection.channel.remoteAddress()).getAddress(); @@ -62,7 +62,7 @@ index 768a5c6ebc4466aae4108a79e1564b2bfc93463a..26cee48ea3650aaf87fd2ba9c70d4ca9 public void tick() { diff --git a/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java b/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java -index 818df09e9245b5d89b4180b1eaa51470b7539341..461656e1cb095243bfe7a9ee2906e5b00574ae78 100644 +index 818df09e9245b5d89b4180b1eaa51470b7539341..f6b2ca92fd3510a76cbf56d0ea55aa6caaf12ba1 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java @@ -82,8 +82,8 @@ public class CraftOfflinePlayer implements OfflinePlayer, ConfigurationSerializa @@ -72,12 +72,12 @@ index 818df09e9245b5d89b4180b1eaa51470b7539341..461656e1cb095243bfe7a9ee2906e5b0 - public PlayerProfile getPlayerProfile() { - return new CraftPlayerProfile(this.profile); + public com.destroystokyo.paper.profile.PlayerProfile getPlayerProfile() { // Paper -+ return new com.destroystokyo.paper.profile.CraftPlayerProfile(this.profile); // Paper ++ return com.destroystokyo.paper.profile.CraftPlayerProfile.asBukkitCopy(this.profile); // Paper } public Server getServer() { diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 4602c3d0be94f0146a2b205268f70aaf85410f20..422c25577a0d95b31b5528fad8fc9b3ae97fa7f0 100644 +index 8521f728088d16ecbaa0119983a9f12a649ac847..9136feac48244dc68bff92b52643f2adefba5205 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -249,11 +249,6 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0182-Add-openSign-method-to-HumanEntity.patch b/patches/server/0182-Add-openSign-method-to-HumanEntity.patch index 83658d2f8..51a6489c0 100644 --- a/patches/server/0182-Add-openSign-method-to-HumanEntity.patch +++ b/patches/server/0182-Add-openSign-method-to-HumanEntity.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add openSign method to HumanEntity diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java -index 9574d5e0ee9109155f16861d0c46e45ef4c1d1a8..2e02fc22a889c9c8010ae8bff1b59a13219ae014 100644 +index f0efea03165039525a98dc30c34d876972d9fe71..e59fee587c2d90df5a6aa7a3df0eefc0cb5165ac 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java -@@ -622,6 +622,12 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity { +@@ -630,6 +630,12 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity { } } diff --git a/patches/server/0199-Make-shield-blocking-delay-configurable.patch b/patches/server/0199-Make-shield-blocking-delay-configurable.patch index 9468400c1..aff86fa3d 100644 --- a/patches/server/0199-Make-shield-blocking-delay-configurable.patch +++ b/patches/server/0199-Make-shield-blocking-delay-configurable.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Make shield blocking delay configurable diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 21d00a73ad8287d61eda1ab91b88ea3264aff021..cccc60602360f25f0aeddbd16dad2bb63a1728a8 100644 +index 7a7c404778757e6778305c9f8334a4fba1f466a6..d58439f85f4d3a9b863ecadb3b42b2ee3270a772 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -3966,12 +3966,24 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -3969,12 +3969,24 @@ public abstract class LivingEntity extends Entity implements Attackable { if (this.isUsingItem() && !this.useItem.isEmpty()) { Item item = this.useItem.getItem(); @@ -35,10 +35,10 @@ index 21d00a73ad8287d61eda1ab91b88ea3264aff021..cccc60602360f25f0aeddbd16dad2bb6 return this.isShiftKeyDown(); } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index fe631496aa551a0029eff7b4d4a5daf16dddac50..bb81e0bfe0692e8f8421758cd21c003978853a08 100644 +index 475fcc2d1d61a94b81dc839ba0240f317afcfe56..5ca07b2cdc30f23632a23249c615ac9a8c7c96c7 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -@@ -842,5 +842,15 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { +@@ -847,5 +847,15 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { public void setArrowsStuck(final int arrows) { this.getHandle().setArrowCount(arrows); } diff --git a/patches/server/0204-LivingEntity-Active-Item-API.patch b/patches/server/0204-LivingEntity-Active-Item-API.patch index a39708f12..29cf3d86f 100644 --- a/patches/server/0204-LivingEntity-Active-Item-API.patch +++ b/patches/server/0204-LivingEntity-Active-Item-API.patch @@ -13,10 +13,10 @@ public net/minecraft/server/level/ServerPlayer completeUsingItem()V Co-authored-by: Jake Potrebic diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index bb81e0bfe0692e8f8421758cd21c003978853a08..e77380686b9f0c5695be36b3e16e11b2646ac00a 100644 +index 5ca07b2cdc30f23632a23249c615ac9a8c7c96c7..4f0f21bb1f2d37a798065b7c5e0b2a77a8122823 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -@@ -853,4 +853,53 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { +@@ -858,4 +858,53 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { getHandle().setShieldBlockingDelay(delay); } // Paper end diff --git a/patches/server/0208-InventoryCloseEvent-Reason-API.patch b/patches/server/0208-InventoryCloseEvent-Reason-API.patch index 6e38650f6..69dc41d4e 100644 --- a/patches/server/0208-InventoryCloseEvent-Reason-API.patch +++ b/patches/server/0208-InventoryCloseEvent-Reason-API.patch @@ -136,10 +136,10 @@ index 1b13096da1f0bc49efe25677ec24e6abe7ff2879..b70fbc1a93271bbf28402afbe9c6e538 this.containerMenu = this.inventoryMenu; } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java -index 2e02fc22a889c9c8010ae8bff1b59a13219ae014..703bb1bb42b1668c04824489fd2f349052025979 100644 +index e59fee587c2d90df5a6aa7a3df0eefc0cb5165ac..ee7cf7f1d491ffdf26c3f156d299e2f517a05608 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java -@@ -378,7 +378,7 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity { +@@ -386,7 +386,7 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity { if (((ServerPlayer) this.getHandle()).connection == null) return; if (this.getHandle().containerMenu != this.getHandle().inventoryMenu) { // fire INVENTORY_CLOSE if one already open @@ -148,7 +148,7 @@ index 2e02fc22a889c9c8010ae8bff1b59a13219ae014..703bb1bb42b1668c04824489fd2f3490 } ServerPlayer player = (ServerPlayer) this.getHandle(); AbstractContainerMenu container; -@@ -448,8 +448,14 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity { +@@ -456,8 +456,14 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity { @Override public void closeInventory() { @@ -165,7 +165,7 @@ index 2e02fc22a889c9c8010ae8bff1b59a13219ae014..703bb1bb42b1668c04824489fd2f3490 @Override public boolean isBlocking() { diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 4e5dba1da323f12d77a36635c9227b1239856254..12c61db6d4b1284765f9bed3ae26131a118b318e 100644 +index 18bcc27d07d7ab4b57148521891670ab61d6432c..35addb8d7620eeeede31c4831983a2c8bfb23ef5 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -1273,7 +1273,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @@ -178,7 +178,7 @@ index 4e5dba1da323f12d77a36635c9227b1239856254..12c61db6d4b1284765f9bed3ae26131a // Check if the fromWorld and toWorld are the same. diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 3059a21b554db99af96c76f72dd08591c00e3e08..9b6607700ed23b97755a2171a49b22d498a60626 100644 +index 7b1f55d02c2c1f3598b7b67c4c3d26c11c7450ae..889a2094850e6c5bda1efeac2e26bf77a007f4f3 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -1283,7 +1283,7 @@ public class CraftEventFactory { diff --git a/patches/server/0240-Add-ray-tracing-methods-to-LivingEntity.patch b/patches/server/0240-Add-ray-tracing-methods-to-LivingEntity.patch index 1f0a581e4..c84def987 100644 --- a/patches/server/0240-Add-ray-tracing-methods-to-LivingEntity.patch +++ b/patches/server/0240-Add-ray-tracing-methods-to-LivingEntity.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add ray tracing methods to LivingEntity diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index ada79af49d1cafe25ca6c1fb456e1c4c3a42cb73..39dff0a38b53624c935f27cc86ff036c831f407f 100644 +index d90e74b7323a60e781d942baffe9b4bdb8ae2943..08f756b4fbb4732d73ca281b7006024b21504880 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -3977,6 +3977,19 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -3980,6 +3980,19 @@ public abstract class LivingEntity extends Entity implements Attackable { } // Paper start - Make shield blocking delay configurable @@ -29,7 +29,7 @@ index ada79af49d1cafe25ca6c1fb456e1c4c3a42cb73..39dff0a38b53624c935f27cc86ff036c public int getShieldBlockingDelay() { diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index e77380686b9f0c5695be36b3e16e11b2646ac00a..f58c9edd68b02bbca10897320fae63cee1562fe3 100644 +index 4f0f21bb1f2d37a798065b7c5e0b2a77a8122823..aa5b67c704a1ae95f4b6e01696c1489c07625d16 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java @@ -201,6 +201,33 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { diff --git a/patches/server/0252-Add-LivingEntity-getTargetEntity.patch b/patches/server/0252-Add-LivingEntity-getTargetEntity.patch index e11276838..e8c8b0409 100644 --- a/patches/server/0252-Add-LivingEntity-getTargetEntity.patch +++ b/patches/server/0252-Add-LivingEntity-getTargetEntity.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add LivingEntity#getTargetEntity diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index bdee5725029eda3a0e7bee407286480c0bb47db1..689aaf4ceedc598fe71db726215cceae6cc97296 100644 +index 64aa52c2d1fe50d304d75ebb197e8a834016c3cf..7bc0a66602d77902d83d6ca515da48e3453de900 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -127,6 +127,7 @@ import net.minecraft.world.level.storage.loot.LootTable; @@ -16,7 +16,7 @@ index bdee5725029eda3a0e7bee407286480c0bb47db1..689aaf4ceedc598fe71db726215cceae import net.minecraft.world.phys.HitResult; import net.minecraft.world.phys.Vec3; import net.minecraft.world.scores.PlayerTeam; -@@ -4041,6 +4042,38 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -4044,6 +4045,38 @@ public abstract class LivingEntity extends Entity implements Attackable { return this.level().clip(raytrace); } @@ -56,7 +56,7 @@ index bdee5725029eda3a0e7bee407286480c0bb47db1..689aaf4ceedc598fe71db726215cceae public int getShieldBlockingDelay() { diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index f58c9edd68b02bbca10897320fae63cee1562fe3..9a159f0c7489d2924dabe3fd250d844899ae5761 100644 +index aa5b67c704a1ae95f4b6e01696c1489c07625d16..97e76c3701c5e58ff5c8cd0f243efd7998f1c93d 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java @@ -1,5 +1,6 @@ diff --git a/patches/server/0263-Restore-custom-InventoryHolder-support.patch b/patches/server/0263-Restore-custom-InventoryHolder-support.patch index 4fa1d8fac..f86f8995c 100644 --- a/patches/server/0263-Restore-custom-InventoryHolder-support.patch +++ b/patches/server/0263-Restore-custom-InventoryHolder-support.patch @@ -161,7 +161,7 @@ index 0000000000000000000000000000000000000000..224d4b2cc45b0d02230a76caee9c8857 + } +} diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftContainer.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftContainer.java -index 867091ff253541ec45b6ae7f1fb3acc83a5c4966..10a5b1853d3984427209c87bdec1d471dddb1244 100644 +index 1a2329021a6b29777c637ee4dc8cd69ed18001c9..674e3a827f8fb64e5c0beefb3c1874d6e8aee4e5 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftContainer.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftContainer.java @@ -49,7 +49,7 @@ public class CraftContainer extends AbstractContainerMenu { @@ -182,7 +182,7 @@ index 867091ff253541ec45b6ae7f1fb3acc83a5c4966..10a5b1853d3984427209c87bdec1d471 } // Paper end -@@ -252,6 +252,10 @@ public class CraftContainer extends AbstractContainerMenu { +@@ -214,6 +214,10 @@ public class CraftContainer extends AbstractContainerMenu { this.lastSlots = this.delegate.lastSlots; this.slots = this.delegate.slots; this.remoteSlots = this.delegate.remoteSlots; diff --git a/patches/server/0266-Make-the-default-permission-message-configurable.patch b/patches/server/0266-Make-the-default-permission-message-configurable.patch index 45ffed84a..9b2ee34d9 100644 --- a/patches/server/0266-Make-the-default-permission-message-configurable.patch +++ b/patches/server/0266-Make-the-default-permission-message-configurable.patch @@ -18,10 +18,10 @@ index 5b070d158760789bbcaa984426a55d20767abe4a..e1820a339452cd3388dd7cbb928c5f58 } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index a4e969a82eabc5ffdb776d1574f5b003fc19b177..f727b7882a86b1e3f736816634ab4b61f69d1dff 100644 +index ffe53ca530da2b2a1b28c7ee59a7f5599949a0a1..6b63938514977f8fdfb019d55f8da28718f4cf1c 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -2875,6 +2875,16 @@ public final class CraftServer implements Server { +@@ -2872,6 +2872,16 @@ public final class CraftServer implements Server { return io.papermc.paper.configuration.GlobalConfiguration.get().commands.suggestPlayerNamesWhenNullTabCompletions; } diff --git a/patches/server/0270-Add-PlayerConnectionCloseEvent.patch b/patches/server/0270-Add-PlayerConnectionCloseEvent.patch index 5c63a589a..fd1a1d334 100644 --- a/patches/server/0270-Add-PlayerConnectionCloseEvent.patch +++ b/patches/server/0270-Add-PlayerConnectionCloseEvent.patch @@ -69,10 +69,10 @@ index c45b8b2c89ffec7bd6a6875963c61f11185d3ee1..38947f40864f3661df2eb4baa0aef574 } } diff --git a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java -index b31f00f2f0b7cec59301afe36c9dd7cdc120fc9d..53b1fd2d1328bde3fe195964ce39ff5c0f5a7c05 100644 +index 636b8aef2348fa4cfe63a9b7d77a64b14dc7a42c..de25b9ea8aa4b7d6fd3fed12cdd16be9ddfcbfff 100644 --- a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java -@@ -81,7 +81,7 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, +@@ -86,7 +86,7 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, @Nullable String requestedUsername; @Nullable diff --git a/patches/server/0288-Fix-CB-call-to-changed-postToMainThread-method.patch b/patches/server/0288-Fix-CB-call-to-changed-postToMainThread-method.patch index 06263e3ee..b135e5922 100644 --- a/patches/server/0288-Fix-CB-call-to-changed-postToMainThread-method.patch +++ b/patches/server/0288-Fix-CB-call-to-changed-postToMainThread-method.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Fix CB call to changed postToMainThread method diff --git a/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java -index 382920335337c8d0abd8b1f600fddd391249fe21..2d1fad00ee084841618f0da8113c7aac8c0e2b0d 100644 +index 9b1df397e1d2d8ca04b34012808be2110526f401..4f62abfe62c951b7a1df36ece34747100d6a4ff7 100644 --- a/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java -@@ -366,7 +366,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack +@@ -371,7 +371,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack Objects.requireNonNull(this.connection); // CraftBukkit - Don't wait diff --git a/patches/server/0291-Expose-the-internal-current-tick.patch b/patches/server/0291-Expose-the-internal-current-tick.patch index 479758b47..1cedc3540 100644 --- a/patches/server/0291-Expose-the-internal-current-tick.patch +++ b/patches/server/0291-Expose-the-internal-current-tick.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Expose the internal current tick diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index f727b7882a86b1e3f736816634ab4b61f69d1dff..285bdabc7cb231d95e2a55684fbcfc81ed794117 100644 +index 6b63938514977f8fdfb019d55f8da28718f4cf1c..ae4e3c137498ff390c8cae7315c7ebfe125efc35 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -2918,5 +2918,10 @@ public final class CraftServer implements Server { +@@ -2915,5 +2915,10 @@ public final class CraftServer implements Server { profile.getGameProfile().getProperties().putAll(((CraftPlayer) player).getHandle().getGameProfile().getProperties()); return profile; } diff --git a/patches/server/0294-Configurable-projectile-relative-velocity.patch b/patches/server/0294-Configurable-projectile-relative-velocity.patch index 1616b1c05..29613c9f0 100644 --- a/patches/server/0294-Configurable-projectile-relative-velocity.patch +++ b/patches/server/0294-Configurable-projectile-relative-velocity.patch @@ -25,18 +25,15 @@ P3) Solutions for 1) and especially 2) might not be future-proof, while this server-internal fix makes this change future-proof. diff --git a/src/main/java/net/minecraft/world/entity/projectile/Projectile.java b/src/main/java/net/minecraft/world/entity/projectile/Projectile.java -index 30eb86b52f00cfa61af4f93aca50ffc3547c95e8..19452d1e591afc06675d57bbebae963517ab7217 100644 +index 30eb86b52f00cfa61af4f93aca50ffc3547c95e8..d27e17ebf25cd842a943cf82bde05b2248c74414 100644 --- a/src/main/java/net/minecraft/world/entity/projectile/Projectile.java +++ b/src/main/java/net/minecraft/world/entity/projectile/Projectile.java -@@ -182,8 +182,14 @@ public abstract class Projectile extends Entity implements TraceableEntity { +@@ -182,8 +182,11 @@ public abstract class Projectile extends Entity implements TraceableEntity { this.shoot((double) f5, (double) f6, (double) f7, speed, divergence); Vec3 vec3d = shooter.getKnownMovement(); - + // Paper start - allow disabling relative velocity -+ if (vec3d.lengthSqr() > 4D * 4D) { -+ vec3d = vec3d.normalize().scale(2D); -+ } + if (!shooter.level().paperConfig().misc.disableRelativeProjectileVelocity) { this.setDeltaMovement(this.getDeltaMovement().add(vec3d.x, shooter.onGround() ? 0.0D : vec3d.y, vec3d.z)); + } diff --git a/patches/server/0296-Prevent-consuming-the-wrong-itemstack.patch b/patches/server/0296-Prevent-consuming-the-wrong-itemstack.patch index b0a13ebab..c0dbff9a6 100644 --- a/patches/server/0296-Prevent-consuming-the-wrong-itemstack.patch +++ b/patches/server/0296-Prevent-consuming-the-wrong-itemstack.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Prevent consuming the wrong itemstack diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index fad0445628499ac14cd9d8ab7f618c490885e798..6bec55f685dddc4d6e541f1edf3b5c4f756f8b33 100644 +index a23baa42fd3bb09f619fd6528a8a4f97d189cde6..8ee6d25c3860fe7f2e5039c74c736d82eefda237 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -3855,9 +3855,14 @@ public abstract class LivingEntity extends Entity implements Attackable { @@ -32,7 +32,7 @@ index fad0445628499ac14cd9d8ab7f618c490885e798..6bec55f685dddc4d6e541f1edf3b5c4f this.triggerItemUseEffects(this.useItem, 16); // CraftBukkit start - fire PlayerItemConsumeEvent ItemStack itemstack; -@@ -3976,8 +3982,8 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -3979,8 +3985,8 @@ public abstract class LivingEntity extends Entity implements Attackable { } this.stopUsingItem(); diff --git a/patches/server/0317-Entity-Jump-API.patch b/patches/server/0317-Entity-Jump-API.patch index eebb514dc..1c521e9d9 100644 --- a/patches/server/0317-Entity-Jump-API.patch +++ b/patches/server/0317-Entity-Jump-API.patch @@ -7,7 +7,7 @@ Subject: [PATCH] Entity Jump API public net.minecraft.world.entity.LivingEntity jumping diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 6bec55f685dddc4d6e541f1edf3b5c4f756f8b33..bfa914857ff36d6c2f5f96a1ddbc4ca96c3ee7ac 100644 +index 8ee6d25c3860fe7f2e5039c74c736d82eefda237..4c32b26e29ca3db0a2f62052e14bcc3e4c1cdea5 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -3433,8 +3433,10 @@ public abstract class LivingEntity extends Entity implements Attackable { @@ -50,10 +50,10 @@ index 4d91bc4b90a208fec789325dbcec8cc56d1a2a8b..aa4111eef22546f8aa630228c51ef576 } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index 9a159f0c7489d2924dabe3fd250d844899ae5761..94f2b0fa94ebc2572c33623fa5883dd7ed56c55a 100644 +index 97e76c3701c5e58ff5c8cd0f243efd7998f1c93d..b6238c327e91a52b77135290762feb8b1085fc7e 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -@@ -963,4 +963,20 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { +@@ -968,4 +968,20 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { return org.bukkit.craftbukkit.CraftEquipmentSlot.getHand(this.getHandle().getUsedItemHand()); } // Paper end - active item API diff --git a/patches/server/0326-Add-tick-times-API-and-mspt-command.patch b/patches/server/0326-Add-tick-times-API-and-mspt-command.patch index 22290805e..e1bd6dcc6 100644 --- a/patches/server/0326-Add-tick-times-API-and-mspt-command.patch +++ b/patches/server/0326-Add-tick-times-API-and-mspt-command.patch @@ -184,10 +184,10 @@ index 3ffb330a16797c04694f73b0cd9f5b38a07641b4..ff73167bfe210305491e35f18adc2755 + // Paper end - Add tick times API and /mspt command } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 285bdabc7cb231d95e2a55684fbcfc81ed794117..3f8076d077844e272e544a600f8f63611674ac62 100644 +index ae4e3c137498ff390c8cae7315c7ebfe125efc35..55b11cb574d1fd634b4f445a0605249a296c6779 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -2689,6 +2689,16 @@ public final class CraftServer implements Server { +@@ -2686,6 +2686,16 @@ public final class CraftServer implements Server { return CraftMagicNumbers.INSTANCE; } diff --git a/patches/server/0327-Expose-MinecraftServer-isRunning.patch b/patches/server/0327-Expose-MinecraftServer-isRunning.patch index ec3e02234..38e750612 100644 --- a/patches/server/0327-Expose-MinecraftServer-isRunning.patch +++ b/patches/server/0327-Expose-MinecraftServer-isRunning.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Expose MinecraftServer#isRunning This allows for plugins to detect if the server is actually turning off in onDisable rather than just plugins reloading. diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 3f8076d077844e272e544a600f8f63611674ac62..7b0f0777dd20c5fd1813fabf8d34bc99659be9d2 100644 +index 55b11cb574d1fd634b4f445a0605249a296c6779..01415a1523a783d8581e463dcea4f96ff8d0807e 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -2933,5 +2933,10 @@ public final class CraftServer implements Server { +@@ -2930,5 +2930,10 @@ public final class CraftServer implements Server { public int getCurrentTick() { return net.minecraft.server.MinecraftServer.currentTick; } diff --git a/patches/server/0339-Prevent-opening-inventories-when-frozen.patch b/patches/server/0339-Prevent-opening-inventories-when-frozen.patch index 1e3d68bf9..3f6f9857e 100644 --- a/patches/server/0339-Prevent-opening-inventories-when-frozen.patch +++ b/patches/server/0339-Prevent-opening-inventories-when-frozen.patch @@ -27,10 +27,10 @@ index f8d4bd18f98ed914e116d0cc4a80140e4e8d759f..7daa310dd5d3eb1befb9983ce85e0354 this.initMenu(container); return OptionalInt.of(this.containerCounter); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java -index 703bb1bb42b1668c04824489fd2f349052025979..b55919a0e61a36697c95599dba17dbe2b788fd2a 100644 +index ee7cf7f1d491ffdf26c3f156d299e2f517a05608..ba63c58d40cb3b8655fdb8177c423c67ac7cc3ef 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java -@@ -326,7 +326,7 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity { +@@ -334,7 +334,7 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity { if (adventure$title == null) adventure$title = net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer.legacySection().deserialize(container.getBukkitView().getTitle()); // Paper //player.connection.send(new ClientboundOpenScreenPacket(container.containerId, windowType, CraftChatMessage.fromString(title)[0])); // Paper - comment @@ -39,7 +39,7 @@ index 703bb1bb42b1668c04824489fd2f349052025979..b55919a0e61a36697c95599dba17dbe2 player.containerMenu = container; player.initMenu(container); } -@@ -401,7 +401,7 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity { +@@ -409,7 +409,7 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity { net.kyori.adventure.text.Component adventure$title = inventory.title(); // Paper if (adventure$title == null) adventure$title = net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer.legacySection().deserialize(inventory.getTitle()); // Paper //player.connection.send(new ClientboundOpenScreenPacket(container.containerId, windowType, CraftChatMessage.fromString(title)[0])); // Paper - comment diff --git a/patches/server/0354-Implement-Mob-Goal-API.patch b/patches/server/0354-Implement-Mob-Goal-API.patch index 940e3b1ee..938235210 100644 --- a/patches/server/0354-Implement-Mob-Goal-API.patch +++ b/patches/server/0354-Implement-Mob-Goal-API.patch @@ -780,10 +780,10 @@ index 6667ecc4b7eded4e20a415cef1e1b1179e6710b8..16f9a98b8a939e5ca7e2dc04f87134a7 LOOK, JUMP, diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 9699d15f1194af7a565504cbae5aa9e3743665ec..0b87d9c3fb7e2442798faacdd49d3fd368e64b7d 100644 +index 6ea6e3280015a31a1679a874ca63c90be8252a86..48c3d926682dd72ba476b4afc9e44e0113af0b46 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -2939,5 +2939,11 @@ public final class CraftServer implements Server { +@@ -2936,5 +2936,11 @@ public final class CraftServer implements Server { public boolean isStopping() { return net.minecraft.server.MinecraftServer.getServer().hasStopped(); } diff --git a/patches/server/0393-Brand-support.patch b/patches/server/0393-Brand-support.patch index bb0376315..af42b533f 100644 --- a/patches/server/0393-Brand-support.patch +++ b/patches/server/0393-Brand-support.patch @@ -17,10 +17,10 @@ index e6e7dc17d1196a8211a565355f34b5dcfd478852..45181bc9c422507682d479e4d43177ec public ServerPlayer(MinecraftServer server, ServerLevel world, GameProfile profile, ClientInformation clientOptions) { super(world, world.getSharedSpawnPos(), world.getSharedSpawnAngle(), profile); diff --git a/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java -index 2d1fad00ee084841618f0da8113c7aac8c0e2b0d..a3c67bdc2c08b3550534f37d15b0db90b479e34f 100644 +index 4f62abfe62c951b7a1df36ece34747100d6a4ff7..48085b2e7197dc44e76b812bdd514af729e21e83 100644 --- a/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java -@@ -78,6 +78,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack +@@ -83,6 +83,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack private volatile boolean suspendFlushingOnServerThread = false; public final java.util.Map packCallbacks = new java.util.concurrent.ConcurrentHashMap<>(); // Paper - adventure resource pack callbacks private static final long KEEPALIVE_LIMIT = Long.getLong("paper.playerconnection.keepalive", 30) * 1000; // Paper - provide property to set keepalive limit @@ -28,7 +28,7 @@ index 2d1fad00ee084841618f0da8113c7aac8c0e2b0d..a3c67bdc2c08b3550534f37d15b0db90 public ServerCommonPacketListenerImpl(MinecraftServer minecraftserver, Connection networkmanager, CommonListenerCookie commonlistenercookie, ServerPlayer player) { // CraftBukkit this.server = minecraftserver; -@@ -143,6 +144,11 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack +@@ -148,6 +149,11 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack @Override public void handleCustomPayload(ServerboundCustomPayloadPacket packet) { @@ -40,7 +40,7 @@ index 2d1fad00ee084841618f0da8113c7aac8c0e2b0d..a3c67bdc2c08b3550534f37d15b0db90 if (!(packet.payload() instanceof DiscardedPayload)) { return; } -@@ -174,6 +180,15 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack +@@ -179,6 +185,15 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack try { byte[] data = new byte[payload.readableBytes()]; payload.readBytes(data); @@ -57,7 +57,7 @@ index 2d1fad00ee084841618f0da8113c7aac8c0e2b0d..a3c67bdc2c08b3550534f37d15b0db90 } catch (Exception ex) { ServerGamePacketListenerImpl.LOGGER.error("Couldn\'t dispatch custom payload", ex); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index b9487ce9391413c4c596cc5450ed5c396347ec1b..12e38fcbd3a3bcf102244a2b246c090c57ef327b 100644 +index 068ff2c228308ec87fcc6d1352bd63b91bd34a93..854533854dfba24b59a15265ac759331e3ddfc74 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -3139,6 +3139,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0394-Add-playPickupItemAnimation-to-LivingEntity.patch b/patches/server/0394-Add-playPickupItemAnimation-to-LivingEntity.patch index 0fcb956c3..7fe52b1b6 100644 --- a/patches/server/0394-Add-playPickupItemAnimation-to-LivingEntity.patch +++ b/patches/server/0394-Add-playPickupItemAnimation-to-LivingEntity.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add playPickupItemAnimation to LivingEntity diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index 9cf3e1e20799caf4ba469ef6d5d86bfe176641f7..344ef786330d1247fdfb56ef04be130c9ffb7d8f 100644 +index b1c4970920ca8972f637c846106ae37822e495cf..cf17328aef60e5c6a0d168d2ed4d181cf47ee0b4 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -@@ -979,4 +979,11 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { +@@ -984,4 +984,11 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { } } // Paper end - entity jump API diff --git a/patches/server/0403-Fix-hex-colors-not-working-in-some-kick-messages.patch b/patches/server/0403-Fix-hex-colors-not-working-in-some-kick-messages.patch index f6f865ab1..6124f3252 100644 --- a/patches/server/0403-Fix-hex-colors-not-working-in-some-kick-messages.patch +++ b/patches/server/0403-Fix-hex-colors-not-working-in-some-kick-messages.patch @@ -29,10 +29,10 @@ index 946b423d2184f903dc29c923d7dbe05aaa469c09..0c1bdf2329936ce479a2cc53e8a46bd2 this.connection.disconnect((Component) ichatmutablecomponent); } else { diff --git a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java -index 53b1fd2d1328bde3fe195964ce39ff5c0f5a7c05..baedae23865ea80c6546d1f6f439e1d7712258b9 100644 +index de25b9ea8aa4b7d6fd3fed12cdd16be9ddfcbfff..d2d153e587e624025ef01fbe3dcfa4bf06f1a06b 100644 --- a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java -@@ -128,7 +128,7 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, +@@ -133,7 +133,7 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, // CraftBukkit start @Deprecated public void disconnect(String s) { diff --git a/patches/server/0409-Add-additional-open-container-api-to-HumanEntity.patch b/patches/server/0409-Add-additional-open-container-api-to-HumanEntity.patch index be29dd6b1..15f9a92e4 100644 --- a/patches/server/0409-Add-additional-open-container-api-to-HumanEntity.patch +++ b/patches/server/0409-Add-additional-open-container-api-to-HumanEntity.patch @@ -7,10 +7,10 @@ Subject: [PATCH] Add additional open container api to HumanEntity public net/minecraft/world/level/block/state/BlockBehaviour getMenuProvider(Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/MenuProvider; diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java -index 084938fa2ffa7ee462766bf03f8e2b4c0fd4bf6b..8f4c4fed41676157b717c20a5ccbfe6ad4bdb3c4 100644 +index c17dd4205983855615289cf0a5619056d237f325..6cda13df52ee4d56dd1d3c213307bfd38175584c 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java -@@ -463,6 +463,70 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity { +@@ -471,6 +471,70 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity { return this.getHandle().containerMenu.getBukkitView(); } diff --git a/patches/server/0420-Villager-resetOffers.patch b/patches/server/0420-Villager-resetOffers.patch index 77f071ec7..ce8f9949c 100644 --- a/patches/server/0420-Villager-resetOffers.patch +++ b/patches/server/0420-Villager-resetOffers.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Villager#resetOffers diff --git a/src/main/java/net/minecraft/world/entity/npc/AbstractVillager.java b/src/main/java/net/minecraft/world/entity/npc/AbstractVillager.java -index 5ee34073e4bd5a4765d7954b6620c0d05d8c7bc9..80fe2e3e5b97e9b6af98b73f19f8c2f5fca279fe 100644 +index 89e14bb2662fe03b4661aaa54fd65af41b1d438b..fcb3b66617150ad503bffe65de4900b1e3af8764 100644 --- a/src/main/java/net/minecraft/world/entity/npc/AbstractVillager.java +++ b/src/main/java/net/minecraft/world/entity/npc/AbstractVillager.java -@@ -116,6 +116,13 @@ public abstract class AbstractVillager extends AgeableMob implements InventoryCa +@@ -114,6 +114,13 @@ public abstract class AbstractVillager extends AgeableMob implements InventoryCa return this.tradingPlayer != null; } @@ -23,12 +23,12 @@ index 5ee34073e4bd5a4765d7954b6620c0d05d8c7bc9..80fe2e3e5b97e9b6af98b73f19f8c2f5 public MerchantOffers getOffers() { if (this.level().isClientSide) { diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftAbstractVillager.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftAbstractVillager.java -index 19833c1fc6ee85e031e3c6aac3b00f44730c5e02..34e4c763c7ec971885147ab2509281fad56e1ca6 100644 +index e5f733a765068b5640e811abf9fda945a9e91c7c..3199f04d00836a0a51547c679f3f3c80d00da502 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftAbstractVillager.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftAbstractVillager.java -@@ -70,4 +70,11 @@ public class CraftAbstractVillager extends CraftAgeable implements AbstractVilla - public HumanEntity getTrader() { - return this.getMerchant().getTrader(); +@@ -34,4 +34,11 @@ public class CraftAbstractVillager extends CraftAgeable implements CraftMerchant + public Inventory getInventory() { + return new CraftInventory(this.getHandle().getInventory()); } + + // Paper start - Villager#resetOffers diff --git a/patches/server/0426-Add-ignore-discounts-API.patch b/patches/server/0426-Add-ignore-discounts-API.patch index 5a2d4be36..65a552a60 100644 --- a/patches/server/0426-Add-ignore-discounts-API.patch +++ b/patches/server/0426-Add-ignore-discounts-API.patch @@ -87,7 +87,7 @@ index 89982d25f60c8b60ba91e559ef88278f338fe215..0efc8d997b34302c3e0a5d7ec73a11a9 public ItemStack getBaseCostA() { diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMerchantRecipe.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMerchantRecipe.java -index 3bf9b5c016fa638fd0377d2a031a7359430b79ce..a18088125254178d362fdd283bff704a9ccdd0a7 100644 +index 86c5bc01d5b87b4301fb83d55cf3046985c45d0f..c9e23a71a35214c363318c48d38c49b695d1ffd4 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMerchantRecipe.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMerchantRecipe.java @@ -22,11 +22,19 @@ public class CraftMerchantRecipe extends MerchantRecipe { @@ -139,7 +139,7 @@ index 3bf9b5c016fa638fd0377d2a031a7359430b79ce..a18088125254178d362fdd283bff704a public net.minecraft.world.item.trading.MerchantOffer toMinecraft() { List ingredients = this.getIngredients(); Preconditions.checkState(!ingredients.isEmpty(), "No offered ingredients"); -@@ -128,7 +149,7 @@ public class CraftMerchantRecipe extends MerchantRecipe { +@@ -130,7 +151,7 @@ public class CraftMerchantRecipe extends MerchantRecipe { if (recipe instanceof CraftMerchantRecipe) { return (CraftMerchantRecipe) recipe; } else { diff --git a/patches/server/0431-Add-API-for-quit-reason.patch b/patches/server/0431-Add-API-for-quit-reason.patch index de4285201..c4ed7bf11 100644 --- a/patches/server/0431-Add-API-for-quit-reason.patch +++ b/patches/server/0431-Add-API-for-quit-reason.patch @@ -40,10 +40,10 @@ index 45181bc9c422507682d479e4d43177ecd3253971..2ea613f818403f8e8ece4b3689173813 public ServerPlayer(MinecraftServer server, ServerLevel world, GameProfile profile, ClientInformation clientOptions) { super(world, world.getSharedSpawnPos(), world.getSharedSpawnAngle(), profile); diff --git a/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java -index a3c67bdc2c08b3550534f37d15b0db90b479e34f..24bf661e76fb421a8be565d9ea68edf7205254d2 100644 +index 48085b2e7197dc44e76b812bdd514af729e21e83..a1124405412cdac673f34a63988e7be957506dba 100644 --- a/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java -@@ -371,6 +371,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack +@@ -376,6 +376,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack private void disconnect0(DisconnectionDetails disconnectiondetails) { // CraftBukkit end @@ -52,7 +52,7 @@ index a3c67bdc2c08b3550534f37d15b0db90b479e34f..24bf661e76fb421a8be565d9ea68edf7 this.connection.disconnect(disconnectiondetails); })); diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 9044ed6cba10314c52c44a19be1fa88771c54be6..45e7b41f746ceb2ef295a81fa65795df062844ef 100644 +index 6f587c4bb4704d93552ba61335d87b1852fc169c..98eb00a8ee23543714d424d3ff5ca19887d6db19 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -570,7 +570,7 @@ public abstract class PlayerList { diff --git a/patches/server/0435-Add-LivingEntity-clearActiveItem.patch b/patches/server/0435-Add-LivingEntity-clearActiveItem.patch index a5b17788b..e3b86150d 100644 --- a/patches/server/0435-Add-LivingEntity-clearActiveItem.patch +++ b/patches/server/0435-Add-LivingEntity-clearActiveItem.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add LivingEntity#clearActiveItem diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index af5aab1755f80222a249b1cc7da595af78dccbbd..02160f138128cbb1f7391061128f8b6e74549f50 100644 +index 3cd21778018db5e05ee26ba35c34a89619b3d1d8..5e8225a6ae004795b4d44c4f88f262664f632589 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -@@ -937,6 +937,13 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { +@@ -942,6 +942,13 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { return this.getHandle().getUseItem().asBukkitMirror(); } diff --git a/patches/server/0446-Expose-LivingEntity-hurt-direction.patch b/patches/server/0446-Expose-LivingEntity-hurt-direction.patch index f43a7b04a..d0db14411 100644 --- a/patches/server/0446-Expose-LivingEntity-hurt-direction.patch +++ b/patches/server/0446-Expose-LivingEntity-hurt-direction.patch @@ -18,7 +18,7 @@ index cb89b020d93ac838843ec2cbad562326a1e4257b..513e6505706e64f9410fa190014976dc public Vec3 currentImpulseImpactPos; @Nullable diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java -index 8f4c4fed41676157b717c20a5ccbfe6ad4bdb3c4..87d067c3a83283931bc16dccf6a304142848cd6a 100644 +index 6cda13df52ee4d56dd1d3c213307bfd38175584c..24aa891ffa9115c05439b06aece85df7a382b7c4 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java @@ -125,6 +125,13 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity { @@ -36,10 +36,10 @@ index 8f4c4fed41676157b717c20a5ccbfe6ad4bdb3c4..87d067c3a83283931bc16dccf6a30414 public int getSleepTicks() { return this.getHandle().sleepCounter; diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index 02160f138128cbb1f7391061128f8b6e74549f50..498d5097597a35827f4293b303a956fcf63bb52d 100644 +index 5e8225a6ae004795b4d44c4f88f262664f632589..0e0c65534a782ce8d73d38efd5e2c847f685fb89 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -@@ -994,4 +994,16 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { +@@ -999,4 +999,16 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { this.getHandle().take(((CraftItem) item).getHandle(), quantity); } // Paper end - pickup animation API diff --git a/patches/server/0448-Fix-crash-from-invalid-ingredient-lists-in-VillagerA.patch b/patches/server/0448-Fix-crash-from-invalid-ingredient-lists-in-VillagerA.patch index 4186b3923..7ac0fb020 100644 --- a/patches/server/0448-Fix-crash-from-invalid-ingredient-lists-in-VillagerA.patch +++ b/patches/server/0448-Fix-crash-from-invalid-ingredient-lists-in-VillagerA.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Fix crash from invalid ingredient lists in diff --git a/src/main/java/net/minecraft/world/entity/npc/AbstractVillager.java b/src/main/java/net/minecraft/world/entity/npc/AbstractVillager.java -index 80fe2e3e5b97e9b6af98b73f19f8c2f5fca279fe..6139361c0e733f981506abdd7101e5ca20eeb88f 100644 +index fcb3b66617150ad503bffe65de4900b1e3af8764..2a155d3611ca2370830ca763d40074df6641958f 100644 --- a/src/main/java/net/minecraft/world/entity/npc/AbstractVillager.java +++ b/src/main/java/net/minecraft/world/entity/npc/AbstractVillager.java -@@ -275,7 +275,11 @@ public abstract class AbstractVillager extends AgeableMob implements InventoryCa +@@ -273,7 +273,11 @@ public abstract class AbstractVillager extends AgeableMob implements InventoryCa Bukkit.getPluginManager().callEvent(event); } if (!event.isCancelled()) { diff --git a/patches/server/0472-Add-RegistryAccess-for-managing-Registries.patch b/patches/server/0472-Add-RegistryAccess-for-managing-Registries.patch index 7ab890605..a13748ed8 100644 --- a/patches/server/0472-Add-RegistryAccess-for-managing-Registries.patch +++ b/patches/server/0472-Add-RegistryAccess-for-managing-Registries.patch @@ -12,10 +12,10 @@ public net.minecraft.server.RegistryLayer STATIC_ACCESS diff --git a/src/main/java/io/papermc/paper/registry/PaperRegistries.java b/src/main/java/io/papermc/paper/registry/PaperRegistries.java new file mode 100644 -index 0000000000000000000000000000000000000000..675f5d03478907e3d8284cbea191f01c1eb15769 +index 0000000000000000000000000000000000000000..70e2c3b5cac9a0dfb043de218df20dc1ab2cc070 --- /dev/null +++ b/src/main/java/io/papermc/paper/registry/PaperRegistries.java -@@ -0,0 +1,143 @@ +@@ -0,0 +1,146 @@ +package io.papermc.paper.registry; + +import io.papermc.paper.adventure.PaperAdventure; @@ -50,6 +50,7 @@ index 0000000000000000000000000000000000000000..675f5d03478907e3d8284cbea191f01c +import org.bukkit.craftbukkit.generator.structure.CraftStructure; +import org.bukkit.craftbukkit.generator.structure.CraftStructureType; +import org.bukkit.craftbukkit.inventory.CraftItemType; ++import org.bukkit.craftbukkit.inventory.CraftMenuType; +import org.bukkit.craftbukkit.inventory.trim.CraftTrimMaterial; +import org.bukkit.craftbukkit.inventory.trim.CraftTrimPattern; +import org.bukkit.craftbukkit.legacy.FieldRename; @@ -64,6 +65,7 @@ index 0000000000000000000000000000000000000000..675f5d03478907e3d8284cbea191f01c +import org.bukkit.entity.memory.MemoryKey; +import org.bukkit.generator.structure.StructureType; +import org.bukkit.inventory.ItemType; ++import org.bukkit.inventory.MenuType; +import org.bukkit.inventory.meta.trim.TrimMaterial; +import org.bukkit.inventory.meta.trim.TrimPattern; +import org.bukkit.map.MapCursor; @@ -95,6 +97,7 @@ index 0000000000000000000000000000000000000000..675f5d03478907e3d8284cbea191f01c + entry(Registries.VILLAGER_PROFESSION, RegistryKey.VILLAGER_PROFESSION, Villager.Profession.class, CraftVillager.CraftProfession::new), + entry(Registries.VILLAGER_TYPE, RegistryKey.VILLAGER_TYPE, Villager.Type.class, CraftVillager.CraftType::new), + entry(Registries.MAP_DECORATION_TYPE, RegistryKey.MAP_DECORATION_TYPE, MapCursor.Type.class, CraftMapCursor.CraftType::new), ++ entry(Registries.MENU, RegistryKey.MENU, MenuType.class, CraftMenuType::new), + + // data-drivens + entry(Registries.STRUCTURE, RegistryKey.STRUCTURE, Structure.class, CraftStructure::new).delayed(), @@ -729,10 +732,10 @@ index 1dd22f11b7e2983a3069dea94c0f02b43ff1f736..397bdacab9517354875ebc0bc68d3505 String string = Registries.elementsDirPath(type.registryKey()); SimpleJsonResourceReloadListener.scanDirectory(resourceManager, string, GSON, map); diff --git a/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java b/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java -index a9832482500f08df30568ecbc65e4496ee01b414..154733684a53ff84ca8c2a994b96b68733e9fba5 100644 +index 06c6342fad78d9c845e9987c460f5990505f5059..d1db491027a5e2d22a6c956b26a974a284d44c57 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java -@@ -120,78 +120,12 @@ public class CraftRegistry implements Registry { +@@ -122,81 +122,12 @@ public class CraftRegistry implements Registry { + ", this can happen if a plugin creates its own registry entry with out properly registering it."); } @@ -753,6 +756,9 @@ index a9832482500f08df30568ecbc65e4496ee01b414..154733684a53ff84ca8c2a994b96b687 - if (bukkitClass == MusicInstrument.class) { - return new CraftRegistry<>(MusicInstrument.class, registryHolder.registryOrThrow(Registries.INSTRUMENT), CraftMusicInstrument::new, FieldRename.NONE); - } +- if (bukkitClass == MenuType.class) { +- return new CraftRegistry<>(MenuType.class, registryHolder.registryOrThrow(Registries.MENU), CraftMenuType::new, FieldRename.NONE); +- } - if (bukkitClass == PotionEffectType.class) { - return new CraftRegistry<>(PotionEffectType.class, registryHolder.registryOrThrow(Registries.MOB_EFFECT), CraftPotionEffectType::new, FieldRename.NONE); - } @@ -814,7 +820,7 @@ index a9832482500f08df30568ecbc65e4496ee01b414..154733684a53ff84ca8c2a994b96b687 } if (bukkit instanceof Registry.SimpleRegistry simple) { -@@ -217,23 +151,21 @@ public class CraftRegistry implements Registry { +@@ -222,23 +153,21 @@ public class CraftRegistry implements Registry { return bukkit.get(namespacedKey); } @@ -844,7 +850,7 @@ index a9832482500f08df30568ecbc65e4496ee01b414..154733684a53ff84ca8c2a994b96b687 @Override public B get(NamespacedKey namespacedKey) { diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 75fe99d8ec74435cf62b427d6bed89c76c0cf6d9..f79af6910c4c83f1c56bc73434846f3e5270509f 100644 +index ae594610d1c5665aa142522a9cbb97cf6e4d10f2..e4fab101b2d10759b9bd65d35715e377236a5989 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -281,7 +281,7 @@ public final class CraftServer implements Server { @@ -864,7 +870,7 @@ index 75fe99d8ec74435cf62b427d6bed89c76c0cf6d9..f79af6910c4c83f1c56bc73434846f3e ConfigurationSection compatibilities = this.configuration.getConfigurationSection("settings.compatibility"); if (compatibilities == null) { this.activeCompatibilities = Collections.emptySet(); -@@ -2729,7 +2730,7 @@ public final class CraftServer implements Server { +@@ -2726,7 +2727,7 @@ public final class CraftServer implements Server { @Override public Registry getRegistry(Class aClass) { @@ -1162,7 +1168,7 @@ index bfbd80b60ac5df500d03c80de57e38aa7548dd46..cce9e2226ef554c10e1df1dbaa179165 when(instance.getTag(any(), any(), any())).then(mock -> { String registry = mock.getArgument(0); diff --git a/src/test/java/org/bukkit/support/provider/RegistriesArgumentProvider.java b/src/test/java/org/bukkit/support/provider/RegistriesArgumentProvider.java -index 9d6c3d91b505a683b353577bf39f869173243459..c1f886c906a9f9313d97a223f719095fa2624c57 100644 +index 185f219b23ac57e15f8d0167b0077b7103a2f3f9..f4ba15a1b4b43822bd81b513af56c6667237c327 100644 --- a/src/test/java/org/bukkit/support/provider/RegistriesArgumentProvider.java +++ b/src/test/java/org/bukkit/support/provider/RegistriesArgumentProvider.java @@ -1,6 +1,7 @@ @@ -1173,7 +1179,7 @@ index 9d6c3d91b505a683b353577bf39f869173243459..c1f886c906a9f9313d97a223f719095f import java.util.List; import java.util.stream.Stream; import net.minecraft.core.registries.Registries; -@@ -59,35 +60,34 @@ public class RegistriesArgumentProvider implements ArgumentsProvider { +@@ -61,36 +62,35 @@ public class RegistriesArgumentProvider implements ArgumentsProvider { private static final List DATA = Lists.newArrayList(); static { @@ -1181,6 +1187,7 @@ index 9d6c3d91b505a683b353577bf39f869173243459..c1f886c906a9f9313d97a223f719095f - register(Enchantment.class, Registries.ENCHANTMENT, CraftEnchantment.class, net.minecraft.world.item.enchantment.Enchantment.class); - register(GameEvent.class, Registries.GAME_EVENT, CraftGameEvent.class, net.minecraft.world.level.gameevent.GameEvent.class); - register(MusicInstrument.class, Registries.INSTRUMENT, CraftMusicInstrument.class, Instrument.class); +- register(MenuType.class, Registries.MENU, CraftMenuType.class, net.minecraft.world.inventory.MenuType.class); - register(PotionEffectType.class, Registries.MOB_EFFECT, CraftPotionEffectType.class, MobEffect.class); - register(Structure.class, Registries.STRUCTURE, CraftStructure.class, net.minecraft.world.level.levelgen.structure.Structure.class); - register(StructureType.class, Registries.STRUCTURE_TYPE, CraftStructureType.class, net.minecraft.world.level.levelgen.structure.StructureType.class); @@ -1218,6 +1225,7 @@ index 9d6c3d91b505a683b353577bf39f869173243459..c1f886c906a9f9313d97a223f719095f + register(RegistryKey.CAT_VARIANT, Cat.Type.class, Registries.CAT_VARIANT, CraftCat.CraftType.class, CatVariant.class); + register(RegistryKey.MAP_DECORATION_TYPE, MapCursor.Type.class, Registries.MAP_DECORATION_TYPE, CraftMapCursor.CraftType.class, MapDecorationType.class); + register(RegistryKey.BANNER_PATTERN, PatternType.class, Registries.BANNER_PATTERN, CraftPatternType.class, BannerPattern.class); ++ register(RegistryKey.MENU, MenuType.class, Registries.MENU, CraftMenuType.class, net.minecraft.world.inventory.MenuType.class); } - private static void register(Class bukkit, ResourceKey registry, Class craft, Class minecraft) { diff --git a/patches/server/0474-Collision-option-for-requiring-a-player-participant.patch b/patches/server/0474-Collision-option-for-requiring-a-player-participant.patch index 1725f5c65..28b12f77f 100644 --- a/patches/server/0474-Collision-option-for-requiring-a-player-participant.patch +++ b/patches/server/0474-Collision-option-for-requiring-a-player-participant.patch @@ -17,10 +17,10 @@ index bed376337035545e7ec677f2f7fe3372a3c9ea25..7d131f3b3f5739468aa3115e97ed28b6 double d1 = entity.getZ() - this.getZ(); double d2 = Mth.absMax(d0, d1); diff --git a/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java b/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java -index 119d6f4ec8ca6867f75f9fd2f1dc46962f16afee..2bd3ba073843b1680eeb81f7dede5973bb4f446d 100644 +index 4d8c14d3a42f3e4b963cf5f8fa764df79813912b..93634fb01962ca7a35026e3c365f2a7f6b258a39 100644 --- a/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java +++ b/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java -@@ -789,6 +789,7 @@ public abstract class AbstractMinecart extends VehicleEntity { +@@ -799,6 +799,7 @@ public abstract class AbstractMinecart extends VehicleEntity { public void push(Entity entity) { if (!this.level().isClientSide) { if (!entity.noPhysics && !this.noPhysics) { diff --git a/patches/server/0475-Remove-ProjectileHitEvent-call-when-fireballs-dead.patch b/patches/server/0475-Remove-ProjectileHitEvent-call-when-fireballs-dead.patch deleted file mode 100644 index 265be53fa..000000000 --- a/patches/server/0475-Remove-ProjectileHitEvent-call-when-fireballs-dead.patch +++ /dev/null @@ -1,21 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Aikar -Date: Sat, 16 Jan 2021 14:30:12 -0500 -Subject: [PATCH] Remove ProjectileHitEvent call when fireballs dead - -The duplicate ProjectileHitEvent in EntityFireball was removed. The -event was always called before the duplicate call. - -diff --git a/src/main/java/net/minecraft/world/entity/projectile/AbstractHurtingProjectile.java b/src/main/java/net/minecraft/world/entity/projectile/AbstractHurtingProjectile.java -index beff021b589b0e34f1111b6fae92bcdd6f059de6..3107ad04dda9f43976a385976d6952e2f2af3939 100644 ---- a/src/main/java/net/minecraft/world/entity/projectile/AbstractHurtingProjectile.java -+++ b/src/main/java/net/minecraft/world/entity/projectile/AbstractHurtingProjectile.java -@@ -91,7 +91,7 @@ public abstract class AbstractHurtingProjectile extends Projectile { - - // CraftBukkit start - Fire ProjectileHitEvent - if (this.isRemoved()) { -- CraftEventFactory.callProjectileHitEvent(this, movingobjectposition); -+ // CraftEventFactory.callProjectileHitEvent(this, movingobjectposition); // Paper - this is an undesired duplicate event - } - // CraftBukkit end - } diff --git a/patches/server/0476-Return-chat-component-with-empty-text-instead-of-thr.patch b/patches/server/0475-Return-chat-component-with-empty-text-instead-of-thr.patch similarity index 100% rename from patches/server/0476-Return-chat-component-with-empty-text-instead-of-thr.patch rename to patches/server/0475-Return-chat-component-with-empty-text-instead-of-thr.patch diff --git a/patches/server/0477-Make-schedule-command-per-world.patch b/patches/server/0476-Make-schedule-command-per-world.patch similarity index 100% rename from patches/server/0477-Make-schedule-command-per-world.patch rename to patches/server/0476-Make-schedule-command-per-world.patch diff --git a/patches/server/0478-Configurable-max-leash-distance.patch b/patches/server/0477-Configurable-max-leash-distance.patch similarity index 100% rename from patches/server/0478-Configurable-max-leash-distance.patch rename to patches/server/0477-Configurable-max-leash-distance.patch diff --git a/patches/server/0479-Add-BlockPreDispenseEvent.patch b/patches/server/0478-Add-BlockPreDispenseEvent.patch similarity index 97% rename from patches/server/0479-Add-BlockPreDispenseEvent.patch rename to patches/server/0478-Add-BlockPreDispenseEvent.patch index a2d508ee1..6e9bb3b21 100644 --- a/patches/server/0479-Add-BlockPreDispenseEvent.patch +++ b/patches/server/0478-Add-BlockPreDispenseEvent.patch @@ -29,7 +29,7 @@ index 91b514967405115f22edf4255775361a672e5c2f..ddecf443df3679e3098eb54edd19585a } else { // CraftBukkit start - Fire event when pushing items into other inventories diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index c5166b0876eb925d30803277beb181ee01120586..6cc729446ff21a5718ff01fcea1496c71f77480c 100644 +index 9e67dc35ea12149265517b951a96828460b2ca67..251b605396b77b0c449972c1da75978f57587e1a 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -2134,5 +2134,11 @@ public class CraftEventFactory { diff --git a/patches/server/0480-Add-PlayerChangeBeaconEffectEvent.patch b/patches/server/0479-Add-PlayerChangeBeaconEffectEvent.patch similarity index 100% rename from patches/server/0480-Add-PlayerChangeBeaconEffectEvent.patch rename to patches/server/0479-Add-PlayerChangeBeaconEffectEvent.patch diff --git a/patches/server/0481-Add-toggle-for-always-placing-the-dragon-egg.patch b/patches/server/0480-Add-toggle-for-always-placing-the-dragon-egg.patch similarity index 100% rename from patches/server/0481-Add-toggle-for-always-placing-the-dragon-egg.patch rename to patches/server/0480-Add-toggle-for-always-placing-the-dragon-egg.patch diff --git a/patches/server/0482-Add-PlayerStonecutterRecipeSelectEvent.patch b/patches/server/0481-Add-PlayerStonecutterRecipeSelectEvent.patch similarity index 100% rename from patches/server/0482-Add-PlayerStonecutterRecipeSelectEvent.patch rename to patches/server/0481-Add-PlayerStonecutterRecipeSelectEvent.patch diff --git a/patches/server/0483-Expand-EntityUnleashEvent.patch b/patches/server/0482-Expand-EntityUnleashEvent.patch similarity index 99% rename from patches/server/0483-Expand-EntityUnleashEvent.patch rename to patches/server/0482-Expand-EntityUnleashEvent.patch index 8d0a37b00..39bfff381 100644 --- a/patches/server/0483-Expand-EntityUnleashEvent.patch +++ b/patches/server/0482-Expand-EntityUnleashEvent.patch @@ -140,7 +140,7 @@ index 3c0af74ed65610b1d5e3b72fdcf28c5a3423f0da..01173fc7177d78588978e087e63efda0 flag1 = true; } diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 6cc729446ff21a5718ff01fcea1496c71f77480c..ad49a7cb16de3dac7a5232abded3635a4b0b8848 100644 +index 251b605396b77b0c449972c1da75978f57587e1a..c48a9026c4db2005b67c5f70e9e1fa95b7820bc0 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -1598,8 +1598,10 @@ public class CraftEventFactory { diff --git a/patches/server/0484-Reset-shield-blocking-on-dimension-change.patch b/patches/server/0483-Reset-shield-blocking-on-dimension-change.patch similarity index 100% rename from patches/server/0484-Reset-shield-blocking-on-dimension-change.patch rename to patches/server/0483-Reset-shield-blocking-on-dimension-change.patch diff --git a/patches/server/0485-Add-DragonEggFormEvent.patch b/patches/server/0484-Add-DragonEggFormEvent.patch similarity index 100% rename from patches/server/0485-Add-DragonEggFormEvent.patch rename to patches/server/0484-Add-DragonEggFormEvent.patch diff --git a/patches/server/0486-Add-EntityMoveEvent.patch b/patches/server/0485-Add-EntityMoveEvent.patch similarity index 97% rename from patches/server/0486-Add-EntityMoveEvent.patch rename to patches/server/0485-Add-EntityMoveEvent.patch index bb3bf939b..d8d3a7c5c 100644 --- a/patches/server/0486-Add-EntityMoveEvent.patch +++ b/patches/server/0485-Add-EntityMoveEvent.patch @@ -29,7 +29,7 @@ index 373560fc82e491e6c8b755fecfe78d49a2fc3e2f..644341b8bc3079c6f092226acd11667f public LevelChunk getChunkIfLoaded(int x, int z) { return this.chunkSource.getChunk(x, z, false); diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 40b86b9b25135e55cc01e502dbc8cc22344efa5d..205d2b50232447a4b8b6180a622b968a32311c5f 100644 +index d94c3e86885c5a8ba636988d29f98b496e13b627..a89c6ba4140f15e7f68f0df5cf64a176d350123b 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -3510,6 +3510,20 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/0487-added-option-to-disable-pathfinding-updates-on-block.patch b/patches/server/0486-added-option-to-disable-pathfinding-updates-on-block.patch similarity index 100% rename from patches/server/0487-added-option-to-disable-pathfinding-updates-on-block.patch rename to patches/server/0486-added-option-to-disable-pathfinding-updates-on-block.patch diff --git a/patches/server/0488-Inline-shift-direction-fields.patch b/patches/server/0487-Inline-shift-direction-fields.patch similarity index 100% rename from patches/server/0488-Inline-shift-direction-fields.patch rename to patches/server/0487-Inline-shift-direction-fields.patch diff --git a/patches/server/0489-Allow-adding-items-to-BlockDropItemEvent.patch b/patches/server/0488-Allow-adding-items-to-BlockDropItemEvent.patch similarity index 95% rename from patches/server/0489-Allow-adding-items-to-BlockDropItemEvent.patch rename to patches/server/0488-Allow-adding-items-to-BlockDropItemEvent.patch index 5082d493d..4753f93e4 100644 --- a/patches/server/0489-Allow-adding-items-to-BlockDropItemEvent.patch +++ b/patches/server/0488-Allow-adding-items-to-BlockDropItemEvent.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Allow adding items to BlockDropItemEvent diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index ad49a7cb16de3dac7a5232abded3635a4b0b8848..3e1a70fe1e523946512ac71772439f7fd292623f 100644 +index c48a9026c4db2005b67c5f70e9e1fa95b7820bc0..36adcab02e97cae2d087bae74cc4ceaf3052a9f8 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -462,13 +462,30 @@ public class CraftEventFactory { diff --git a/patches/server/0490-Add-getMainThreadExecutor-to-BukkitScheduler.patch b/patches/server/0489-Add-getMainThreadExecutor-to-BukkitScheduler.patch similarity index 100% rename from patches/server/0490-Add-getMainThreadExecutor-to-BukkitScheduler.patch rename to patches/server/0489-Add-getMainThreadExecutor-to-BukkitScheduler.patch diff --git a/patches/server/0491-living-entity-allow-attribute-registration.patch b/patches/server/0490-living-entity-allow-attribute-registration.patch similarity index 94% rename from patches/server/0491-living-entity-allow-attribute-registration.patch rename to patches/server/0490-living-entity-allow-attribute-registration.patch index 586ae419e..365f0f832 100644 --- a/patches/server/0491-living-entity-allow-attribute-registration.patch +++ b/patches/server/0490-living-entity-allow-attribute-registration.patch @@ -38,10 +38,10 @@ index 5678d2007d5adf45dec0638c5dd848b601801814..0a7ed5a4f1644a70d8f98ad7a6962b81 + // Paper end - living entity allow attribute registration } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index 498d5097597a35827f4293b303a956fcf63bb52d..e03a8bbd13da81644d9f302724c27705d812a10f 100644 +index 0e0c65534a782ce8d73d38efd5e2c847f685fb89..6a4e5a08acbadf05f93bd663148a8d2400325da3 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -@@ -757,6 +757,13 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { +@@ -762,6 +762,13 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { return this.getHandle().craftAttributes.getAttribute(attribute); } diff --git a/patches/server/0492-fix-dead-slime-setSize-invincibility.patch b/patches/server/0491-fix-dead-slime-setSize-invincibility.patch similarity index 100% rename from patches/server/0492-fix-dead-slime-setSize-invincibility.patch rename to patches/server/0491-fix-dead-slime-setSize-invincibility.patch diff --git a/patches/server/0493-Merchant-getRecipes-should-return-an-immutable-list.patch b/patches/server/0492-Merchant-getRecipes-should-return-an-immutable-list.patch similarity index 55% rename from patches/server/0493-Merchant-getRecipes-should-return-an-immutable-list.patch rename to patches/server/0492-Merchant-getRecipes-should-return-an-immutable-list.patch index cbb0cdc05..d40a7cf8d 100644 --- a/patches/server/0493-Merchant-getRecipes-should-return-an-immutable-list.patch +++ b/patches/server/0492-Merchant-getRecipes-should-return-an-immutable-list.patch @@ -5,15 +5,15 @@ Subject: [PATCH] Merchant#getRecipes should return an immutable list diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMerchant.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMerchant.java -index 425c8de426cecc9919d03dc64325494104d1b294..71be1e4f17ded6ea42e36be0a9b534c6a65ec640 100644 +index 770686757a87d923ecb0361ba0939b4f7d184d76..72b5f6724278ec78605d7f435ef7ca340f195f5b 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMerchant.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMerchant.java -@@ -24,7 +24,7 @@ public class CraftMerchant implements Merchant { +@@ -16,7 +16,7 @@ public interface CraftMerchant extends Merchant { @Override - public List getRecipes() { -- return Collections.unmodifiableList(Lists.transform(this.merchant.getOffers(), new Function() { -+ return List.copyOf(Lists.transform(this.merchant.getOffers(), new Function() { // Paper - javadoc says 'an immutable list of trades' - not 'an unmodifiable view of a list of trades'. fixes issue with setRecipes(getRecipes()) + default List getRecipes() { +- return Collections.unmodifiableList(Lists.transform(this.getMerchant().getOffers(), new Function() { ++ return List.copyOf(Lists.transform(this.getMerchant().getOffers(), new Function() { // Paper - javadoc says 'an immutable list of trades' - not 'an unmodifiable view of a list of trades'. fixes issue with setRecipes(getRecipes()) @Override public MerchantRecipe apply(net.minecraft.world.item.trading.MerchantOffer recipe) { return recipe.asBukkit(); diff --git a/patches/server/0494-Expose-Tracked-Players.patch b/patches/server/0493-Expose-Tracked-Players.patch similarity index 100% rename from patches/server/0494-Expose-Tracked-Players.patch rename to patches/server/0493-Expose-Tracked-Players.patch diff --git a/patches/server/0495-Improve-ServerGUI.patch b/patches/server/0494-Improve-ServerGUI.patch similarity index 100% rename from patches/server/0495-Improve-ServerGUI.patch rename to patches/server/0494-Improve-ServerGUI.patch diff --git a/patches/server/0496-fix-converting-txt-to-json-file.patch b/patches/server/0495-fix-converting-txt-to-json-file.patch similarity index 97% rename from patches/server/0496-fix-converting-txt-to-json-file.patch rename to patches/server/0495-fix-converting-txt-to-json-file.patch index 8657ccb6b..2134c1062 100644 --- a/patches/server/0496-fix-converting-txt-to-json-file.patch +++ b/patches/server/0495-fix-converting-txt-to-json-file.patch @@ -48,7 +48,7 @@ index 2b1d7a2360a9ee7bca9d93a2dc8c61d1648a8348..d5153f804cfcfd1a70c46975e3fb1e50 if (!OldUsersConverter.serverReadyAfterUserconversion(this)) { return false; diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 7c334ac1ae2a1b14b7570127e775a5e7d7ab2ae7..3ed10df63671725b823247840bb057292f747f3f 100644 +index 9b94ca912f99a3a465f30130b24347fc9aca72ff..123fe4f5b98a7483af86695ec82987abd45eafb2 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -179,6 +179,7 @@ public abstract class PlayerList { diff --git a/patches/server/0497-Add-worldborder-events.patch b/patches/server/0496-Add-worldborder-events.patch similarity index 100% rename from patches/server/0497-Add-worldborder-events.patch rename to patches/server/0496-Add-worldborder-events.patch diff --git a/patches/server/0498-Add-PlayerNameEntityEvent.patch b/patches/server/0497-Add-PlayerNameEntityEvent.patch similarity index 100% rename from patches/server/0498-Add-PlayerNameEntityEvent.patch rename to patches/server/0497-Add-PlayerNameEntityEvent.patch diff --git a/patches/server/0499-Add-recipe-to-cook-events.patch b/patches/server/0498-Add-recipe-to-cook-events.patch similarity index 100% rename from patches/server/0499-Add-recipe-to-cook-events.patch rename to patches/server/0498-Add-recipe-to-cook-events.patch diff --git a/patches/server/0500-Add-Block-isValidTool.patch b/patches/server/0499-Add-Block-isValidTool.patch similarity index 100% rename from patches/server/0500-Add-Block-isValidTool.patch rename to patches/server/0499-Add-Block-isValidTool.patch diff --git a/patches/server/0501-Allow-using-signs-inside-spawn-protection.patch b/patches/server/0500-Allow-using-signs-inside-spawn-protection.patch similarity index 100% rename from patches/server/0501-Allow-using-signs-inside-spawn-protection.patch rename to patches/server/0500-Allow-using-signs-inside-spawn-protection.patch diff --git a/patches/server/0502-Expand-world-key-API.patch b/patches/server/0501-Expand-world-key-API.patch similarity index 97% rename from patches/server/0502-Expand-world-key-API.patch rename to patches/server/0501-Expand-world-key-API.patch index bf1f6198d..f2077e285 100644 --- a/patches/server/0502-Expand-world-key-API.patch +++ b/patches/server/0501-Expand-world-key-API.patch @@ -20,7 +20,7 @@ index 1963e826548c5a8859c50f57654784c3aef50e44..04a39cb6c13c26e2cb1d73a9da98df5d // Paper end } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index f79af6910c4c83f1c56bc73434846f3e5270509f..3b1e073f8873e23eee187a2d60529c044e3d2f55 100644 +index e4fab101b2d10759b9bd65d35715e377236a5989..99ff052c1935b9eba5fc519ae18c335893595337 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -1181,9 +1181,15 @@ public final class CraftServer implements Server { diff --git a/patches/server/0503-Add-fast-alternative-constructor-for-Rotations.patch b/patches/server/0502-Add-fast-alternative-constructor-for-Rotations.patch similarity index 100% rename from patches/server/0503-Add-fast-alternative-constructor-for-Rotations.patch rename to patches/server/0502-Add-fast-alternative-constructor-for-Rotations.patch diff --git a/patches/server/0504-Drop-carried-item-when-player-has-disconnected.patch b/patches/server/0503-Drop-carried-item-when-player-has-disconnected.patch similarity index 93% rename from patches/server/0504-Drop-carried-item-when-player-has-disconnected.patch rename to patches/server/0503-Drop-carried-item-when-player-has-disconnected.patch index e7dd2e05b..ababb3984 100644 --- a/patches/server/0504-Drop-carried-item-when-player-has-disconnected.patch +++ b/patches/server/0503-Drop-carried-item-when-player-has-disconnected.patch @@ -7,7 +7,7 @@ Fixes disappearance of held items, when a player gets disconnected and PlayerDro Closes #5036 diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 3ed10df63671725b823247840bb057292f747f3f..28d99ca33606d2ff44c639c78edfcaa131faf626 100644 +index 123fe4f5b98a7483af86695ec82987abd45eafb2..bbc6f64a3b2c0702a0a752acd48145cdcafd742e 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -588,6 +588,14 @@ public abstract class PlayerList { diff --git a/patches/server/0505-forced-whitelist-use-configurable-kick-message.patch b/patches/server/0504-forced-whitelist-use-configurable-kick-message.patch similarity index 100% rename from patches/server/0505-forced-whitelist-use-configurable-kick-message.patch rename to patches/server/0504-forced-whitelist-use-configurable-kick-message.patch diff --git a/patches/server/0506-Don-t-ignore-result-of-PlayerEditBookEvent.patch b/patches/server/0505-Don-t-ignore-result-of-PlayerEditBookEvent.patch similarity index 100% rename from patches/server/0506-Don-t-ignore-result-of-PlayerEditBookEvent.patch rename to patches/server/0505-Don-t-ignore-result-of-PlayerEditBookEvent.patch diff --git a/patches/server/0507-Expose-protocol-version.patch b/patches/server/0506-Expose-protocol-version.patch similarity index 100% rename from patches/server/0507-Expose-protocol-version.patch rename to patches/server/0506-Expose-protocol-version.patch diff --git a/patches/server/0508-Enhance-console-tab-completions-for-brigadier-comman.patch b/patches/server/0507-Enhance-console-tab-completions-for-brigadier-comman.patch similarity index 100% rename from patches/server/0508-Enhance-console-tab-completions-for-brigadier-comman.patch rename to patches/server/0507-Enhance-console-tab-completions-for-brigadier-comman.patch diff --git a/patches/server/0509-Fix-PlayerItemConsumeEvent-cancelling-properly.patch b/patches/server/0508-Fix-PlayerItemConsumeEvent-cancelling-properly.patch similarity index 77% rename from patches/server/0509-Fix-PlayerItemConsumeEvent-cancelling-properly.patch rename to patches/server/0508-Fix-PlayerItemConsumeEvent-cancelling-properly.patch index b131d8d3a..a47593aa7 100644 --- a/patches/server/0509-Fix-PlayerItemConsumeEvent-cancelling-properly.patch +++ b/patches/server/0508-Fix-PlayerItemConsumeEvent-cancelling-properly.patch @@ -9,7 +9,7 @@ till their item is switched. This patch clears the active item when the event is cancelled diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 205d2b50232447a4b8b6180a622b968a32311c5f..5b0ff701bd9dd9ccd9596a68732241d689b530d5 100644 +index a89c6ba4140f15e7f68f0df5cf64a176d350123b..afa2d3f5199fcac5c83639bb87e31425da4c5310 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -4011,6 +4011,7 @@ public abstract class LivingEntity extends Entity implements Attackable { @@ -18,5 +18,5 @@ index 205d2b50232447a4b8b6180a622b968a32311c5f..5b0ff701bd9dd9ccd9596a68732241d6 if (event.isCancelled()) { + this.stopUsingItem(); // Paper - event is using an item, clear active item to reset its use // Update client - ((ServerPlayer) this).getBukkitEntity().updateInventory(); - ((ServerPlayer) this).getBukkitEntity().updateScaledHealth(); + if (this.useItem.getItem() instanceof net.minecraft.world.item.SuspiciousStewItem itemSuspiciousStew) { + itemSuspiciousStew.cancelUsingItem(entityPlayer, this.useItem); diff --git a/patches/server/0510-Add-bypass-host-check.patch b/patches/server/0509-Add-bypass-host-check.patch similarity index 100% rename from patches/server/0510-Add-bypass-host-check.patch rename to patches/server/0509-Add-bypass-host-check.patch diff --git a/patches/server/0511-Set-area-affect-cloud-rotation.patch b/patches/server/0510-Set-area-affect-cloud-rotation.patch similarity index 100% rename from patches/server/0511-Set-area-affect-cloud-rotation.patch rename to patches/server/0510-Set-area-affect-cloud-rotation.patch diff --git a/patches/server/0512-add-isDeeplySleeping-to-HumanEntity.patch b/patches/server/0511-add-isDeeplySleeping-to-HumanEntity.patch similarity index 90% rename from patches/server/0512-add-isDeeplySleeping-to-HumanEntity.patch rename to patches/server/0511-add-isDeeplySleeping-to-HumanEntity.patch index 8784fcb16..eaac6f65d 100644 --- a/patches/server/0512-add-isDeeplySleeping-to-HumanEntity.patch +++ b/patches/server/0511-add-isDeeplySleeping-to-HumanEntity.patch @@ -5,7 +5,7 @@ Subject: [PATCH] add isDeeplySleeping to HumanEntity diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java -index 87d067c3a83283931bc16dccf6a304142848cd6a..148279d06dc5bf46aa5d4319f0b7d2ebfcee412d 100644 +index 24aa891ffa9115c05439b06aece85df7a382b7c4..0222b6c68112551336f17a722fc3399898cdc7bb 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java @@ -132,6 +132,13 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity { diff --git a/patches/server/0513-add-consumeFuel-to-FurnaceBurnEvent.patch b/patches/server/0512-add-consumeFuel-to-FurnaceBurnEvent.patch similarity index 100% rename from patches/server/0513-add-consumeFuel-to-FurnaceBurnEvent.patch rename to patches/server/0512-add-consumeFuel-to-FurnaceBurnEvent.patch diff --git a/patches/server/0514-add-get-set-drop-chance-to-EntityEquipment.patch b/patches/server/0513-add-get-set-drop-chance-to-EntityEquipment.patch similarity index 100% rename from patches/server/0514-add-get-set-drop-chance-to-EntityEquipment.patch rename to patches/server/0513-add-get-set-drop-chance-to-EntityEquipment.patch diff --git a/patches/server/0515-fix-PigZombieAngerEvent-cancellation.patch b/patches/server/0514-fix-PigZombieAngerEvent-cancellation.patch similarity index 100% rename from patches/server/0515-fix-PigZombieAngerEvent-cancellation.patch rename to patches/server/0514-fix-PigZombieAngerEvent-cancellation.patch diff --git a/patches/server/0516-fix-PlayerItemHeldEvent-firing-twice.patch b/patches/server/0515-fix-PlayerItemHeldEvent-firing-twice.patch similarity index 100% rename from patches/server/0516-fix-PlayerItemHeldEvent-firing-twice.patch rename to patches/server/0515-fix-PlayerItemHeldEvent-firing-twice.patch diff --git a/patches/server/0517-Add-PlayerDeepSleepEvent.patch b/patches/server/0516-Add-PlayerDeepSleepEvent.patch similarity index 100% rename from patches/server/0517-Add-PlayerDeepSleepEvent.patch rename to patches/server/0516-Add-PlayerDeepSleepEvent.patch diff --git a/patches/server/0518-More-World-API.patch b/patches/server/0517-More-World-API.patch similarity index 100% rename from patches/server/0518-More-World-API.patch rename to patches/server/0517-More-World-API.patch diff --git a/patches/server/0519-Add-PlayerBedFailEnterEvent.patch b/patches/server/0518-Add-PlayerBedFailEnterEvent.patch similarity index 100% rename from patches/server/0519-Add-PlayerBedFailEnterEvent.patch rename to patches/server/0518-Add-PlayerBedFailEnterEvent.patch diff --git a/patches/server/0520-Implement-methods-to-convert-between-Component-and-B.patch b/patches/server/0519-Implement-methods-to-convert-between-Component-and-B.patch similarity index 100% rename from patches/server/0520-Implement-methods-to-convert-between-Component-and-B.patch rename to patches/server/0519-Implement-methods-to-convert-between-Component-and-B.patch diff --git a/patches/server/0521-Expand-PlayerRespawnEvent-fix-passed-parameter-issue.patch b/patches/server/0520-Expand-PlayerRespawnEvent-fix-passed-parameter-issue.patch similarity index 100% rename from patches/server/0521-Expand-PlayerRespawnEvent-fix-passed-parameter-issue.patch rename to patches/server/0520-Expand-PlayerRespawnEvent-fix-passed-parameter-issue.patch diff --git a/patches/server/0522-Introduce-beacon-activation-deactivation-events.patch b/patches/server/0521-Introduce-beacon-activation-deactivation-events.patch similarity index 100% rename from patches/server/0522-Introduce-beacon-activation-deactivation-events.patch rename to patches/server/0521-Introduce-beacon-activation-deactivation-events.patch diff --git a/patches/server/0523-Add-Channel-initialization-listeners.patch b/patches/server/0522-Add-Channel-initialization-listeners.patch similarity index 100% rename from patches/server/0523-Add-Channel-initialization-listeners.patch rename to patches/server/0522-Add-Channel-initialization-listeners.patch diff --git a/patches/server/0524-Send-empty-commands-if-tab-completion-is-disabled.patch b/patches/server/0523-Send-empty-commands-if-tab-completion-is-disabled.patch similarity index 100% rename from patches/server/0524-Send-empty-commands-if-tab-completion-is-disabled.patch rename to patches/server/0523-Send-empty-commands-if-tab-completion-is-disabled.patch diff --git a/patches/server/0525-Add-more-WanderingTrader-API.patch b/patches/server/0524-Add-more-WanderingTrader-API.patch similarity index 100% rename from patches/server/0525-Add-more-WanderingTrader-API.patch rename to patches/server/0524-Add-more-WanderingTrader-API.patch diff --git a/patches/server/0526-Add-EntityBlockStorage-clearEntities.patch b/patches/server/0525-Add-EntityBlockStorage-clearEntities.patch similarity index 100% rename from patches/server/0526-Add-EntityBlockStorage-clearEntities.patch rename to patches/server/0525-Add-EntityBlockStorage-clearEntities.patch diff --git a/patches/server/0527-Add-Adventure-message-to-PlayerAdvancementDoneEvent.patch b/patches/server/0526-Add-Adventure-message-to-PlayerAdvancementDoneEvent.patch similarity index 100% rename from patches/server/0527-Add-Adventure-message-to-PlayerAdvancementDoneEvent.patch rename to patches/server/0526-Add-Adventure-message-to-PlayerAdvancementDoneEvent.patch diff --git a/patches/server/0528-Add-HiddenPotionEffect-API.patch b/patches/server/0527-Add-HiddenPotionEffect-API.patch similarity index 100% rename from patches/server/0528-Add-HiddenPotionEffect-API.patch rename to patches/server/0527-Add-HiddenPotionEffect-API.patch diff --git a/patches/server/0529-Inventory-close.patch b/patches/server/0528-Inventory-close.patch similarity index 100% rename from patches/server/0529-Inventory-close.patch rename to patches/server/0528-Inventory-close.patch diff --git a/patches/server/0530-Add-a-should-burn-in-sunlight-API-for-Phantoms-and-S.patch b/patches/server/0529-Add-a-should-burn-in-sunlight-API-for-Phantoms-and-S.patch similarity index 100% rename from patches/server/0530-Add-a-should-burn-in-sunlight-API-for-Phantoms-and-S.patch rename to patches/server/0529-Add-a-should-burn-in-sunlight-API-for-Phantoms-and-S.patch diff --git a/patches/server/0531-Add-basic-Datapack-API.patch b/patches/server/0530-Add-basic-Datapack-API.patch similarity index 96% rename from patches/server/0531-Add-basic-Datapack-API.patch rename to patches/server/0530-Add-basic-Datapack-API.patch index a01b7be0c..fbd2c201d 100644 --- a/patches/server/0531-Add-basic-Datapack-API.patch +++ b/patches/server/0530-Add-basic-Datapack-API.patch @@ -92,7 +92,7 @@ index 0000000000000000000000000000000000000000..cf4374493c11057451a62a655514415c + } +} diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 3b1e073f8873e23eee187a2d60529c044e3d2f55..46a763c111e97c60f44f1a3bb35bedcc33f97817 100644 +index 99ff052c1935b9eba5fc519ae18c335893595337..1b320ab17379da9b82320e63babb0f395d4b85a8 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -305,6 +305,7 @@ public final class CraftServer implements Server { @@ -111,7 +111,7 @@ index 3b1e073f8873e23eee187a2d60529c044e3d2f55..46a763c111e97c60f44f1a3bb35bedcc } public boolean getCommandBlockOverride(String command) { -@@ -3009,5 +3011,11 @@ public final class CraftServer implements Server { +@@ -3006,5 +3008,11 @@ public final class CraftServer implements Server { public com.destroystokyo.paper.entity.ai.MobGoals getMobGoals() { return mobGoals; } diff --git a/patches/server/0532-Add-environment-variable-to-disable-server-gui.patch b/patches/server/0531-Add-environment-variable-to-disable-server-gui.patch similarity index 100% rename from patches/server/0532-Add-environment-variable-to-disable-server-gui.patch rename to patches/server/0531-Add-environment-variable-to-disable-server-gui.patch diff --git a/patches/server/0533-Expand-PlayerGameModeChangeEvent.patch b/patches/server/0532-Expand-PlayerGameModeChangeEvent.patch similarity index 99% rename from patches/server/0533-Expand-PlayerGameModeChangeEvent.patch rename to patches/server/0532-Expand-PlayerGameModeChangeEvent.patch index 3d0903811..08394e448 100644 --- a/patches/server/0533-Expand-PlayerGameModeChangeEvent.patch +++ b/patches/server/0532-Expand-PlayerGameModeChangeEvent.patch @@ -147,7 +147,7 @@ index 276c0b017452a1d7b60a2a8e779f2f3fcf4960cc..9781047aa5e0a6e6bc9f9c43a1eb347b } } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 3bc62788d63e98eb9b2a2b381272b262040dcb5f..c9dc7c570e86f420cf8c6343c6ffbdbca427e7a7 100644 +index 7de53f6750d478a052bc8ade6edac056565fe068..a85983b947147a1557908846b8773aab29c17fae 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -1654,7 +1654,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0534-ItemStack-repair-check-API.patch b/patches/server/0533-ItemStack-repair-check-API.patch similarity index 100% rename from patches/server/0534-ItemStack-repair-check-API.patch rename to patches/server/0533-ItemStack-repair-check-API.patch diff --git a/patches/server/0535-More-Enchantment-API.patch b/patches/server/0534-More-Enchantment-API.patch similarity index 100% rename from patches/server/0535-More-Enchantment-API.patch rename to patches/server/0534-More-Enchantment-API.patch diff --git a/patches/server/0536-Move-range-check-for-block-placing-up.patch b/patches/server/0535-Move-range-check-for-block-placing-up.patch similarity index 100% rename from patches/server/0536-Move-range-check-for-block-placing-up.patch rename to patches/server/0535-Move-range-check-for-block-placing-up.patch diff --git a/patches/server/0537-Add-Mob-lookAt-API.patch b/patches/server/0536-Add-Mob-lookAt-API.patch similarity index 100% rename from patches/server/0537-Add-Mob-lookAt-API.patch rename to patches/server/0536-Add-Mob-lookAt-API.patch diff --git a/patches/server/0538-Correctly-check-if-bucket-dispenses-will-succeed-for.patch b/patches/server/0537-Correctly-check-if-bucket-dispenses-will-succeed-for.patch similarity index 100% rename from patches/server/0538-Correctly-check-if-bucket-dispenses-will-succeed-for.patch rename to patches/server/0537-Correctly-check-if-bucket-dispenses-will-succeed-for.patch diff --git a/patches/server/0539-Add-Unix-domain-socket-support.patch b/patches/server/0538-Add-Unix-domain-socket-support.patch similarity index 100% rename from patches/server/0539-Add-Unix-domain-socket-support.patch rename to patches/server/0538-Add-Unix-domain-socket-support.patch diff --git a/patches/server/0540-Add-EntityInsideBlockEvent.patch b/patches/server/0539-Add-EntityInsideBlockEvent.patch similarity index 100% rename from patches/server/0540-Add-EntityInsideBlockEvent.patch rename to patches/server/0539-Add-EntityInsideBlockEvent.patch diff --git a/patches/server/0541-Improve-item-default-attribute-API.patch b/patches/server/0540-Improve-item-default-attribute-API.patch similarity index 100% rename from patches/server/0541-Improve-item-default-attribute-API.patch rename to patches/server/0540-Improve-item-default-attribute-API.patch diff --git a/patches/server/0542-Add-cause-to-Weather-ThunderChangeEvents.patch b/patches/server/0541-Add-cause-to-Weather-ThunderChangeEvents.patch similarity index 100% rename from patches/server/0542-Add-cause-to-Weather-ThunderChangeEvents.patch rename to patches/server/0541-Add-cause-to-Weather-ThunderChangeEvents.patch diff --git a/patches/server/0543-More-Lidded-Block-API.patch b/patches/server/0542-More-Lidded-Block-API.patch similarity index 100% rename from patches/server/0543-More-Lidded-Block-API.patch rename to patches/server/0542-More-Lidded-Block-API.patch diff --git a/patches/server/0544-Limit-item-frame-cursors-on-maps.patch b/patches/server/0543-Limit-item-frame-cursors-on-maps.patch similarity index 100% rename from patches/server/0544-Limit-item-frame-cursors-on-maps.patch rename to patches/server/0543-Limit-item-frame-cursors-on-maps.patch diff --git a/patches/server/0545-Add-PlayerKickEvent-causes.patch b/patches/server/0544-Add-PlayerKickEvent-causes.patch similarity index 92% rename from patches/server/0545-Add-PlayerKickEvent-causes.patch rename to patches/server/0544-Add-PlayerKickEvent-causes.patch index a70065712..f970c99ba 100644 --- a/patches/server/0545-Add-PlayerKickEvent-causes.patch +++ b/patches/server/0544-Add-PlayerKickEvent-causes.patch @@ -95,10 +95,21 @@ index d1caaecfdfba1cdeba032f0bc38c06541fa61633..6468b3a25c7527a2fde6899e4812b5cb i++; } diff --git a/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java -index 24bf661e76fb421a8be565d9ea68edf7205254d2..feb529adf2168025c785ab92d95a3246e73c0236 100644 +index a1124405412cdac673f34a63988e7be957506dba..64450024ce8094874875321537ddab71ab5206fa 100644 --- a/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java -@@ -128,7 +128,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack +@@ -62,8 +62,8 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack + } + + @Override +- public void kickPlayer(Component reason) { +- this.disconnect(reason); ++ public void kickPlayer(Component reason, org.bukkit.event.player.PlayerKickEvent.Cause cause) { // Paper - kick event causes ++ this.disconnect(reason, cause); // Paper - kick event causes + } + // CraftBukkit end + private static final Logger LOGGER = LogUtils.getLogger(); +@@ -133,7 +133,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack } else if (!this.isSingleplayerOwner()) { // Paper start - This needs to be handled on the main thread for plugins server.submit(() -> { @@ -107,7 +118,7 @@ index 24bf661e76fb421a8be565d9ea68edf7205254d2..feb529adf2168025c785ab92d95a3246 }); // Paper end - This needs to be handled on the main thread for plugins } -@@ -164,7 +164,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack +@@ -169,7 +169,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack } } catch (Exception ex) { ServerGamePacketListenerImpl.LOGGER.error("Couldn\'t register custom payload", ex); @@ -116,7 +127,7 @@ index 24bf661e76fb421a8be565d9ea68edf7205254d2..feb529adf2168025c785ab92d95a3246 } } else if (identifier.equals(ServerCommonPacketListenerImpl.CUSTOM_UNREGISTER)) { try { -@@ -174,7 +174,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack +@@ -179,7 +179,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack } } catch (Exception ex) { ServerGamePacketListenerImpl.LOGGER.error("Couldn\'t unregister custom payload", ex); @@ -125,7 +136,7 @@ index 24bf661e76fb421a8be565d9ea68edf7205254d2..feb529adf2168025c785ab92d95a3246 } } else { try { -@@ -192,7 +192,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack +@@ -197,7 +197,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack this.cserver.getMessenger().dispatchIncomingMessage(this.player.getBukkitEntity(), identifier.toString(), data); } catch (Exception ex) { ServerGamePacketListenerImpl.LOGGER.error("Couldn\'t dispatch custom payload", ex); @@ -134,7 +145,7 @@ index 24bf661e76fb421a8be565d9ea68edf7205254d2..feb529adf2168025c785ab92d95a3246 } } -@@ -208,7 +208,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack +@@ -213,7 +213,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack PacketUtils.ensureRunningOnSameThread(packet, this, (BlockableEventLoop) this.server); if (packet.action() == ServerboundResourcePackPacket.Action.DECLINED && this.server.isResourcePackRequired()) { ServerCommonPacketListenerImpl.LOGGER.info("Disconnecting {} due to resource pack {} rejection", this.playerProfile().getName(), packet.id()); @@ -143,7 +154,7 @@ index 24bf661e76fb421a8be565d9ea68edf7205254d2..feb529adf2168025c785ab92d95a3246 } // Paper start - adventure pack callbacks // call the callbacks before the previously-existing event so the event has final say -@@ -238,7 +238,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack +@@ -243,7 +243,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack return; } // CraftBukkit end @@ -152,7 +163,7 @@ index 24bf661e76fb421a8be565d9ea68edf7205254d2..feb529adf2168025c785ab92d95a3246 } protected void keepConnectionAlive() { -@@ -250,7 +250,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack +@@ -255,7 +255,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack if (!this.isSingleplayerOwner() && elapsedTime >= 15000L) { // Paper - use vanilla's 15000L between keep alive packets if (this.keepAlivePending && !this.processedDisconnect && elapsedTime >= KEEPALIVE_LIMIT) { // Paper - check keepalive limit, don't fire if already disconnected @@ -161,7 +172,7 @@ index 24bf661e76fb421a8be565d9ea68edf7205254d2..feb529adf2168025c785ab92d95a3246 } else if (this.checkIfClosed(currentTime)) { // Paper this.keepAlivePending = true; this.keepAliveTime = currentTime; -@@ -266,7 +266,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack +@@ -271,7 +271,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack private boolean checkIfClosed(long time) { if (this.closed) { if (time - this.closedListenerTime >= 15000L) { @@ -170,7 +181,7 @@ index 24bf661e76fb421a8be565d9ea68edf7205254d2..feb529adf2168025c785ab92d95a3246 } return false; -@@ -318,15 +318,25 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack +@@ -323,15 +323,25 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack // Paper start - adventure public void disconnect(final net.kyori.adventure.text.Component reason) { @@ -199,7 +210,7 @@ index 24bf661e76fb421a8be565d9ea68edf7205254d2..feb529adf2168025c785ab92d95a3246 // CraftBukkit start - fire PlayerKickEvent if (this.processedDisconnect) { return; -@@ -335,7 +345,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack +@@ -340,7 +350,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack Waitable waitable = new Waitable() { @Override protected Object evaluate() { @@ -208,7 +219,7 @@ index 24bf661e76fb421a8be565d9ea68edf7205254d2..feb529adf2168025c785ab92d95a3246 return null; } }; -@@ -354,7 +364,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack +@@ -359,7 +369,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack net.kyori.adventure.text.Component leaveMessage = net.kyori.adventure.text.Component.translatable("multiplayer.player.left", net.kyori.adventure.text.format.NamedTextColor.YELLOW, io.papermc.paper.configuration.GlobalConfiguration.get().messages.useDisplayNameInQuitMessage ? this.player.getBukkitEntity().displayName() : net.kyori.adventure.text.Component.text(this.player.getScoreboardName())); // Paper - Adventure @@ -418,8 +429,21 @@ index 568f5d7165521304c7a92f32984a1d605d545ad5..b30c71ad0cc2602d2c026433a94c9ca4 } } +diff --git a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java +index d2d153e587e624025ef01fbe3dcfa4bf06f1a06b..e0a10f1d8bf2c0df66e62bdf2a174ce6a66bbd6d 100644 +--- a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java ++++ b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java +@@ -70,7 +70,7 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, + } + + @Override +- public void kickPlayer(Component reason) { ++ public void kickPlayer(Component reason, org.bukkit.event.player.PlayerKickEvent.Cause cause) { // Paper - kick event causes - during login, no event can be called. + this.disconnect(reason); + } + // CraftBukkit end diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index a0e570ae008647c236d24a86325d9bab404f6c9e..a8a92f0bb76467c106da62720dbf9be29caac265 100644 +index bbc6f64a3b2c0702a0a752acd48145cdcafd742e..55a2f234436808258ef59f889a9b253fe79b82e8 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -675,7 +675,7 @@ public abstract class PlayerList { @@ -471,15 +495,24 @@ index f472dea0bd4f834c0c8f0aa59ae7cdae082b14af..2fa51c3a70f43cd23b8f494fc643d66c } } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index c9dc7c570e86f420cf8c6343c6ffbdbca427e7a7..7fb6bfe2863d856f27da29a77026f4bc821c929c 100644 +index a85983b947147a1557908846b8773aab29c17fae..b747df28b862990d5db08329149272c67eb17d94 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -635,7 +635,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { - org.spigotmc.AsyncCatcher.catchOp("player kick"); // Spigot - if (this.getHandle().connection == null) return; +@@ -275,7 +275,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { -- this.getHandle().connection.disconnect(CraftChatMessage.fromStringOrEmpty(message, true)); -+ this.getHandle().connection.disconnect(CraftChatMessage.fromStringOrEmpty(message, true), org.bukkit.event.player.PlayerKickEvent.Cause.PLUGIN); // Paper - kick event cause + void sendPacket(Packet packet); + +- void kickPlayer(Component reason); ++ void kickPlayer(Component reason, org.bukkit.event.player.PlayerKickEvent.Cause cause); // Paper - kick event causes + } + + public record CookieFuture(ResourceLocation key, CompletableFuture future) { +@@ -635,7 +635,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { + @Override + public void kickPlayer(String message) { + org.spigotmc.AsyncCatcher.catchOp("player kick"); // Spigot +- this.getHandle().transferCookieConnection.kickPlayer(CraftChatMessage.fromStringOrEmpty(message, true)); ++ this.getHandle().transferCookieConnection.kickPlayer(CraftChatMessage.fromStringOrEmpty(message, true), org.bukkit.event.player.PlayerKickEvent.Cause.PLUGIN); // Paper - kick event cause } // Paper start diff --git a/patches/server/0546-Add-PufferFishStateChangeEvent.patch b/patches/server/0545-Add-PufferFishStateChangeEvent.patch similarity index 100% rename from patches/server/0546-Add-PufferFishStateChangeEvent.patch rename to patches/server/0545-Add-PufferFishStateChangeEvent.patch diff --git a/patches/server/0547-Fix-PlayerBucketEmptyEvent-result-itemstack.patch b/patches/server/0546-Fix-PlayerBucketEmptyEvent-result-itemstack.patch similarity index 100% rename from patches/server/0547-Fix-PlayerBucketEmptyEvent-result-itemstack.patch rename to patches/server/0546-Fix-PlayerBucketEmptyEvent-result-itemstack.patch diff --git a/patches/server/0548-Synchronize-PalettedContainer-instead-of-ThreadingDe.patch b/patches/server/0547-Synchronize-PalettedContainer-instead-of-ThreadingDe.patch similarity index 100% rename from patches/server/0548-Synchronize-PalettedContainer-instead-of-ThreadingDe.patch rename to patches/server/0547-Synchronize-PalettedContainer-instead-of-ThreadingDe.patch diff --git a/patches/server/0549-Add-option-to-fix-items-merging-through-walls.patch b/patches/server/0548-Add-option-to-fix-items-merging-through-walls.patch similarity index 100% rename from patches/server/0549-Add-option-to-fix-items-merging-through-walls.patch rename to patches/server/0548-Add-option-to-fix-items-merging-through-walls.patch diff --git a/patches/server/0550-Add-BellRevealRaiderEvent.patch b/patches/server/0549-Add-BellRevealRaiderEvent.patch similarity index 100% rename from patches/server/0550-Add-BellRevealRaiderEvent.patch rename to patches/server/0549-Add-BellRevealRaiderEvent.patch diff --git a/patches/server/0551-Fix-invulnerable-end-crystals.patch b/patches/server/0550-Fix-invulnerable-end-crystals.patch similarity index 100% rename from patches/server/0551-Fix-invulnerable-end-crystals.patch rename to patches/server/0550-Fix-invulnerable-end-crystals.patch diff --git a/patches/server/0552-Add-ElderGuardianAppearanceEvent.patch b/patches/server/0551-Add-ElderGuardianAppearanceEvent.patch similarity index 100% rename from patches/server/0552-Add-ElderGuardianAppearanceEvent.patch rename to patches/server/0551-Add-ElderGuardianAppearanceEvent.patch diff --git a/patches/server/0553-Optimize-Biome-Mob-Lookups-for-Mob-Spawning.patch b/patches/server/0552-Optimize-Biome-Mob-Lookups-for-Mob-Spawning.patch similarity index 100% rename from patches/server/0553-Optimize-Biome-Mob-Lookups-for-Mob-Spawning.patch rename to patches/server/0552-Optimize-Biome-Mob-Lookups-for-Mob-Spawning.patch diff --git a/patches/server/0554-Line-Of-Sight-Changes.patch b/patches/server/0553-Line-Of-Sight-Changes.patch similarity index 95% rename from patches/server/0554-Line-Of-Sight-Changes.patch rename to patches/server/0553-Line-Of-Sight-Changes.patch index 14cbad6db..d2ab96a4d 100644 --- a/patches/server/0554-Line-Of-Sight-Changes.patch +++ b/patches/server/0553-Line-Of-Sight-Changes.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Line Of Sight Changes diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 5b0ff701bd9dd9ccd9596a68732241d689b530d5..a3a19f288643ce290c1e2119ba794f2409e83ed0 100644 +index afa2d3f5199fcac5c83639bb87e31425da4c5310..e56ae5170526fdc9d4e6f8b94a1e6ebc77cae582 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -3755,7 +3755,8 @@ public abstract class LivingEntity extends Entity implements Attackable { @@ -45,7 +45,7 @@ index 04a39cb6c13c26e2cb1d73a9da98df5d04df69bc..5d137f8c42356359701e1bea7525f82c // Paper end } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index e03a8bbd13da81644d9f302724c27705d812a10f..64a6ceeccc1464c83a837bdedbe729273cad5343 100644 +index 6a4e5a08acbadf05f93bd663148a8d2400325da3..9032f0d30a781ac142e9a3d3a07cc4d4d51fc92f 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java @@ -630,6 +630,23 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { diff --git a/patches/server/0555-add-per-world-spawn-limits.patch b/patches/server/0554-add-per-world-spawn-limits.patch similarity index 100% rename from patches/server/0555-add-per-world-spawn-limits.patch rename to patches/server/0554-add-per-world-spawn-limits.patch diff --git a/patches/server/0556-Fix-potions-splash-events.patch b/patches/server/0555-Fix-potions-splash-events.patch similarity index 99% rename from patches/server/0556-Fix-potions-splash-events.patch rename to patches/server/0555-Fix-potions-splash-events.patch index 27cedac8c..38cfaf976 100644 --- a/patches/server/0556-Fix-potions-splash-events.patch +++ b/patches/server/0555-Fix-potions-splash-events.patch @@ -143,7 +143,7 @@ index be787a5b52e90796d4f06e17e564f4324807c3e6..cb34cc9443da56c0497c7a0192c8b836 public boolean isLingering() { diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 3e1a70fe1e523946512ac71772439f7fd292623f..88a5b50396fddc18b733a52ad66eedd10751f8ea 100644 +index 36adcab02e97cae2d087bae74cc4ceaf3052a9f8..b93fa1ea73f0b218e6c6bed8bd36694e26544ab0 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -886,6 +886,32 @@ public class CraftEventFactory { diff --git a/patches/server/0557-Add-more-LimitedRegion-API.patch b/patches/server/0556-Add-more-LimitedRegion-API.patch similarity index 100% rename from patches/server/0557-Add-more-LimitedRegion-API.patch rename to patches/server/0556-Add-more-LimitedRegion-API.patch diff --git a/patches/server/0558-Fix-PlayerDropItemEvent-using-wrong-item.patch b/patches/server/0557-Fix-PlayerDropItemEvent-using-wrong-item.patch similarity index 100% rename from patches/server/0558-Fix-PlayerDropItemEvent-using-wrong-item.patch rename to patches/server/0557-Fix-PlayerDropItemEvent-using-wrong-item.patch diff --git a/patches/server/0559-Missing-Entity-API.patch b/patches/server/0558-Missing-Entity-API.patch similarity index 99% rename from patches/server/0559-Missing-Entity-API.patch rename to patches/server/0558-Missing-Entity-API.patch index 2537e57c3..14e5128e2 100644 --- a/patches/server/0559-Missing-Entity-API.patch +++ b/patches/server/0558-Missing-Entity-API.patch @@ -828,7 +828,7 @@ index 2cec61a1bb050c1ef81c5fc3d0afafe9ff29d459..97fa4e1e70203194bd939618b2fad926 + // Paper end } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index 64a6ceeccc1464c83a837bdedbe729273cad5343..543c5b53b0bf32ad8f9a87437fa8b3a472de178b 100644 +index 9032f0d30a781ac142e9a3d3a07cc4d4d51fc92f..73719d488d165ec66a0a1f0301a1bd1ba435259a 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java @@ -123,6 +123,13 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { @@ -845,7 +845,7 @@ index 64a6ceeccc1464c83a837bdedbe729273cad5343..543c5b53b0bf32ad8f9a87437fa8b3a4 @Override public double getAbsorptionAmount() { return this.getHandle().getAbsorptionAmount(); -@@ -909,14 +916,29 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { +@@ -914,14 +921,29 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { @Override public boolean isInvisible() { diff --git a/patches/server/0560-Fix-return-value-of-Block-applyBoneMeal-always-being.patch b/patches/server/0559-Fix-return-value-of-Block-applyBoneMeal-always-being.patch similarity index 100% rename from patches/server/0560-Fix-return-value-of-Block-applyBoneMeal-always-being.patch rename to patches/server/0559-Fix-return-value-of-Block-applyBoneMeal-always-being.patch diff --git a/patches/server/0561-Use-getChunkIfLoadedImmediately-in-places.patch b/patches/server/0560-Use-getChunkIfLoadedImmediately-in-places.patch similarity index 100% rename from patches/server/0561-Use-getChunkIfLoadedImmediately-in-places.patch rename to patches/server/0560-Use-getChunkIfLoadedImmediately-in-places.patch diff --git a/patches/server/0562-Fix-commands-from-signs-not-firing-command-events.patch b/patches/server/0561-Fix-commands-from-signs-not-firing-command-events.patch similarity index 100% rename from patches/server/0562-Fix-commands-from-signs-not-firing-command-events.patch rename to patches/server/0561-Fix-commands-from-signs-not-firing-command-events.patch diff --git a/patches/server/0563-Add-PlayerArmSwingEvent.patch b/patches/server/0562-Add-PlayerArmSwingEvent.patch similarity index 100% rename from patches/server/0563-Add-PlayerArmSwingEvent.patch rename to patches/server/0562-Add-PlayerArmSwingEvent.patch diff --git a/patches/server/0564-Fix-kick-event-leave-message-not-being-sent.patch b/patches/server/0563-Fix-kick-event-leave-message-not-being-sent.patch similarity index 96% rename from patches/server/0564-Fix-kick-event-leave-message-not-being-sent.patch rename to patches/server/0563-Fix-kick-event-leave-message-not-being-sent.patch index 04ae80011..461885e49 100644 --- a/patches/server/0564-Fix-kick-event-leave-message-not-being-sent.patch +++ b/patches/server/0563-Fix-kick-event-leave-message-not-being-sent.patch @@ -17,10 +17,10 @@ index f20019261a09f425137731f7a4b92e889b617334..9982940af7d10ca7799e2c21ac994ea3 public boolean isRealPlayer; // Paper public com.destroystokyo.paper.event.entity.PlayerNaturallySpawnCreaturesEvent playerNaturallySpawnedEvent; // Paper - PlayerNaturallySpawnCreaturesEvent diff --git a/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java -index feb529adf2168025c785ab92d95a3246e73c0236..b43f87ff4b9853b5d4bbea5ff9686d64d9d0d26b 100644 +index 64450024ce8094874875321537ddab71ab5206fa..6998f32f8d79dbdb6b31ffaa126602fc4a428616 100644 --- a/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java -@@ -110,6 +110,11 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack +@@ -115,6 +115,11 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack @Override public void onDisconnect(DisconnectionDetails info) { @@ -32,7 +32,7 @@ index feb529adf2168025c785ab92d95a3246e73c0236..b43f87ff4b9853b5d4bbea5ff9686d64 if (this.isSingleplayerOwner()) { ServerCommonPacketListenerImpl.LOGGER.info("Stopping singleplayer server as player logged out"); this.server.halt(false); -@@ -374,18 +379,17 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack +@@ -379,18 +384,17 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack // Do not kick the player return; } @@ -101,7 +101,7 @@ index 3b20dce53403e241261f270f0a9e32f12b9e368a..08c4d0b79dc1c6e51105487b96e9333a this.server.getPlayerList().broadcastSystemMessage(PaperAdventure.asVanilla(quitMessage), false); // Paper end diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 2b15648549245962c6427af27c3ea34e443b37f3..2f22ae87cd467b73883a38553fab23f8590d17a1 100644 +index 55a2f234436808258ef59f889a9b253fe79b82e8..2b0eed116327e74ff66aa065e42899e74b90abf1 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -561,6 +561,11 @@ public abstract class PlayerList { diff --git a/patches/server/0565-Don-t-apply-cramming-damage-to-players.patch b/patches/server/0564-Don-t-apply-cramming-damage-to-players.patch similarity index 100% rename from patches/server/0565-Don-t-apply-cramming-damage-to-players.patch rename to patches/server/0564-Don-t-apply-cramming-damage-to-players.patch diff --git a/patches/server/0566-Rate-options-and-timings-for-sensors-and-behaviors.patch b/patches/server/0565-Rate-options-and-timings-for-sensors-and-behaviors.patch similarity index 100% rename from patches/server/0566-Rate-options-and-timings-for-sensors-and-behaviors.patch rename to patches/server/0565-Rate-options-and-timings-for-sensors-and-behaviors.patch diff --git a/patches/server/0567-Add-missing-forceDrop-toggles.patch b/patches/server/0566-Add-missing-forceDrop-toggles.patch similarity index 100% rename from patches/server/0567-Add-missing-forceDrop-toggles.patch rename to patches/server/0566-Add-missing-forceDrop-toggles.patch diff --git a/patches/server/0568-Stinger-API.patch b/patches/server/0567-Stinger-API.patch similarity index 95% rename from patches/server/0568-Stinger-API.patch rename to patches/server/0567-Stinger-API.patch index 766da8df4..0ace28bb6 100644 --- a/patches/server/0568-Stinger-API.patch +++ b/patches/server/0567-Stinger-API.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Stinger API diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index 543c5b53b0bf32ad8f9a87437fa8b3a472de178b..e3487e8429b285519a0a12d6d283266225b75a80 100644 +index 73719d488d165ec66a0a1f0301a1bd1ba435259a..1f704ba3b67838718913f892d810364ae6a71d54 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java @@ -361,6 +361,11 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { diff --git a/patches/server/0569-Add-System.out-err-catcher.patch b/patches/server/0568-Add-System.out-err-catcher.patch similarity index 98% rename from patches/server/0569-Add-System.out-err-catcher.patch rename to patches/server/0568-Add-System.out-err-catcher.patch index 738711cfd..139b410ef 100644 --- a/patches/server/0569-Add-System.out-err-catcher.patch +++ b/patches/server/0568-Add-System.out-err-catcher.patch @@ -105,7 +105,7 @@ index 0000000000000000000000000000000000000000..a8e813ca89b033f061e695288b3383bd + } +} diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 46a763c111e97c60f44f1a3bb35bedcc33f97817..1fd9a651e469fcf46752e97bc42d68961b0f2df0 100644 +index 1b320ab17379da9b82320e63babb0f395d4b85a8..e09b0a624a80216db5b6f7882c3765f2eb967b06 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -307,6 +307,7 @@ public final class CraftServer implements Server { diff --git a/patches/server/0570-Prevent-AFK-kick-while-watching-end-credits.patch b/patches/server/0569-Prevent-AFK-kick-while-watching-end-credits.patch similarity index 100% rename from patches/server/0570-Prevent-AFK-kick-while-watching-end-credits.patch rename to patches/server/0569-Prevent-AFK-kick-while-watching-end-credits.patch diff --git a/patches/server/0571-Allow-skipping-writing-of-comments-to-server.propert.patch b/patches/server/0570-Allow-skipping-writing-of-comments-to-server.propert.patch similarity index 100% rename from patches/server/0571-Allow-skipping-writing-of-comments-to-server.propert.patch rename to patches/server/0570-Allow-skipping-writing-of-comments-to-server.propert.patch diff --git a/patches/server/0572-Add-PlayerSetSpawnEvent.patch b/patches/server/0571-Add-PlayerSetSpawnEvent.patch similarity index 98% rename from patches/server/0572-Add-PlayerSetSpawnEvent.patch rename to patches/server/0571-Add-PlayerSetSpawnEvent.patch index 2ab6dede6..28e265e40 100644 --- a/patches/server/0572-Add-PlayerSetSpawnEvent.patch +++ b/patches/server/0571-Add-PlayerSetSpawnEvent.patch @@ -154,7 +154,7 @@ index d1b21afe48dbe1e53d4a046434336be580497165..2dd10cada8d36ed5565481f3f5a5fba1 public SectionPos getLastSectionPos() { diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 3e323c55c01d75b7d2f25d32710afb990b0eee10..5665a0d6ed14e17e1a343794f10e173d864ad9de 100644 +index 2b0eed116327e74ff66aa065e42899e74b90abf1..c7dc335d6da208c224d94256eab11b2c3c63745f 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -845,7 +845,7 @@ public abstract class PlayerList { @@ -187,7 +187,7 @@ index ba22ad1e4253477572d10d71db6db0ebc14d6755..94d067e9eeee73183de25165d8c97043 } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 7fb6bfe2863d856f27da29a77026f4bc821c929c..2f9c5d6825795b6dc8074d04bec944f93ac71a5a 100644 +index b747df28b862990d5db08329149272c67eb17d94..bc0d63f90e352ad4158d1dcc0f21a34954279095 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -1413,9 +1413,9 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0573-Make-hoppers-respect-inventory-max-stack-size.patch b/patches/server/0572-Make-hoppers-respect-inventory-max-stack-size.patch similarity index 100% rename from patches/server/0573-Make-hoppers-respect-inventory-max-stack-size.patch rename to patches/server/0572-Make-hoppers-respect-inventory-max-stack-size.patch diff --git a/patches/server/0574-Optimize-entity-tracker-passenger-checks.patch b/patches/server/0573-Optimize-entity-tracker-passenger-checks.patch similarity index 100% rename from patches/server/0574-Optimize-entity-tracker-passenger-checks.patch rename to patches/server/0573-Optimize-entity-tracker-passenger-checks.patch diff --git a/patches/server/0575-Config-option-for-Piglins-guarding-chests.patch b/patches/server/0574-Config-option-for-Piglins-guarding-chests.patch similarity index 100% rename from patches/server/0575-Config-option-for-Piglins-guarding-chests.patch rename to patches/server/0574-Config-option-for-Piglins-guarding-chests.patch diff --git a/patches/server/0576-Add-EntityDamageItemEvent.patch b/patches/server/0575-Add-EntityDamageItemEvent.patch similarity index 82% rename from patches/server/0576-Add-EntityDamageItemEvent.patch rename to patches/server/0575-Add-EntityDamageItemEvent.patch index e289bb08f..1adcd9358 100644 --- a/patches/server/0576-Add-EntityDamageItemEvent.patch +++ b/patches/server/0575-Add-EntityDamageItemEvent.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add EntityDamageItemEvent diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index 2ee949e1b0015c62499c557d5e359df4b9de6027..14d6e4548703b9b8640913f77406fff85f28d7ef 100644 +index 7497471649bec04ab8b43dec06b31edd892a5cfb..ad1cb11245108b5cb187b686ed7e6bc769193b52 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java @@ -646,14 +646,14 @@ public final class ItemStack implements DataComponentHolder { @@ -52,15 +52,26 @@ index 2ee949e1b0015c62499c557d5e359df4b9de6027..14d6e4548703b9b8640913f77406fff8 } int j = this.getDamageValue() + amount; -@@ -701,7 +709,7 @@ public final class ItemStack implements DataComponentHolder { +@@ -681,8 +689,8 @@ public final class ItemStack implements DataComponentHolder { + if (j >= this.getMaxDamage()) { + Item item = this.getItem(); + // CraftBukkit start - Check for item breaking +- if (this.count == 1) { +- org.bukkit.craftbukkit.event.CraftEventFactory.callPlayerItemBreakEvent(player, this); ++ if (this.count == 1 && player instanceof final ServerPlayer serverPlayer) { // Paper - Add EntityDamageItemEvent ++ org.bukkit.craftbukkit.event.CraftEventFactory.callPlayerItemBreakEvent(serverPlayer, this); // Paper - Add EntityDamageItemEvent + } + // CraftBukkit end + +@@ -706,7 +714,7 @@ public final class ItemStack implements DataComponentHolder { entityplayer = null; } - this.hurtAndBreak(amount, worldserver, entityplayer, (item) -> { + this.hurtAndBreak(amount, worldserver, entity, (item) -> { // Paper - Add EntityDamageItemEvent - // CraftBukkit start - Check for item breaking - if (this.count == 1 && entity instanceof net.minecraft.world.entity.player.Player) { - org.bukkit.craftbukkit.event.CraftEventFactory.callPlayerItemBreakEvent((net.minecraft.world.entity.player.Player) entity, this); + entity.onEquippedItemBroken(item, slot); + }); + } diff --git a/src/main/java/net/minecraft/world/item/enchantment/effects/DamageItem.java b/src/main/java/net/minecraft/world/item/enchantment/effects/DamageItem.java index 70796eef426eece0bc93a173f54e90645377b502..82ac989ca836e3beef7c3773db0183a7e51780e0 100644 --- a/src/main/java/net/minecraft/world/item/enchantment/effects/DamageItem.java diff --git a/patches/server/0577-Optimize-indirect-passenger-iteration.patch b/patches/server/0576-Optimize-indirect-passenger-iteration.patch similarity index 100% rename from patches/server/0577-Optimize-indirect-passenger-iteration.patch rename to patches/server/0576-Optimize-indirect-passenger-iteration.patch diff --git a/patches/server/0578-Configurable-item-frame-map-cursor-update-interval.patch b/patches/server/0577-Configurable-item-frame-map-cursor-update-interval.patch similarity index 100% rename from patches/server/0578-Configurable-item-frame-map-cursor-update-interval.patch rename to patches/server/0577-Configurable-item-frame-map-cursor-update-interval.patch diff --git a/patches/server/0579-Change-EnderEye-target-without-changing-other-things.patch b/patches/server/0578-Change-EnderEye-target-without-changing-other-things.patch similarity index 100% rename from patches/server/0579-Change-EnderEye-target-without-changing-other-things.patch rename to patches/server/0578-Change-EnderEye-target-without-changing-other-things.patch diff --git a/patches/server/0580-Add-BlockBreakBlockEvent.patch b/patches/server/0579-Add-BlockBreakBlockEvent.patch similarity index 100% rename from patches/server/0580-Add-BlockBreakBlockEvent.patch rename to patches/server/0579-Add-BlockBreakBlockEvent.patch diff --git a/patches/server/0581-Option-to-prevent-data-components-copy-in-smithing-r.patch b/patches/server/0580-Option-to-prevent-data-components-copy-in-smithing-r.patch similarity index 100% rename from patches/server/0581-Option-to-prevent-data-components-copy-in-smithing-r.patch rename to patches/server/0580-Option-to-prevent-data-components-copy-in-smithing-r.patch diff --git a/patches/server/0582-More-CommandBlock-API.patch b/patches/server/0581-More-CommandBlock-API.patch similarity index 100% rename from patches/server/0582-More-CommandBlock-API.patch rename to patches/server/0581-More-CommandBlock-API.patch diff --git a/patches/server/0583-Add-missing-team-sidebar-display-slots.patch b/patches/server/0582-Add-missing-team-sidebar-display-slots.patch similarity index 100% rename from patches/server/0583-Add-missing-team-sidebar-display-slots.patch rename to patches/server/0582-Add-missing-team-sidebar-display-slots.patch diff --git a/patches/server/0584-Add-back-EntityPortalExitEvent.patch b/patches/server/0583-Add-back-EntityPortalExitEvent.patch similarity index 100% rename from patches/server/0584-Add-back-EntityPortalExitEvent.patch rename to patches/server/0583-Add-back-EntityPortalExitEvent.patch diff --git a/patches/server/0585-Add-methods-to-find-targets-for-lightning-strikes.patch b/patches/server/0584-Add-methods-to-find-targets-for-lightning-strikes.patch similarity index 100% rename from patches/server/0585-Add-methods-to-find-targets-for-lightning-strikes.patch rename to patches/server/0584-Add-methods-to-find-targets-for-lightning-strikes.patch diff --git a/patches/server/0586-Get-entity-default-attributes.patch b/patches/server/0585-Get-entity-default-attributes.patch similarity index 100% rename from patches/server/0586-Get-entity-default-attributes.patch rename to patches/server/0585-Get-entity-default-attributes.patch diff --git a/patches/server/0587-Left-handed-API.patch b/patches/server/0586-Left-handed-API.patch similarity index 100% rename from patches/server/0587-Left-handed-API.patch rename to patches/server/0586-Left-handed-API.patch diff --git a/patches/server/0588-Add-more-advancement-API.patch b/patches/server/0587-Add-more-advancement-API.patch similarity index 100% rename from patches/server/0588-Add-more-advancement-API.patch rename to patches/server/0587-Add-more-advancement-API.patch diff --git a/patches/server/0589-Add-ItemFactory-getSpawnEgg-API.patch b/patches/server/0588-Add-ItemFactory-getSpawnEgg-API.patch similarity index 100% rename from patches/server/0589-Add-ItemFactory-getSpawnEgg-API.patch rename to patches/server/0588-Add-ItemFactory-getSpawnEgg-API.patch diff --git a/patches/server/0590-Add-critical-damage-API.patch b/patches/server/0589-Add-critical-damage-API.patch similarity index 98% rename from patches/server/0590-Add-critical-damage-API.patch rename to patches/server/0589-Add-critical-damage-API.patch index dd78b506d..554a8471d 100644 --- a/patches/server/0590-Add-critical-damage-API.patch +++ b/patches/server/0589-Add-critical-damage-API.patch @@ -61,7 +61,7 @@ index 746bb8a36bd6c6ef953289576af499caad588d79..57ebb96707748e90810dc07471f9769f int k = entity.getRemainingFireTicks(); diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 88a5b50396fddc18b733a52ad66eedd10751f8ea..03a6ca13218d43ad0c5fc461564d004008ee3e06 100644 +index b93fa1ea73f0b218e6c6bed8bd36694e26544ab0..5fc6ef13cdc9df11b0fd2b0baf3cec862ccb5e37 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -1080,7 +1080,7 @@ public class CraftEventFactory { diff --git a/patches/server/0591-Fix-issues-with-mob-conversion.patch b/patches/server/0590-Fix-issues-with-mob-conversion.patch similarity index 100% rename from patches/server/0591-Fix-issues-with-mob-conversion.patch rename to patches/server/0590-Fix-issues-with-mob-conversion.patch diff --git a/patches/server/0592-Add-hasCollision-methods-to-various-places.patch b/patches/server/0591-Add-hasCollision-methods-to-various-places.patch similarity index 100% rename from patches/server/0592-Add-hasCollision-methods-to-various-places.patch rename to patches/server/0591-Add-hasCollision-methods-to-various-places.patch diff --git a/patches/server/0593-Goat-ram-API.patch b/patches/server/0592-Goat-ram-API.patch similarity index 100% rename from patches/server/0593-Goat-ram-API.patch rename to patches/server/0592-Goat-ram-API.patch diff --git a/patches/server/0594-Add-API-for-resetting-a-single-score.patch b/patches/server/0593-Add-API-for-resetting-a-single-score.patch similarity index 100% rename from patches/server/0594-Add-API-for-resetting-a-single-score.patch rename to patches/server/0593-Add-API-for-resetting-a-single-score.patch diff --git a/patches/server/0595-Add-Raw-Byte-Entity-Serialization.patch b/patches/server/0594-Add-Raw-Byte-Entity-Serialization.patch similarity index 100% rename from patches/server/0595-Add-Raw-Byte-Entity-Serialization.patch rename to patches/server/0594-Add-Raw-Byte-Entity-Serialization.patch diff --git a/patches/server/0596-Vanilla-command-permission-fixes.patch b/patches/server/0595-Vanilla-command-permission-fixes.patch similarity index 100% rename from patches/server/0596-Vanilla-command-permission-fixes.patch rename to patches/server/0595-Vanilla-command-permission-fixes.patch diff --git a/patches/server/0597-Do-not-run-close-logic-for-inventories-on-chunk-unlo.patch b/patches/server/0596-Do-not-run-close-logic-for-inventories-on-chunk-unlo.patch similarity index 100% rename from patches/server/0597-Do-not-run-close-logic-for-inventories-on-chunk-unlo.patch rename to patches/server/0596-Do-not-run-close-logic-for-inventories-on-chunk-unlo.patch diff --git a/patches/server/0598-Fix-GameProfileCache-concurrency.patch b/patches/server/0597-Fix-GameProfileCache-concurrency.patch similarity index 100% rename from patches/server/0598-Fix-GameProfileCache-concurrency.patch rename to patches/server/0597-Fix-GameProfileCache-concurrency.patch diff --git a/patches/server/0599-Improve-and-expand-AsyncCatcher.patch b/patches/server/0598-Improve-and-expand-AsyncCatcher.patch similarity index 98% rename from patches/server/0599-Improve-and-expand-AsyncCatcher.patch rename to patches/server/0598-Improve-and-expand-AsyncCatcher.patch index aa1ddf28c..08143bc4a 100644 --- a/patches/server/0599-Improve-and-expand-AsyncCatcher.patch +++ b/patches/server/0598-Improve-and-expand-AsyncCatcher.patch @@ -29,7 +29,7 @@ index 44d1cd3e6047590a989a2b85c759be4c64125a47..926c0a5f4eaaa8fb650905216d2303fb if (player.isRemoved()) { LOGGER.info("Attempt to teleport removed player {} restricted", player.getScoreboardName()); diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index a3a19f288643ce290c1e2119ba794f2409e83ed0..6625d0b4cec8e5660c0dbd7965130495e3c94682 100644 +index e56ae5170526fdc9d4e6f8b94a1e6ebc77cae582..4132b5dfbc6a7693f0bb923a8b14ded571560030 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -1122,7 +1122,7 @@ public abstract class LivingEntity extends Entity implements Attackable { @@ -202,7 +202,7 @@ index 390cacc7916d1322a7e1e8bff004d415e9fa5622..786a3722f3a50d828e5abe2ff9d415b0 ClientboundSoundEntityPacket packet = new ClientboundSoundEntityPacket(Holder.direct(SoundEvent.createVariableRangeEvent(ResourceLocation.parse(sound))), net.minecraft.sounds.SoundSource.valueOf(category.name()), craftEntity.getHandle(), volume, pitch, seed); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index e3487e8429b285519a0a12d6d283266225b75a80..464d67075e052f13e86b51f3e71d05a6536ef540 100644 +index 1f704ba3b67838718913f892d810364ae6a71d54..097f03c83a90f476b74834407d2dcd0e98fe010a 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java @@ -524,6 +524,7 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { diff --git a/patches/server/0600-Add-paper-mobcaps-and-paper-playermobcaps.patch b/patches/server/0599-Add-paper-mobcaps-and-paper-playermobcaps.patch similarity index 99% rename from patches/server/0600-Add-paper-mobcaps-and-paper-playermobcaps.patch rename to patches/server/0599-Add-paper-mobcaps-and-paper-playermobcaps.patch index 80492474a..10f4a156d 100644 --- a/patches/server/0600-Add-paper-mobcaps-and-paper-playermobcaps.patch +++ b/patches/server/0599-Add-paper-mobcaps-and-paper-playermobcaps.patch @@ -278,7 +278,7 @@ index 58ea6a1f95a09c22125a8262b1b221004ebce0e4..ea6533c1ac218aa075da3401807a06fc BlockPos blockposition = NaturalSpawner.getRandomPosWithin(world, chunk); diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 1fd9a651e469fcf46752e97bc42d68961b0f2df0..d6ff15c56fe72ec8a04471cca6146bb90b371ece 100644 +index e09b0a624a80216db5b6f7882c3765f2eb967b06..b8117fac959a894c9821c82f624bc463174d3568 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -2329,6 +2329,11 @@ public final class CraftServer implements Server { diff --git a/patches/server/0601-Sanitize-ResourceLocation-error-logging.patch b/patches/server/0600-Sanitize-ResourceLocation-error-logging.patch similarity index 100% rename from patches/server/0601-Sanitize-ResourceLocation-error-logging.patch rename to patches/server/0600-Sanitize-ResourceLocation-error-logging.patch diff --git a/patches/server/0602-Manually-inline-methods-in-BlockPosition.patch b/patches/server/0601-Manually-inline-methods-in-BlockPosition.patch similarity index 100% rename from patches/server/0602-Manually-inline-methods-in-BlockPosition.patch rename to patches/server/0601-Manually-inline-methods-in-BlockPosition.patch diff --git a/patches/server/0603-Name-craft-scheduler-threads-according-to-the-plugin.patch b/patches/server/0602-Name-craft-scheduler-threads-according-to-the-plugin.patch similarity index 100% rename from patches/server/0603-Name-craft-scheduler-threads-according-to-the-plugin.patch rename to patches/server/0602-Name-craft-scheduler-threads-according-to-the-plugin.patch diff --git a/patches/server/0604-Make-sure-inlined-getChunkAt-has-inlined-logic-for-l.patch b/patches/server/0603-Make-sure-inlined-getChunkAt-has-inlined-logic-for-l.patch similarity index 100% rename from patches/server/0604-Make-sure-inlined-getChunkAt-has-inlined-logic-for-l.patch rename to patches/server/0603-Make-sure-inlined-getChunkAt-has-inlined-logic-for-l.patch diff --git a/patches/server/0605-Don-t-read-neighbour-chunk-data-off-disk-when-conver.patch b/patches/server/0604-Don-t-read-neighbour-chunk-data-off-disk-when-conver.patch similarity index 100% rename from patches/server/0605-Don-t-read-neighbour-chunk-data-off-disk-when-conver.patch rename to patches/server/0604-Don-t-read-neighbour-chunk-data-off-disk-when-conver.patch diff --git a/patches/server/0606-Don-t-lookup-fluid-state-when-raytracing-skip-air-bl.patch b/patches/server/0605-Don-t-lookup-fluid-state-when-raytracing-skip-air-bl.patch similarity index 100% rename from patches/server/0606-Don-t-lookup-fluid-state-when-raytracing-skip-air-bl.patch rename to patches/server/0605-Don-t-lookup-fluid-state-when-raytracing-skip-air-bl.patch diff --git a/patches/server/0607-Time-scoreboard-search.patch b/patches/server/0606-Time-scoreboard-search.patch similarity index 100% rename from patches/server/0607-Time-scoreboard-search.patch rename to patches/server/0606-Time-scoreboard-search.patch diff --git a/patches/server/0608-Oprimise-map-impl-for-tracked-players.patch b/patches/server/0607-Oprimise-map-impl-for-tracked-players.patch similarity index 100% rename from patches/server/0608-Oprimise-map-impl-for-tracked-players.patch rename to patches/server/0607-Oprimise-map-impl-for-tracked-players.patch diff --git a/patches/server/0609-Add-missing-InventoryType.patch b/patches/server/0608-Add-missing-InventoryType.patch similarity index 100% rename from patches/server/0609-Add-missing-InventoryType.patch rename to patches/server/0608-Add-missing-InventoryType.patch diff --git a/patches/server/0610-Optimise-BlockSoil-nearby-water-lookup.patch b/patches/server/0609-Optimise-BlockSoil-nearby-water-lookup.patch similarity index 100% rename from patches/server/0610-Optimise-BlockSoil-nearby-water-lookup.patch rename to patches/server/0609-Optimise-BlockSoil-nearby-water-lookup.patch diff --git a/patches/server/0611-Fix-merchant-inventory-not-closing-on-entity-removal.patch b/patches/server/0610-Fix-merchant-inventory-not-closing-on-entity-removal.patch similarity index 100% rename from patches/server/0611-Fix-merchant-inventory-not-closing-on-entity-removal.patch rename to patches/server/0610-Fix-merchant-inventory-not-closing-on-entity-removal.patch diff --git a/patches/server/0612-Check-requirement-before-suggesting-root-nodes.patch b/patches/server/0611-Check-requirement-before-suggesting-root-nodes.patch similarity index 100% rename from patches/server/0612-Check-requirement-before-suggesting-root-nodes.patch rename to patches/server/0611-Check-requirement-before-suggesting-root-nodes.patch diff --git a/patches/server/0613-Don-t-respond-to-ServerboundCommandSuggestionPacket-.patch b/patches/server/0612-Don-t-respond-to-ServerboundCommandSuggestionPacket-.patch similarity index 100% rename from patches/server/0613-Don-t-respond-to-ServerboundCommandSuggestionPacket-.patch rename to patches/server/0612-Don-t-respond-to-ServerboundCommandSuggestionPacket-.patch diff --git a/patches/server/0614-Add-packet-limiter-config.patch b/patches/server/0613-Add-packet-limiter-config.patch similarity index 100% rename from patches/server/0614-Add-packet-limiter-config.patch rename to patches/server/0613-Add-packet-limiter-config.patch diff --git a/patches/server/0615-Fix-setPatternColor-on-tropical-fish-bucket-meta.patch b/patches/server/0614-Fix-setPatternColor-on-tropical-fish-bucket-meta.patch similarity index 100% rename from patches/server/0615-Fix-setPatternColor-on-tropical-fish-bucket-meta.patch rename to patches/server/0614-Fix-setPatternColor-on-tropical-fish-bucket-meta.patch diff --git a/patches/server/0616-Ensure-valid-vehicle-status.patch b/patches/server/0615-Ensure-valid-vehicle-status.patch similarity index 100% rename from patches/server/0616-Ensure-valid-vehicle-status.patch rename to patches/server/0615-Ensure-valid-vehicle-status.patch diff --git a/patches/server/0617-Prevent-softlocked-end-exit-portal-generation.patch b/patches/server/0616-Prevent-softlocked-end-exit-portal-generation.patch similarity index 100% rename from patches/server/0617-Prevent-softlocked-end-exit-portal-generation.patch rename to patches/server/0616-Prevent-softlocked-end-exit-portal-generation.patch diff --git a/patches/server/0618-Fix-CocaoDecorator-causing-a-crash-when-trying-to-ge.patch b/patches/server/0617-Fix-CocaoDecorator-causing-a-crash-when-trying-to-ge.patch similarity index 100% rename from patches/server/0618-Fix-CocaoDecorator-causing-a-crash-when-trying-to-ge.patch rename to patches/server/0617-Fix-CocaoDecorator-causing-a-crash-when-trying-to-ge.patch diff --git a/patches/server/0619-Don-t-log-debug-logging-being-disabled.patch b/patches/server/0618-Don-t-log-debug-logging-being-disabled.patch similarity index 100% rename from patches/server/0619-Don-t-log-debug-logging-being-disabled.patch rename to patches/server/0618-Don-t-log-debug-logging-being-disabled.patch diff --git a/patches/server/0620-fix-various-menus-with-empty-level-accesses.patch b/patches/server/0619-fix-various-menus-with-empty-level-accesses.patch similarity index 100% rename from patches/server/0620-fix-various-menus-with-empty-level-accesses.patch rename to patches/server/0619-fix-various-menus-with-empty-level-accesses.patch diff --git a/patches/server/0621-Preserve-overstacked-loot.patch b/patches/server/0620-Preserve-overstacked-loot.patch similarity index 100% rename from patches/server/0621-Preserve-overstacked-loot.patch rename to patches/server/0620-Preserve-overstacked-loot.patch diff --git a/patches/server/0622-Update-head-rotation-in-missing-places.patch b/patches/server/0621-Update-head-rotation-in-missing-places.patch similarity index 100% rename from patches/server/0622-Update-head-rotation-in-missing-places.patch rename to patches/server/0621-Update-head-rotation-in-missing-places.patch diff --git a/patches/server/0623-prevent-unintended-light-block-manipulation.patch b/patches/server/0622-prevent-unintended-light-block-manipulation.patch similarity index 100% rename from patches/server/0623-prevent-unintended-light-block-manipulation.patch rename to patches/server/0622-prevent-unintended-light-block-manipulation.patch diff --git a/patches/server/0624-Fix-CraftCriteria-defaults-map.patch b/patches/server/0623-Fix-CraftCriteria-defaults-map.patch similarity index 100% rename from patches/server/0624-Fix-CraftCriteria-defaults-map.patch rename to patches/server/0623-Fix-CraftCriteria-defaults-map.patch diff --git a/patches/server/0625-Fix-upstreams-block-state-factories.patch b/patches/server/0624-Fix-upstreams-block-state-factories.patch similarity index 99% rename from patches/server/0625-Fix-upstreams-block-state-factories.patch rename to patches/server/0624-Fix-upstreams-block-state-factories.patch index bfb0aa8f8..737645669 100644 --- a/patches/server/0625-Fix-upstreams-block-state-factories.patch +++ b/patches/server/0624-Fix-upstreams-block-state-factories.patch @@ -26,7 +26,7 @@ index 48bee70ba4188a4a55beb6584224b0f23784dd88..cbb777f499a4e8a447153c04d09c0c71 if (state instanceof InventoryHolder) return (InventoryHolder) state; return null; diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftBlockEntityState.java b/src/main/java/org/bukkit/craftbukkit/block/CraftBlockEntityState.java -index 92133f16c192f5caf9962a08401ff914550747f8..397eb1a101bd60f49dbb2fa8eddf28f6f233167f 100644 +index 302955eed07d3af91f90875583c70a236bbe11b2..f9eb60d5a70da9a4d485288ab03d80829cf171a9 100644 --- a/src/main/java/org/bukkit/craftbukkit/block/CraftBlockEntityState.java +++ b/src/main/java/org/bukkit/craftbukkit/block/CraftBlockEntityState.java @@ -20,7 +20,7 @@ import org.bukkit.persistence.PersistentDataContainer; @@ -38,7 +38,7 @@ index 92133f16c192f5caf9962a08401ff914550747f8..397eb1a101bd60f49dbb2fa8eddf28f6 private final T tileEntity; private final T snapshot; -@@ -181,14 +181,10 @@ public class CraftBlockEntityState extends CraftBlockStat +@@ -188,14 +188,10 @@ public class CraftBlockEntityState extends CraftBlockStat } @Override diff --git a/patches/server/0626-Configurable-feature-seeds.patch b/patches/server/0625-Configurable-feature-seeds.patch similarity index 100% rename from patches/server/0626-Configurable-feature-seeds.patch rename to patches/server/0625-Configurable-feature-seeds.patch diff --git a/patches/server/0627-Add-root-admin-user-detection.patch b/patches/server/0626-Add-root-admin-user-detection.patch similarity index 100% rename from patches/server/0627-Add-root-admin-user-detection.patch rename to patches/server/0626-Add-root-admin-user-detection.patch diff --git a/patches/server/0628-don-t-attempt-to-teleport-dead-entities.patch b/patches/server/0627-don-t-attempt-to-teleport-dead-entities.patch similarity index 100% rename from patches/server/0628-don-t-attempt-to-teleport-dead-entities.patch rename to patches/server/0627-don-t-attempt-to-teleport-dead-entities.patch diff --git a/patches/server/0629-Prevent-excessive-velocity-through-repeated-crits.patch b/patches/server/0628-Prevent-excessive-velocity-through-repeated-crits.patch similarity index 95% rename from patches/server/0629-Prevent-excessive-velocity-through-repeated-crits.patch rename to patches/server/0628-Prevent-excessive-velocity-through-repeated-crits.patch index 545fc13e3..10ce91923 100644 --- a/patches/server/0629-Prevent-excessive-velocity-through-repeated-crits.patch +++ b/patches/server/0628-Prevent-excessive-velocity-through-repeated-crits.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Prevent excessive velocity through repeated crits diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 6625d0b4cec8e5660c0dbd7965130495e3c94682..7e61fa6c2b25296b793e1059868764338ce4430d 100644 +index 4132b5dfbc6a7693f0bb923a8b14ded571560030..ee7bb1a01bf027eb7b28e3795950a17e5f686815 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -2773,17 +2773,29 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/0630-Remove-client-side-code-using-deprecated-for-removal.patch b/patches/server/0629-Remove-client-side-code-using-deprecated-for-removal.patch similarity index 100% rename from patches/server/0630-Remove-client-side-code-using-deprecated-for-removal.patch rename to patches/server/0629-Remove-client-side-code-using-deprecated-for-removal.patch diff --git a/patches/server/0631-Fix-Spigot-growth-modifiers.patch b/patches/server/0630-Fix-Spigot-growth-modifiers.patch similarity index 100% rename from patches/server/0631-Fix-Spigot-growth-modifiers.patch rename to patches/server/0630-Fix-Spigot-growth-modifiers.patch diff --git a/patches/server/0632-Prevent-ContainerOpenersCounter-openCount-from-going.patch b/patches/server/0631-Prevent-ContainerOpenersCounter-openCount-from-going.patch similarity index 100% rename from patches/server/0632-Prevent-ContainerOpenersCounter-openCount-from-going.patch rename to patches/server/0631-Prevent-ContainerOpenersCounter-openCount-from-going.patch diff --git a/patches/server/0633-Add-PlayerItemFrameChangeEvent.patch b/patches/server/0632-Add-PlayerItemFrameChangeEvent.patch similarity index 100% rename from patches/server/0633-Add-PlayerItemFrameChangeEvent.patch rename to patches/server/0632-Add-PlayerItemFrameChangeEvent.patch diff --git a/patches/server/0634-Optimize-HashMapPalette.patch b/patches/server/0633-Optimize-HashMapPalette.patch similarity index 100% rename from patches/server/0634-Optimize-HashMapPalette.patch rename to patches/server/0633-Optimize-HashMapPalette.patch diff --git a/patches/server/0635-Fix-ChunkSnapshot-isSectionEmpty-int-and-optimize-Pa.patch b/patches/server/0634-Fix-ChunkSnapshot-isSectionEmpty-int-and-optimize-Pa.patch similarity index 100% rename from patches/server/0635-Fix-ChunkSnapshot-isSectionEmpty-int-and-optimize-Pa.patch rename to patches/server/0634-Fix-ChunkSnapshot-isSectionEmpty-int-and-optimize-Pa.patch diff --git a/patches/server/0636-Add-more-Campfire-API.patch b/patches/server/0635-Add-more-Campfire-API.patch similarity index 100% rename from patches/server/0636-Add-more-Campfire-API.patch rename to patches/server/0635-Add-more-Campfire-API.patch diff --git a/patches/server/0637-Only-write-chunk-data-to-disk-if-it-serializes-witho.patch b/patches/server/0636-Only-write-chunk-data-to-disk-if-it-serializes-witho.patch similarity index 100% rename from patches/server/0637-Only-write-chunk-data-to-disk-if-it-serializes-witho.patch rename to patches/server/0636-Only-write-chunk-data-to-disk-if-it-serializes-witho.patch diff --git a/patches/server/0638-Forward-CraftEntity-in-teleport-command.patch b/patches/server/0637-Forward-CraftEntity-in-teleport-command.patch similarity index 100% rename from patches/server/0638-Forward-CraftEntity-in-teleport-command.patch rename to patches/server/0637-Forward-CraftEntity-in-teleport-command.patch diff --git a/patches/server/0639-Improve-scoreboard-entries.patch b/patches/server/0638-Improve-scoreboard-entries.patch similarity index 100% rename from patches/server/0639-Improve-scoreboard-entries.patch rename to patches/server/0638-Improve-scoreboard-entries.patch diff --git a/patches/server/0640-Entity-powdered-snow-API.patch b/patches/server/0639-Entity-powdered-snow-API.patch similarity index 100% rename from patches/server/0640-Entity-powdered-snow-API.patch rename to patches/server/0639-Entity-powdered-snow-API.patch diff --git a/patches/server/0641-Add-API-for-item-entity-health.patch b/patches/server/0640-Add-API-for-item-entity-health.patch similarity index 100% rename from patches/server/0641-Add-API-for-item-entity-health.patch rename to patches/server/0640-Add-API-for-item-entity-health.patch diff --git a/patches/server/0642-Configurable-max-block-light-for-monster-spawning.patch b/patches/server/0641-Configurable-max-block-light-for-monster-spawning.patch similarity index 100% rename from patches/server/0642-Configurable-max-block-light-for-monster-spawning.patch rename to patches/server/0641-Configurable-max-block-light-for-monster-spawning.patch diff --git a/patches/server/0643-Fix-sticky-pistons-and-BlockPistonRetractEvent.patch b/patches/server/0642-Fix-sticky-pistons-and-BlockPistonRetractEvent.patch similarity index 100% rename from patches/server/0643-Fix-sticky-pistons-and-BlockPistonRetractEvent.patch rename to patches/server/0642-Fix-sticky-pistons-and-BlockPistonRetractEvent.patch diff --git a/patches/server/0644-Expose-isFuel-and-canSmelt-methods-to-FurnaceInvento.patch b/patches/server/0643-Expose-isFuel-and-canSmelt-methods-to-FurnaceInvento.patch similarity index 100% rename from patches/server/0644-Expose-isFuel-and-canSmelt-methods-to-FurnaceInvento.patch rename to patches/server/0643-Expose-isFuel-and-canSmelt-methods-to-FurnaceInvento.patch diff --git a/patches/server/0645-Bucketable-API.patch b/patches/server/0644-Bucketable-API.patch similarity index 100% rename from patches/server/0645-Bucketable-API.patch rename to patches/server/0644-Bucketable-API.patch diff --git a/patches/server/0646-Validate-usernames.patch b/patches/server/0645-Validate-usernames.patch similarity index 92% rename from patches/server/0646-Validate-usernames.patch rename to patches/server/0645-Validate-usernames.patch index ca5df38a5..0735bfd85 100644 --- a/patches/server/0646-Validate-usernames.patch +++ b/patches/server/0645-Validate-usernames.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Validate usernames diff --git a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java -index baedae23865ea80c6546d1f6f439e1d7712258b9..e9cd90b6bb2f57d605323add43f12962bd7cb843 100644 +index e0a10f1d8bf2c0df66e62bdf2a174ce6a66bbd6d..9c343b579d9735dc59c8c74fde030d981a673c4f 100644 --- a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java -@@ -85,6 +85,7 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, +@@ -90,6 +90,7 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, private final String serverId; private final boolean transferred; private ServerPlayer player; // CraftBukkit @@ -16,7 +16,7 @@ index baedae23865ea80c6546d1f6f439e1d7712258b9..e9cd90b6bb2f57d605323add43f12962 public ServerLoginPacketListenerImpl(MinecraftServer server, Connection connection, boolean transferred) { this.state = ServerLoginPacketListenerImpl.State.HELLO; -@@ -166,7 +167,13 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, +@@ -171,7 +172,13 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, @Override public void handleHello(ServerboundHelloPacket packet) { Validate.validState(this.state == ServerLoginPacketListenerImpl.State.HELLO, "Unexpected hello packet", new Object[0]); @@ -32,7 +32,7 @@ index baedae23865ea80c6546d1f6f439e1d7712258b9..e9cd90b6bb2f57d605323add43f12962 GameProfile gameprofile = this.server.getSingleplayerProfile(); diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index bc5088b4b8a60dcd87eb9a7e0858a5c45bd9a7d4..2b104326f718bdfa263554c60ead798659ab5fa0 100644 +index c7dc335d6da208c224d94256eab11b2c3c63745f..cff45afb90b232a236683bd569d50aab6b701149 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -670,7 +670,7 @@ public abstract class PlayerList { diff --git a/patches/server/0647-Make-water-animal-spawn-height-configurable.patch b/patches/server/0646-Make-water-animal-spawn-height-configurable.patch similarity index 100% rename from patches/server/0647-Make-water-animal-spawn-height-configurable.patch rename to patches/server/0646-Make-water-animal-spawn-height-configurable.patch diff --git a/patches/server/0648-Expose-vanilla-BiomeProvider-from-WorldInfo.patch b/patches/server/0647-Expose-vanilla-BiomeProvider-from-WorldInfo.patch similarity index 99% rename from patches/server/0648-Expose-vanilla-BiomeProvider-from-WorldInfo.patch rename to patches/server/0647-Expose-vanilla-BiomeProvider-from-WorldInfo.patch index e1ea6b3b1..2fa8cd46e 100644 --- a/patches/server/0648-Expose-vanilla-BiomeProvider-from-WorldInfo.patch +++ b/patches/server/0647-Expose-vanilla-BiomeProvider-from-WorldInfo.patch @@ -31,7 +31,7 @@ index 3c947dc0aea06d66a00aeca51355ea41e8d98f88..60a77bd04489ee592ec61d3d739cb306 chunkgenerator = new NoiseBasedChunkGenerator(worldChunkManager, cga.settings); } else if (chunkgenerator instanceof FlatLevelSource cpf) { diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index d6ff15c56fe72ec8a04471cca6146bb90b371ece..dd88ac36749cf13ef0d7a9cd86fa7f7c2b41e509 100644 +index b8117fac959a894c9821c82f624bc463174d3568..8364316aac2c13c99244912122c333feeeb5dd06 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -1306,7 +1306,7 @@ public final class CraftServer implements Server { diff --git a/patches/server/0649-Add-config-option-for-worlds-affected-by-time-cmd.patch b/patches/server/0648-Add-config-option-for-worlds-affected-by-time-cmd.patch similarity index 100% rename from patches/server/0649-Add-config-option-for-worlds-affected-by-time-cmd.patch rename to patches/server/0648-Add-config-option-for-worlds-affected-by-time-cmd.patch diff --git a/patches/server/0650-Add-missing-IAE-check-for-PersistentDataContainer-ha.patch b/patches/server/0649-Add-missing-IAE-check-for-PersistentDataContainer-ha.patch similarity index 100% rename from patches/server/0650-Add-missing-IAE-check-for-PersistentDataContainer-ha.patch rename to patches/server/0649-Add-missing-IAE-check-for-PersistentDataContainer-ha.patch diff --git a/patches/server/0651-Multiple-Entries-with-Scoreboards.patch b/patches/server/0650-Multiple-Entries-with-Scoreboards.patch similarity index 100% rename from patches/server/0651-Multiple-Entries-with-Scoreboards.patch rename to patches/server/0650-Multiple-Entries-with-Scoreboards.patch diff --git a/patches/server/0652-Reset-placed-block-on-exception.patch b/patches/server/0651-Reset-placed-block-on-exception.patch similarity index 100% rename from patches/server/0652-Reset-placed-block-on-exception.patch rename to patches/server/0651-Reset-placed-block-on-exception.patch diff --git a/patches/server/0653-Add-configurable-height-for-slime-spawn.patch b/patches/server/0652-Add-configurable-height-for-slime-spawn.patch similarity index 100% rename from patches/server/0653-Add-configurable-height-for-slime-spawn.patch rename to patches/server/0652-Add-configurable-height-for-slime-spawn.patch diff --git a/patches/server/0654-Fix-xp-reward-for-baby-zombies.patch b/patches/server/0653-Fix-xp-reward-for-baby-zombies.patch similarity index 100% rename from patches/server/0654-Fix-xp-reward-for-baby-zombies.patch rename to patches/server/0653-Fix-xp-reward-for-baby-zombies.patch diff --git a/patches/server/0655-Multi-Block-Change-API-Implementation.patch b/patches/server/0654-Multi-Block-Change-API-Implementation.patch similarity index 97% rename from patches/server/0655-Multi-Block-Change-API-Implementation.patch rename to patches/server/0654-Multi-Block-Change-API-Implementation.patch index 50211358c..740aad583 100644 --- a/patches/server/0655-Multi-Block-Change-API-Implementation.patch +++ b/patches/server/0654-Multi-Block-Change-API-Implementation.patch @@ -24,7 +24,7 @@ index 926ff9be3d9e3f5d620e4c7ccb22b9f64865ff8c..1a37654aff9a9c86c9f7af10a1cf7213 buf.writeLong(this.sectionPos.asLong()); buf.writeVarInt(this.positions.length); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 2f9c5d6825795b6dc8074d04bec944f93ac71a5a..252309281f440e9b7a6be3118363c4d97e5dd767 100644 +index bc0d63f90e352ad4158d1dcc0f21a34954279095..ef289dba67db65a5e43104a4ca68bc03c8c5e4cb 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -930,6 +930,32 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0656-Fix-NotePlayEvent.patch b/patches/server/0655-Fix-NotePlayEvent.patch similarity index 100% rename from patches/server/0656-Fix-NotePlayEvent.patch rename to patches/server/0655-Fix-NotePlayEvent.patch diff --git a/patches/server/0657-Freeze-Tick-Lock-API.patch b/patches/server/0656-Freeze-Tick-Lock-API.patch similarity index 97% rename from patches/server/0657-Freeze-Tick-Lock-API.patch rename to patches/server/0656-Freeze-Tick-Lock-API.patch index 53ce7ac21..69adb442e 100644 --- a/patches/server/0657-Freeze-Tick-Lock-API.patch +++ b/patches/server/0656-Freeze-Tick-Lock-API.patch @@ -46,7 +46,7 @@ index 9f40cc481ded9279319d92fe5a0a9278a3f5d9c2..7d9ebc71b794d40246cbd43ff4de5795 } catch (Throwable throwable) { diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 7e61fa6c2b25296b793e1059868764338ce4430d..04dc54607df503a26cec8f4696db0dc057a15670 100644 +index ee7bb1a01bf027eb7b28e3795950a17e5f686815..01a6e91f1b8f619e99d9bccde12f6e91e6ab5eb8 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -3497,7 +3497,7 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/0658-More-PotionEffectType-API.patch b/patches/server/0657-More-PotionEffectType-API.patch similarity index 100% rename from patches/server/0658-More-PotionEffectType-API.patch rename to patches/server/0657-More-PotionEffectType-API.patch diff --git a/patches/server/0659-Use-a-CHM-for-StructureTemplate.Pallete-cache.patch b/patches/server/0658-Use-a-CHM-for-StructureTemplate.Pallete-cache.patch similarity index 100% rename from patches/server/0659-Use-a-CHM-for-StructureTemplate.Pallete-cache.patch rename to patches/server/0658-Use-a-CHM-for-StructureTemplate.Pallete-cache.patch diff --git a/patches/server/0660-API-for-creating-command-sender-which-forwards-feedb.patch b/patches/server/0659-API-for-creating-command-sender-which-forwards-feedb.patch similarity index 98% rename from patches/server/0660-API-for-creating-command-sender-which-forwards-feedb.patch rename to patches/server/0659-API-for-creating-command-sender-which-forwards-feedb.patch index 9f8601f4a..d6e2e12cf 100644 --- a/patches/server/0660-API-for-creating-command-sender-which-forwards-feedb.patch +++ b/patches/server/0659-API-for-creating-command-sender-which-forwards-feedb.patch @@ -122,7 +122,7 @@ index 0000000000000000000000000000000000000000..e3a5f1ec376319bdfda87fa27ae217bf + } +} diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index dd88ac36749cf13ef0d7a9cd86fa7f7c2b41e509..45dd21e5d51b8eb5df09dcdfc2d942cffb6284b4 100644 +index 8364316aac2c13c99244912122c333feeeb5dd06..d06e1f67e675034fb5d2ed71f409848155521ada 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -2160,6 +2160,13 @@ public final class CraftServer implements Server { diff --git a/patches/server/0661-Add-missing-structure-set-seed-configs.patch b/patches/server/0660-Add-missing-structure-set-seed-configs.patch similarity index 100% rename from patches/server/0661-Add-missing-structure-set-seed-configs.patch rename to patches/server/0660-Add-missing-structure-set-seed-configs.patch diff --git a/patches/server/0662-Fix-cancelled-powdered-snow-bucket-placement.patch b/patches/server/0661-Fix-cancelled-powdered-snow-bucket-placement.patch similarity index 95% rename from patches/server/0662-Fix-cancelled-powdered-snow-bucket-placement.patch rename to patches/server/0661-Fix-cancelled-powdered-snow-bucket-placement.patch index 1080cc2e2..6a3d835ae 100644 --- a/patches/server/0662-Fix-cancelled-powdered-snow-bucket-placement.patch +++ b/patches/server/0661-Fix-cancelled-powdered-snow-bucket-placement.patch @@ -8,7 +8,7 @@ snow bucket didn't revert grass that became snowy because of the placement. diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index 14d6e4548703b9b8640913f77406fff85f28d7ef..eeba6d3aeb50bc7ee6dcfe7cc18eee2487d47357 100644 +index 7daecce161b4853a84520010d430600d9a7a903b..1cfd41f36724f0c54489ad7c1c41486e45467a23 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java @@ -422,7 +422,7 @@ public final class ItemStack implements DataComponentHolder { diff --git a/patches/server/0663-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch b/patches/server/0662-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch similarity index 92% rename from patches/server/0663-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch rename to patches/server/0662-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch index 8844bbcac..23ebb6f9c 100644 --- a/patches/server/0663-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch +++ b/patches/server/0662-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Add missing Validate calls to CraftServer#getSpawnLimit Copies appropriate checks from CraftWorld#getSpawnLimit diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 45dd21e5d51b8eb5df09dcdfc2d942cffb6284b4..8fb85ebcb1fe747d631dc7e5556b2424d853af90 100644 +index d06e1f67e675034fb5d2ed71f409848155521ada..87ef72b05f6bbeac7f0fcdb0bb27b359b277898c 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -2337,6 +2337,8 @@ public final class CraftServer implements Server { diff --git a/patches/server/0664-Add-GameEvent-tags.patch b/patches/server/0663-Add-GameEvent-tags.patch similarity index 97% rename from patches/server/0664-Add-GameEvent-tags.patch rename to patches/server/0663-Add-GameEvent-tags.patch index d2c5a67f7..46706c99d 100644 --- a/patches/server/0664-Add-GameEvent-tags.patch +++ b/patches/server/0663-Add-GameEvent-tags.patch @@ -46,7 +46,7 @@ index 0000000000000000000000000000000000000000..e7d9fd2702a1ce96596580fff8f5ee4f + } +} diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 8fb85ebcb1fe747d631dc7e5556b2424d853af90..ff91b2e2afb58fd4919639a338b6d7c2ba9707a2 100644 +index 87ef72b05f6bbeac7f0fcdb0bb27b359b277898c..9a513feb638c913ee67ff00036efe8d27c3eb5fb 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -2686,6 +2686,15 @@ public final class CraftServer implements Server { diff --git a/patches/server/0665-Execute-chunk-tasks-fairly-for-worlds-while-waiting-.patch b/patches/server/0664-Execute-chunk-tasks-fairly-for-worlds-while-waiting-.patch similarity index 100% rename from patches/server/0665-Execute-chunk-tasks-fairly-for-worlds-while-waiting-.patch rename to patches/server/0664-Execute-chunk-tasks-fairly-for-worlds-while-waiting-.patch diff --git a/patches/server/0666-Furnace-RecipesUsed-API.patch b/patches/server/0665-Furnace-RecipesUsed-API.patch similarity index 100% rename from patches/server/0666-Furnace-RecipesUsed-API.patch rename to patches/server/0665-Furnace-RecipesUsed-API.patch diff --git a/patches/server/0667-Configurable-sculk-sensor-listener-range.patch b/patches/server/0666-Configurable-sculk-sensor-listener-range.patch similarity index 100% rename from patches/server/0667-Configurable-sculk-sensor-listener-range.patch rename to patches/server/0666-Configurable-sculk-sensor-listener-range.patch diff --git a/patches/server/0668-Add-missing-block-data-API.patch b/patches/server/0667-Add-missing-block-data-API.patch similarity index 100% rename from patches/server/0668-Add-missing-block-data-API.patch rename to patches/server/0667-Add-missing-block-data-API.patch diff --git a/patches/server/0669-Option-to-have-default-CustomSpawners-in-custom-worl.patch b/patches/server/0668-Option-to-have-default-CustomSpawners-in-custom-worl.patch similarity index 100% rename from patches/server/0669-Option-to-have-default-CustomSpawners-in-custom-worl.patch rename to patches/server/0668-Option-to-have-default-CustomSpawners-in-custom-worl.patch diff --git a/patches/server/0670-Put-world-into-worldlist-before-initing-the-world.patch b/patches/server/0669-Put-world-into-worldlist-before-initing-the-world.patch similarity index 95% rename from patches/server/0670-Put-world-into-worldlist-before-initing-the-world.patch rename to patches/server/0669-Put-world-into-worldlist-before-initing-the-world.patch index 84f731728..aedcd9477 100644 --- a/patches/server/0670-Put-world-into-worldlist-before-initing-the-world.patch +++ b/patches/server/0669-Put-world-into-worldlist-before-initing-the-world.patch @@ -23,7 +23,7 @@ index aa1fbbe55e3dc8fd6bbf021806c66686f8de3d9a..04286e907ff14cc8c45dbfc6ab12f520 if (worlddata.getCustomBossEvents() != null) { diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index ff91b2e2afb58fd4919639a338b6d7c2ba9707a2..236900b58167e66ce8575a0b83d746b3233bf1be 100644 +index 9a513feb638c913ee67ff00036efe8d27c3eb5fb..65cb367f0824b4045c436dd66809dd9a3eeccbcd 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -1332,10 +1332,11 @@ public final class CraftServer implements Server { diff --git a/patches/server/0671-Custom-Potion-Mixes.patch b/patches/server/0670-Custom-Potion-Mixes.patch similarity index 99% rename from patches/server/0671-Custom-Potion-Mixes.patch rename to patches/server/0670-Custom-Potion-Mixes.patch index 5f68a0891..81f15e071 100644 --- a/patches/server/0671-Custom-Potion-Mixes.patch +++ b/patches/server/0670-Custom-Potion-Mixes.patch @@ -282,7 +282,7 @@ index c8f9972ad1c2330908cc840d426f29c20b242ca8..a2fafef89d5354e2cb02f56728109099 } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 236900b58167e66ce8575a0b83d746b3233bf1be..2431361e771a18e2631ac0493e9501d9e8a99d54 100644 +index 65cb367f0824b4045c436dd66809dd9a3eeccbcd..56fe4a91b557db7bd74c031046231a3bc7ba72c8 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -308,6 +308,7 @@ public final class CraftServer implements Server { @@ -301,7 +301,7 @@ index 236900b58167e66ce8575a0b83d746b3233bf1be..2431361e771a18e2631ac0493e9501d9 datapackManager = new io.papermc.paper.datapack.PaperDatapackManager(console.getPackRepository()); // Paper } -@@ -3049,5 +3051,9 @@ public final class CraftServer implements Server { +@@ -3046,5 +3048,9 @@ public final class CraftServer implements Server { return datapackManager; } diff --git a/patches/server/0672-Force-close-world-loading-screen.patch b/patches/server/0671-Force-close-world-loading-screen.patch similarity index 95% rename from patches/server/0672-Force-close-world-loading-screen.patch rename to patches/server/0671-Force-close-world-loading-screen.patch index d63c80e4e..284d51211 100644 --- a/patches/server/0672-Force-close-world-loading-screen.patch +++ b/patches/server/0671-Force-close-world-loading-screen.patch @@ -10,7 +10,7 @@ so we do not need that. The client only needs the chunk it is currently in to be loaded to close the loading screen, so we just send an empty one. diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 2b104326f718bdfa263554c60ead798659ab5fa0..22c1bf5989065016364505a0665a5205fd8528b5 100644 +index cff45afb90b232a236683bd569d50aab6b701149..e30ad8c7e85c25f3133bbd23dcbe59ae4c2f8db5 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -394,6 +394,16 @@ public abstract class PlayerList { diff --git a/patches/server/0673-Fix-falling-block-spawn-methods.patch b/patches/server/0672-Fix-falling-block-spawn-methods.patch similarity index 100% rename from patches/server/0673-Fix-falling-block-spawn-methods.patch rename to patches/server/0672-Fix-falling-block-spawn-methods.patch diff --git a/patches/server/0674-Expose-furnace-minecart-push-values.patch b/patches/server/0673-Expose-furnace-minecart-push-values.patch similarity index 100% rename from patches/server/0674-Expose-furnace-minecart-push-values.patch rename to patches/server/0673-Expose-furnace-minecart-push-values.patch diff --git a/patches/server/0675-Fix-cancelling-ProjectileHitEvent-for-piercing-arrow.patch b/patches/server/0674-Fix-cancelling-ProjectileHitEvent-for-piercing-arrow.patch similarity index 100% rename from patches/server/0675-Fix-cancelling-ProjectileHitEvent-for-piercing-arrow.patch rename to patches/server/0674-Fix-cancelling-ProjectileHitEvent-for-piercing-arrow.patch diff --git a/patches/server/0676-More-Projectile-API.patch b/patches/server/0675-More-Projectile-API.patch similarity index 99% rename from patches/server/0676-More-Projectile-API.patch rename to patches/server/0675-More-Projectile-API.patch index 280d31b75..120c102c7 100644 --- a/patches/server/0676-More-Projectile-API.patch +++ b/patches/server/0675-More-Projectile-API.patch @@ -50,10 +50,10 @@ index 5b7734020b496ade3740d92908ad2d399bfd55e6..e70ca1b2e6fbbc1f20e65429298d01b4 public boolean calculateOpenWater(BlockPos pos) { FishingHook.OpenWaterType entityfishinghook_waterposition = FishingHook.OpenWaterType.INVALID; diff --git a/src/main/java/net/minecraft/world/entity/projectile/Projectile.java b/src/main/java/net/minecraft/world/entity/projectile/Projectile.java -index 19452d1e591afc06675d57bbebae963517ab7217..bc65321aee27192c40428ac6f58ccec0f0cdc2ee 100644 +index d27e17ebf25cd842a943cf82bde05b2248c74414..06ca07edef062f21c51860146086297ca345104d 100644 --- a/src/main/java/net/minecraft/world/entity/projectile/Projectile.java +++ b/src/main/java/net/minecraft/world/entity/projectile/Projectile.java -@@ -193,7 +193,7 @@ public abstract class Projectile extends Entity implements TraceableEntity { +@@ -190,7 +190,7 @@ public abstract class Projectile extends Entity implements TraceableEntity { } // CraftBukkit start - call projectile hit event @@ -515,7 +515,7 @@ index 6e2f91423371ead9890095cf4b1e2299c4dcba28..9d8f4b7176e60180565e3134a14ecf19 + // Paper end } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index 464d67075e052f13e86b51f3e71d05a6536ef540..34276233751a41b41ee6af99afa97ef7d4bca836 100644 +index 097f03c83a90f476b74834407d2dcd0e98fe010a..3210d7c9405a1a335ef92debf4d85957087bfcf3 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java @@ -596,7 +596,7 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { @@ -713,7 +713,7 @@ index e374b9f40eddca13b30855d25a2030f8df98138f..4fc893378fb0568ddcffc7593d66df6b // Paper end } diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 03a6ca13218d43ad0c5fc461564d004008ee3e06..6aa954c168e5503c1e4cf069e13f518da277cdef 100644 +index 5fc6ef13cdc9df11b0fd2b0baf3cec862ccb5e37..eeb326a115020f571e96f3ec85408950b5eb56fb 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -843,19 +843,19 @@ public class CraftEventFactory { diff --git a/patches/server/0677-Fix-swamp-hut-cat-generation-deadlock.patch b/patches/server/0676-Fix-swamp-hut-cat-generation-deadlock.patch similarity index 100% rename from patches/server/0677-Fix-swamp-hut-cat-generation-deadlock.patch rename to patches/server/0676-Fix-swamp-hut-cat-generation-deadlock.patch diff --git a/patches/server/0678-Don-t-allow-vehicle-movement-from-players-while-tele.patch b/patches/server/0677-Don-t-allow-vehicle-movement-from-players-while-tele.patch similarity index 100% rename from patches/server/0678-Don-t-allow-vehicle-movement-from-players-while-tele.patch rename to patches/server/0677-Don-t-allow-vehicle-movement-from-players-while-tele.patch diff --git a/patches/server/0679-Implement-getComputedBiome-API.patch b/patches/server/0678-Implement-getComputedBiome-API.patch similarity index 100% rename from patches/server/0679-Implement-getComputedBiome-API.patch rename to patches/server/0678-Implement-getComputedBiome-API.patch diff --git a/patches/server/0680-Make-some-itemstacks-nonnull.patch b/patches/server/0679-Make-some-itemstacks-nonnull.patch similarity index 100% rename from patches/server/0680-Make-some-itemstacks-nonnull.patch rename to patches/server/0679-Make-some-itemstacks-nonnull.patch diff --git a/patches/server/0681-Implement-enchantWithLevels-API.patch b/patches/server/0680-Implement-enchantWithLevels-API.patch similarity index 100% rename from patches/server/0681-Implement-enchantWithLevels-API.patch rename to patches/server/0680-Implement-enchantWithLevels-API.patch diff --git a/patches/server/0682-Fix-saving-in-unloadWorld.patch b/patches/server/0681-Fix-saving-in-unloadWorld.patch similarity index 90% rename from patches/server/0682-Fix-saving-in-unloadWorld.patch rename to patches/server/0681-Fix-saving-in-unloadWorld.patch index 329e6c920..a045e38f3 100644 --- a/patches/server/0682-Fix-saving-in-unloadWorld.patch +++ b/patches/server/0681-Fix-saving-in-unloadWorld.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Fix saving in unloadWorld Change savingDisabled to false to ensure ServerLevel's saving logic gets called when unloadWorld is called with save = true diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 2431361e771a18e2631ac0493e9501d9e8a99d54..ea069053feb7a2b99cfea52537d5759893b552a8 100644 +index 56fe4a91b557db7bd74c031046231a3bc7ba72c8..7cc0cd19996df0b37fa0b7c4dc34ee99ad9499cb 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -1381,7 +1381,7 @@ public final class CraftServer implements Server { diff --git a/patches/server/0683-Buffer-OOB-setBlock-calls.patch b/patches/server/0682-Buffer-OOB-setBlock-calls.patch similarity index 100% rename from patches/server/0683-Buffer-OOB-setBlock-calls.patch rename to patches/server/0682-Buffer-OOB-setBlock-calls.patch diff --git a/patches/server/0684-Add-TameableDeathMessageEvent.patch b/patches/server/0683-Add-TameableDeathMessageEvent.patch similarity index 100% rename from patches/server/0684-Add-TameableDeathMessageEvent.patch rename to patches/server/0683-Add-TameableDeathMessageEvent.patch diff --git a/patches/server/0685-Fix-new-block-data-for-EntityChangeBlockEvent.patch b/patches/server/0684-Fix-new-block-data-for-EntityChangeBlockEvent.patch similarity index 99% rename from patches/server/0685-Fix-new-block-data-for-EntityChangeBlockEvent.patch rename to patches/server/0684-Fix-new-block-data-for-EntityChangeBlockEvent.patch index 58f3e0a3d..6dae9bf4a 100644 --- a/patches/server/0685-Fix-new-block-data-for-EntityChangeBlockEvent.patch +++ b/patches/server/0684-Fix-new-block-data-for-EntityChangeBlockEvent.patch @@ -196,7 +196,7 @@ index edc20745649b0837f1371c8d29e71fc0c8e5528f..932831bb5632ead5850842fc77192c84 } // CraftBukkit end diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 6aa954c168e5503c1e4cf069e13f518da277cdef..d793566b2b5b0e996e4122087a883e92b24c216f 100644 +index eeb326a115020f571e96f3ec85408950b5eb56fb..ba1599b733946bef468a9b006411f8827844e791 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -1380,11 +1380,11 @@ public class CraftEventFactory { diff --git a/patches/server/0686-fix-player-loottables-running-when-mob-loot-gamerule.patch b/patches/server/0685-fix-player-loottables-running-when-mob-loot-gamerule.patch similarity index 100% rename from patches/server/0686-fix-player-loottables-running-when-mob-loot-gamerule.patch rename to patches/server/0685-fix-player-loottables-running-when-mob-loot-gamerule.patch diff --git a/patches/server/0687-Ensure-entity-passenger-world-matches-ridden-entity.patch b/patches/server/0686-Ensure-entity-passenger-world-matches-ridden-entity.patch similarity index 100% rename from patches/server/0687-Ensure-entity-passenger-world-matches-ridden-entity.patch rename to patches/server/0686-Ensure-entity-passenger-world-matches-ridden-entity.patch diff --git a/patches/server/0688-Cache-resource-keys-and-optimize-reference-Holder-ta.patch b/patches/server/0687-Cache-resource-keys-and-optimize-reference-Holder-ta.patch similarity index 100% rename from patches/server/0688-Cache-resource-keys-and-optimize-reference-Holder-ta.patch rename to patches/server/0687-Cache-resource-keys-and-optimize-reference-Holder-ta.patch diff --git a/patches/server/0689-Allow-changing-the-EnderDragon-podium.patch b/patches/server/0688-Allow-changing-the-EnderDragon-podium.patch similarity index 100% rename from patches/server/0689-Allow-changing-the-EnderDragon-podium.patch rename to patches/server/0688-Allow-changing-the-EnderDragon-podium.patch diff --git a/patches/server/0690-Fix-NBT-pieces-overriding-a-block-entity-during-worl.patch b/patches/server/0689-Fix-NBT-pieces-overriding-a-block-entity-during-worl.patch similarity index 100% rename from patches/server/0690-Fix-NBT-pieces-overriding-a-block-entity-during-worl.patch rename to patches/server/0689-Fix-NBT-pieces-overriding-a-block-entity-during-worl.patch diff --git a/patches/server/0691-Prevent-tile-entity-copies-loading-chunks.patch b/patches/server/0690-Prevent-tile-entity-copies-loading-chunks.patch similarity index 100% rename from patches/server/0691-Prevent-tile-entity-copies-loading-chunks.patch rename to patches/server/0690-Prevent-tile-entity-copies-loading-chunks.patch diff --git a/patches/server/0692-Use-username-instead-of-display-name-in-PlayerList-g.patch b/patches/server/0691-Use-username-instead-of-display-name-in-PlayerList-g.patch similarity index 92% rename from patches/server/0692-Use-username-instead-of-display-name-in-PlayerList-g.patch rename to patches/server/0691-Use-username-instead-of-display-name-in-PlayerList-g.patch index 111379e7f..2fd1e0290 100644 --- a/patches/server/0692-Use-username-instead-of-display-name-in-PlayerList-g.patch +++ b/patches/server/0691-Use-username-instead-of-display-name-in-PlayerList-g.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Use username instead of display name in diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 4f4546523ec4b7d0dd65b37b5cca128b4d4da793..ada1e8d168b0d4df1a8b9326b6321badef892e39 100644 +index e30ad8c7e85c25f3133bbd23dcbe59ae4c2f8db5..03572023ae7f061bf34fed8ac27852e08d6412c0 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -1393,7 +1393,7 @@ public abstract class PlayerList { diff --git a/patches/server/0693-Expand-PlayerItemDamageEvent.patch b/patches/server/0692-Expand-PlayerItemDamageEvent.patch similarity index 94% rename from patches/server/0693-Expand-PlayerItemDamageEvent.patch rename to patches/server/0692-Expand-PlayerItemDamageEvent.patch index d55000218..1650dd10f 100644 --- a/patches/server/0693-Expand-PlayerItemDamageEvent.patch +++ b/patches/server/0692-Expand-PlayerItemDamageEvent.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Expand PlayerItemDamageEvent diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index eeba6d3aeb50bc7ee6dcfe7cc18eee2487d47357..598507684aed7978fa2e9bae0d959c7d0f9e53d6 100644 +index 1cfd41f36724f0c54489ad7c1c41486e45467a23..889263767ce3a2a4c43a2c61aa9d2d715392607c 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java @@ -650,10 +650,11 @@ public final class ItemStack implements DataComponentHolder { diff --git a/patches/server/0694-WorldCreator-keepSpawnLoaded.patch b/patches/server/0693-WorldCreator-keepSpawnLoaded.patch similarity index 92% rename from patches/server/0694-WorldCreator-keepSpawnLoaded.patch rename to patches/server/0693-WorldCreator-keepSpawnLoaded.patch index 3582da2d5..3e941053c 100644 --- a/patches/server/0694-WorldCreator-keepSpawnLoaded.patch +++ b/patches/server/0693-WorldCreator-keepSpawnLoaded.patch @@ -5,7 +5,7 @@ Subject: [PATCH] WorldCreator#keepSpawnLoaded diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index ea069053feb7a2b99cfea52537d5759893b552a8..d356c69f7059ee12e736f829788f53d62d00516e 100644 +index 7cc0cd19996df0b37fa0b7c4dc34ee99ad9499cb..b09c1359e4bd5f287b9ce3682fd7d9defa8f7e61 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -1324,7 +1324,7 @@ public final class CraftServer implements Server { diff --git a/patches/server/0695-Fix-CME-in-CraftPersistentDataTypeRegistry.patch b/patches/server/0694-Fix-CME-in-CraftPersistentDataTypeRegistry.patch similarity index 100% rename from patches/server/0695-Fix-CME-in-CraftPersistentDataTypeRegistry.patch rename to patches/server/0694-Fix-CME-in-CraftPersistentDataTypeRegistry.patch diff --git a/patches/server/0696-Trigger-bee_nest_destroyed-trigger-in-the-correct-pl.patch b/patches/server/0695-Trigger-bee_nest_destroyed-trigger-in-the-correct-pl.patch similarity index 100% rename from patches/server/0696-Trigger-bee_nest_destroyed-trigger-in-the-correct-pl.patch rename to patches/server/0695-Trigger-bee_nest_destroyed-trigger-in-the-correct-pl.patch diff --git a/patches/server/0697-Add-EntityDyeEvent-and-CollarColorable-interface.patch b/patches/server/0696-Add-EntityDyeEvent-and-CollarColorable-interface.patch similarity index 100% rename from patches/server/0697-Add-EntityDyeEvent-and-CollarColorable-interface.patch rename to patches/server/0696-Add-EntityDyeEvent-and-CollarColorable-interface.patch diff --git a/patches/server/0698-Fire-CauldronLevelChange-on-initial-fill.patch b/patches/server/0697-Fire-CauldronLevelChange-on-initial-fill.patch similarity index 100% rename from patches/server/0698-Fire-CauldronLevelChange-on-initial-fill.patch rename to patches/server/0697-Fire-CauldronLevelChange-on-initial-fill.patch diff --git a/patches/server/0699-fix-powder-snow-cauldrons-not-turning-to-water.patch b/patches/server/0698-fix-powder-snow-cauldrons-not-turning-to-water.patch similarity index 100% rename from patches/server/0699-fix-powder-snow-cauldrons-not-turning-to-water.patch rename to patches/server/0698-fix-powder-snow-cauldrons-not-turning-to-water.patch diff --git a/patches/server/0700-Add-PlayerStopUsingItemEvent.patch b/patches/server/0699-Add-PlayerStopUsingItemEvent.patch similarity index 85% rename from patches/server/0700-Add-PlayerStopUsingItemEvent.patch rename to patches/server/0699-Add-PlayerStopUsingItemEvent.patch index ac53d2916..b27685e2d 100644 --- a/patches/server/0700-Add-PlayerStopUsingItemEvent.patch +++ b/patches/server/0699-Add-PlayerStopUsingItemEvent.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add PlayerStopUsingItemEvent diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 04dc54607df503a26cec8f4696db0dc057a15670..4a9abb2457b175c640d1e59de161fa2370053613 100644 +index 01a6e91f1b8f619e99d9bccde12f6e91e6ab5eb8..5383d231748f2d30b2f2bf3ce07d3667e4d828e9 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -4073,6 +4073,7 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -4076,6 +4076,7 @@ public abstract class LivingEntity extends Entity implements Attackable { public void releaseUsingItem() { if (!this.useItem.isEmpty()) { diff --git a/patches/server/0701-Don-t-tick-markers.patch b/patches/server/0700-Don-t-tick-markers.patch similarity index 100% rename from patches/server/0701-Don-t-tick-markers.patch rename to patches/server/0700-Don-t-tick-markers.patch diff --git a/patches/server/0702-Expand-FallingBlock-API.patch b/patches/server/0701-Expand-FallingBlock-API.patch similarity index 100% rename from patches/server/0702-Expand-FallingBlock-API.patch rename to patches/server/0701-Expand-FallingBlock-API.patch diff --git a/patches/server/0703-Add-support-for-Proxy-Protocol.patch b/patches/server/0702-Add-support-for-Proxy-Protocol.patch similarity index 100% rename from patches/server/0703-Add-support-for-Proxy-Protocol.patch rename to patches/server/0702-Add-support-for-Proxy-Protocol.patch diff --git a/patches/server/0704-Fix-OfflinePlayer-getBedSpawnLocation.patch b/patches/server/0703-Fix-OfflinePlayer-getBedSpawnLocation.patch similarity index 100% rename from patches/server/0704-Fix-OfflinePlayer-getBedSpawnLocation.patch rename to patches/server/0703-Fix-OfflinePlayer-getBedSpawnLocation.patch diff --git a/patches/server/0705-Fix-FurnaceInventory-for-smokers-and-blast-furnaces.patch b/patches/server/0704-Fix-FurnaceInventory-for-smokers-and-blast-furnaces.patch similarity index 100% rename from patches/server/0705-Fix-FurnaceInventory-for-smokers-and-blast-furnaces.patch rename to patches/server/0704-Fix-FurnaceInventory-for-smokers-and-blast-furnaces.patch diff --git a/patches/server/0706-Sanitize-sent-BlockEntity-NBT.patch b/patches/server/0705-Sanitize-sent-BlockEntity-NBT.patch similarity index 100% rename from patches/server/0706-Sanitize-sent-BlockEntity-NBT.patch rename to patches/server/0705-Sanitize-sent-BlockEntity-NBT.patch diff --git a/patches/server/0707-Disable-component-selector-resolving-in-books-by-def.patch b/patches/server/0706-Disable-component-selector-resolving-in-books-by-def.patch similarity index 100% rename from patches/server/0707-Disable-component-selector-resolving-in-books-by-def.patch rename to patches/server/0706-Disable-component-selector-resolving-in-books-by-def.patch diff --git a/patches/server/0708-Prevent-entity-loading-causing-async-lookups.patch b/patches/server/0707-Prevent-entity-loading-causing-async-lookups.patch similarity index 100% rename from patches/server/0708-Prevent-entity-loading-causing-async-lookups.patch rename to patches/server/0707-Prevent-entity-loading-causing-async-lookups.patch diff --git a/patches/server/0709-Throw-exception-on-world-create-while-being-ticked.patch b/patches/server/0708-Throw-exception-on-world-create-while-being-ticked.patch similarity index 97% rename from patches/server/0709-Throw-exception-on-world-create-while-being-ticked.patch rename to patches/server/0708-Throw-exception-on-world-create-while-being-ticked.patch index ab8863889..9d5d28e67 100644 --- a/patches/server/0709-Throw-exception-on-world-create-while-being-ticked.patch +++ b/patches/server/0708-Throw-exception-on-world-create-while-being-ticked.patch @@ -45,7 +45,7 @@ index 8142e4a238066404f3d1685f9cee1a2b91cdd371..acdba56f025fe729398c5549175baad8 this.profiler.popPush("connection"); MinecraftTimings.connectionTimer.startTiming(); // Spigot // Paper diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index d356c69f7059ee12e736f829788f53d62d00516e..f1422bd50cd10f64c9c73e3ac3a93ff9e94d6265 100644 +index b09c1359e4bd5f287b9ce3682fd7d9defa8f7e61..50a4b51ff9b05786ac763f8277bb67c247c04d31 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -916,6 +916,11 @@ public final class CraftServer implements Server { diff --git a/patches/server/0710-Dont-resent-entity-on-art-update.patch b/patches/server/0709-Dont-resent-entity-on-art-update.patch similarity index 100% rename from patches/server/0710-Dont-resent-entity-on-art-update.patch rename to patches/server/0709-Dont-resent-entity-on-art-update.patch diff --git a/patches/server/0711-Add-WardenAngerChangeEvent.patch b/patches/server/0710-Add-WardenAngerChangeEvent.patch similarity index 100% rename from patches/server/0711-Add-WardenAngerChangeEvent.patch rename to patches/server/0710-Add-WardenAngerChangeEvent.patch diff --git a/patches/server/0712-Add-option-for-strict-advancement-dimension-checks.patch b/patches/server/0711-Add-option-for-strict-advancement-dimension-checks.patch similarity index 100% rename from patches/server/0712-Add-option-for-strict-advancement-dimension-checks.patch rename to patches/server/0711-Add-option-for-strict-advancement-dimension-checks.patch diff --git a/patches/server/0713-Add-missing-important-BlockStateListPopulator-method.patch b/patches/server/0712-Add-missing-important-BlockStateListPopulator-method.patch similarity index 100% rename from patches/server/0713-Add-missing-important-BlockStateListPopulator-method.patch rename to patches/server/0712-Add-missing-important-BlockStateListPopulator-method.patch diff --git a/patches/server/0714-Nameable-Banner-API.patch b/patches/server/0713-Nameable-Banner-API.patch similarity index 100% rename from patches/server/0714-Nameable-Banner-API.patch rename to patches/server/0713-Nameable-Banner-API.patch diff --git a/patches/server/0715-Don-t-broadcast-messages-to-command-blocks.patch b/patches/server/0714-Don-t-broadcast-messages-to-command-blocks.patch similarity index 95% rename from patches/server/0715-Don-t-broadcast-messages-to-command-blocks.patch rename to patches/server/0714-Don-t-broadcast-messages-to-command-blocks.patch index f97c37339..6a6b62cf6 100644 --- a/patches/server/0715-Don-t-broadcast-messages-to-command-blocks.patch +++ b/patches/server/0714-Don-t-broadcast-messages-to-command-blocks.patch @@ -20,7 +20,7 @@ index 8c2dcc4134d96351cee75773214f3f47e71533e9..e6bfcc50cdf728216084bc00a5bb8b6b Date date = new Date(); diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index f1422bd50cd10f64c9c73e3ac3a93ff9e94d6265..0274b574e80e133ec1b5033ae09450d2d57db894 100644 +index 50a4b51ff9b05786ac763f8277bb67c247c04d31..21ad1176a1b0a9445486d7be5efb692e745a78c7 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -1923,7 +1923,7 @@ public final class CraftServer implements Server { diff --git a/patches/server/0716-Prevent-empty-items-from-being-added-to-world.patch b/patches/server/0715-Prevent-empty-items-from-being-added-to-world.patch similarity index 100% rename from patches/server/0716-Prevent-empty-items-from-being-added-to-world.patch rename to patches/server/0715-Prevent-empty-items-from-being-added-to-world.patch diff --git a/patches/server/0717-Fix-CCE-for-SplashPotion-and-LingeringPotion-spawnin.patch b/patches/server/0716-Fix-CCE-for-SplashPotion-and-LingeringPotion-spawnin.patch similarity index 100% rename from patches/server/0717-Fix-CCE-for-SplashPotion-and-LingeringPotion-spawnin.patch rename to patches/server/0716-Fix-CCE-for-SplashPotion-and-LingeringPotion-spawnin.patch diff --git a/patches/server/0718-Add-Player-getFishHook.patch b/patches/server/0717-Add-Player-getFishHook.patch similarity index 92% rename from patches/server/0718-Add-Player-getFishHook.patch rename to patches/server/0717-Add-Player-getFishHook.patch index 7ab8083ac..99c85d33b 100644 --- a/patches/server/0718-Add-Player-getFishHook.patch +++ b/patches/server/0717-Add-Player-getFishHook.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add Player#getFishHook diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java -index 148279d06dc5bf46aa5d4319f0b7d2ebfcee412d..0213898b4d029ea9260a755d6411d909a1b6885c 100644 +index 0222b6c68112551336f17a722fc3399898cdc7bb..049db909fbd8610ebb688d948f5d03c97ab23495 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java @@ -160,6 +160,15 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity { diff --git a/patches/server/0719-Do-not-sync-load-chunk-for-dynamic-game-event-listen.patch b/patches/server/0718-Do-not-sync-load-chunk-for-dynamic-game-event-listen.patch similarity index 100% rename from patches/server/0719-Do-not-sync-load-chunk-for-dynamic-game-event-listen.patch rename to patches/server/0718-Do-not-sync-load-chunk-for-dynamic-game-event-listen.patch diff --git a/patches/server/0720-Add-various-missing-EntityDropItemEvent-calls.patch b/patches/server/0719-Add-various-missing-EntityDropItemEvent-calls.patch similarity index 100% rename from patches/server/0720-Add-various-missing-EntityDropItemEvent-calls.patch rename to patches/server/0719-Add-various-missing-EntityDropItemEvent-calls.patch diff --git a/patches/server/0721-Fix-Bee-flower-NPE.patch b/patches/server/0720-Fix-Bee-flower-NPE.patch similarity index 100% rename from patches/server/0721-Fix-Bee-flower-NPE.patch rename to patches/server/0720-Fix-Bee-flower-NPE.patch diff --git a/patches/server/0722-Fix-Spigot-Config-not-using-commands.spam-exclusions.patch b/patches/server/0721-Fix-Spigot-Config-not-using-commands.spam-exclusions.patch similarity index 100% rename from patches/server/0722-Fix-Spigot-Config-not-using-commands.spam-exclusions.patch rename to patches/server/0721-Fix-Spigot-Config-not-using-commands.spam-exclusions.patch diff --git a/patches/server/0723-More-Teleport-API.patch b/patches/server/0722-More-Teleport-API.patch similarity index 99% rename from patches/server/0723-More-Teleport-API.patch rename to patches/server/0722-More-Teleport-API.patch index f7c39c1cf..3465cde97 100644 --- a/patches/server/0723-More-Teleport-API.patch +++ b/patches/server/0722-More-Teleport-API.patch @@ -112,7 +112,7 @@ index 4c09f2529dd8eb7ac7d260d177f5292ff2339442..94051ae8ea93ab144f3767345b1cda04 private final org.bukkit.entity.Entity.Spigot spigot = new org.bukkit.entity.Entity.Spigot() { diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 252309281f440e9b7a6be3118363c4d97e5dd767..78c11d99b6dfdf742dbe24f7b3c2ddbcfd433fd6 100644 +index ef289dba67db65a5e43104a4ca68bc03c8c5e4cb..7f47005c08cccbcb8cd5ac56157c4e0d0dfe10b0 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -1286,13 +1286,101 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0724-Add-EntityPortalReadyEvent.patch b/patches/server/0723-Add-EntityPortalReadyEvent.patch similarity index 100% rename from patches/server/0724-Add-EntityPortalReadyEvent.patch rename to patches/server/0723-Add-EntityPortalReadyEvent.patch diff --git a/patches/server/0725-Don-t-use-level-random-in-entity-constructors.patch b/patches/server/0724-Don-t-use-level-random-in-entity-constructors.patch similarity index 100% rename from patches/server/0725-Don-t-use-level-random-in-entity-constructors.patch rename to patches/server/0724-Don-t-use-level-random-in-entity-constructors.patch diff --git a/patches/server/0726-Send-block-entities-after-destroy-prediction.patch b/patches/server/0725-Send-block-entities-after-destroy-prediction.patch similarity index 100% rename from patches/server/0726-Send-block-entities-after-destroy-prediction.patch rename to patches/server/0725-Send-block-entities-after-destroy-prediction.patch diff --git a/patches/server/0727-Warn-on-plugins-accessing-faraway-chunks.patch b/patches/server/0726-Warn-on-plugins-accessing-faraway-chunks.patch similarity index 100% rename from patches/server/0727-Warn-on-plugins-accessing-faraway-chunks.patch rename to patches/server/0726-Warn-on-plugins-accessing-faraway-chunks.patch diff --git a/patches/server/0728-Custom-Chat-Completion-Suggestions-API.patch b/patches/server/0727-Custom-Chat-Completion-Suggestions-API.patch similarity index 94% rename from patches/server/0728-Custom-Chat-Completion-Suggestions-API.patch rename to patches/server/0727-Custom-Chat-Completion-Suggestions-API.patch index 91d951761..13ea62b5e 100644 --- a/patches/server/0728-Custom-Chat-Completion-Suggestions-API.patch +++ b/patches/server/0727-Custom-Chat-Completion-Suggestions-API.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Custom Chat Completion Suggestions API diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 78c11d99b6dfdf742dbe24f7b3c2ddbcfd433fd6..41e000981d175f121ad92aff47260b8ed76ceb62 100644 +index 7f47005c08cccbcb8cd5ac56157c4e0d0dfe10b0..3374dcd3b1f22b6c1803b9580c4cea6552b6afb1 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -691,6 +691,24 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0729-Add-and-fix-missing-BlockFadeEvents.patch b/patches/server/0728-Add-and-fix-missing-BlockFadeEvents.patch similarity index 100% rename from patches/server/0729-Add-and-fix-missing-BlockFadeEvents.patch rename to patches/server/0728-Add-and-fix-missing-BlockFadeEvents.patch diff --git a/patches/server/0730-Collision-API.patch b/patches/server/0729-Collision-API.patch similarity index 100% rename from patches/server/0730-Collision-API.patch rename to patches/server/0729-Collision-API.patch diff --git a/patches/server/0731-Fix-suggest-command-message-for-brigadier-syntax-exc.patch b/patches/server/0730-Fix-suggest-command-message-for-brigadier-syntax-exc.patch similarity index 100% rename from patches/server/0731-Fix-suggest-command-message-for-brigadier-syntax-exc.patch rename to patches/server/0730-Fix-suggest-command-message-for-brigadier-syntax-exc.patch diff --git a/patches/server/0732-Block-Ticking-API.patch b/patches/server/0731-Block-Ticking-API.patch similarity index 100% rename from patches/server/0732-Block-Ticking-API.patch rename to patches/server/0731-Block-Ticking-API.patch diff --git a/patches/server/0733-Add-Velocity-IP-Forwarding-Support.patch b/patches/server/0732-Add-Velocity-IP-Forwarding-Support.patch similarity index 97% rename from patches/server/0733-Add-Velocity-IP-Forwarding-Support.patch rename to patches/server/0732-Add-Velocity-IP-Forwarding-Support.patch index dbfd8565c..9352ac5b6 100644 --- a/patches/server/0733-Add-Velocity-IP-Forwarding-Support.patch +++ b/patches/server/0732-Add-Velocity-IP-Forwarding-Support.patch @@ -134,10 +134,10 @@ index 585d3e51b4af87327fc2bc64a49f09732a8c61ab..aa39bdb0a4ba8fedf5052ea9700afa7d DedicatedServer.LOGGER.warn("While this makes the game possible to play without internet access, it also opens up the ability for hackers to connect with any username they choose."); } diff --git a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java -index e9cd90b6bb2f57d605323add43f12962bd7cb843..0fc30ce511f449d2a3ddab28c86f7e388223ece1 100644 +index 9c343b579d9735dc59c8c74fde030d981a673c4f..35faa10f3b82504ae9d3f923fc04c5a99c1a624a 100644 --- a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java -@@ -86,6 +86,7 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, +@@ -91,6 +91,7 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, private final boolean transferred; private ServerPlayer player; // CraftBukkit public boolean iKnowThisMayNotBeTheBestIdeaButPleaseDisableUsernameValidation = false; // Paper - username validation overriding @@ -145,7 +145,7 @@ index e9cd90b6bb2f57d605323add43f12962bd7cb843..0fc30ce511f449d2a3ddab28c86f7e38 public ServerLoginPacketListenerImpl(MinecraftServer server, Connection connection, boolean transferred) { this.state = ServerLoginPacketListenerImpl.State.HELLO; -@@ -184,6 +185,16 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, +@@ -189,6 +190,16 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, this.state = ServerLoginPacketListenerImpl.State.KEY; this.connection.send(new ClientboundHelloPacket("", this.server.getKeyPair().getPublic().getEncoded(), this.challenge, true)); } else { @@ -162,7 +162,7 @@ index e9cd90b6bb2f57d605323add43f12962bd7cb843..0fc30ce511f449d2a3ddab28c86f7e38 // CraftBukkit start // Paper start - Cache authenticator threads authenticatorPool.execute(new Runnable() { -@@ -336,6 +347,12 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, +@@ -341,6 +352,12 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, // CraftBukkit start private GameProfile callPlayerPreLoginEvents(GameProfile gameprofile) throws Exception { // Paper - Add more fields to AsyncPlayerPreLoginEvent @@ -175,7 +175,7 @@ index e9cd90b6bb2f57d605323add43f12962bd7cb843..0fc30ce511f449d2a3ddab28c86f7e38 String playerName = gameprofile.getName(); java.net.InetAddress address = ((java.net.InetSocketAddress) this.connection.getRemoteAddress()).getAddress(); java.util.UUID uniqueId = gameprofile.getId(); -@@ -381,6 +398,51 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, +@@ -386,6 +403,51 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, @Override public void handleCustomQueryPacket(ServerboundCustomQueryAnswerPacket packet) { @@ -228,7 +228,7 @@ index e9cd90b6bb2f57d605323add43f12962bd7cb843..0fc30ce511f449d2a3ddab28c86f7e38 } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 0274b574e80e133ec1b5033ae09450d2d57db894..c049c6046e3acd2262c7a474db351ae761457a0e 100644 +index 21ad1176a1b0a9445486d7be5efb692e745a78c7..d0deaa80b404043b8cb3dbc390fd5ec3bff2630b 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -845,7 +845,7 @@ public final class CraftServer implements Server { diff --git a/patches/server/0734-Add-NamespacedKey-biome-methods.patch b/patches/server/0733-Add-NamespacedKey-biome-methods.patch similarity index 100% rename from patches/server/0734-Add-NamespacedKey-biome-methods.patch rename to patches/server/0733-Add-NamespacedKey-biome-methods.patch diff --git a/patches/server/0735-Fix-plugin-loggers-on-server-shutdown.patch b/patches/server/0734-Fix-plugin-loggers-on-server-shutdown.patch similarity index 100% rename from patches/server/0735-Fix-plugin-loggers-on-server-shutdown.patch rename to patches/server/0734-Fix-plugin-loggers-on-server-shutdown.patch diff --git a/patches/server/0736-Stop-large-look-changes-from-crashing-the-server.patch b/patches/server/0735-Stop-large-look-changes-from-crashing-the-server.patch similarity index 91% rename from patches/server/0736-Stop-large-look-changes-from-crashing-the-server.patch rename to patches/server/0735-Stop-large-look-changes-from-crashing-the-server.patch index 93357dd58..1346524b9 100644 --- a/patches/server/0736-Stop-large-look-changes-from-crashing-the-server.patch +++ b/patches/server/0735-Stop-large-look-changes-from-crashing-the-server.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Stop large look changes from crashing the server Co-authored-by: Jaren Knodel diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 4a9abb2457b175c640d1e59de161fa2370053613..9c8e23f92a4cf902b060af4ce74777753e32f207 100644 +index 5383d231748f2d30b2f2bf3ce07d3667e4d828e9..e6d20887572817099cb863515978d3f06926be3d 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -3158,37 +3158,15 @@ public abstract class LivingEntity extends Entity implements Attackable { @@ -54,10 +54,10 @@ index 4a9abb2457b175c640d1e59de161fa2370053613..9c8e23f92a4cf902b060af4ce7477775 this.level().getProfiler().pop(); this.animStep += f2; diff --git a/src/main/java/net/minecraft/world/entity/projectile/Projectile.java b/src/main/java/net/minecraft/world/entity/projectile/Projectile.java -index bc65321aee27192c40428ac6f58ccec0f0cdc2ee..dd53501d39113c4b0b5950bad70a5c667c0781c5 100644 +index 06ca07edef062f21c51860146086297ca345104d..63ffa02f820d88f865ae604712edcf2ac13f0bff 100644 --- a/src/main/java/net/minecraft/world/entity/projectile/Projectile.java +++ b/src/main/java/net/minecraft/world/entity/projectile/Projectile.java -@@ -316,13 +316,7 @@ public abstract class Projectile extends Entity implements TraceableEntity { +@@ -313,13 +313,7 @@ public abstract class Projectile extends Entity implements TraceableEntity { } protected static float lerpRotation(float prevRot, float newRot) { diff --git a/patches/server/0737-Fire-EntityChangeBlockEvent-in-more-places.patch b/patches/server/0736-Fire-EntityChangeBlockEvent-in-more-places.patch similarity index 100% rename from patches/server/0737-Fire-EntityChangeBlockEvent-in-more-places.patch rename to patches/server/0736-Fire-EntityChangeBlockEvent-in-more-places.patch diff --git a/patches/server/0738-Missing-eating-regain-reason.patch b/patches/server/0737-Missing-eating-regain-reason.patch similarity index 100% rename from patches/server/0738-Missing-eating-regain-reason.patch rename to patches/server/0737-Missing-eating-regain-reason.patch diff --git a/patches/server/0739-Missing-effect-cause.patch b/patches/server/0738-Missing-effect-cause.patch similarity index 84% rename from patches/server/0739-Missing-effect-cause.patch rename to patches/server/0738-Missing-effect-cause.patch index f9c09496b..e24048113 100644 --- a/patches/server/0739-Missing-effect-cause.patch +++ b/patches/server/0738-Missing-effect-cause.patch @@ -44,15 +44,15 @@ index aba027a4c73fd7a01556e71cfc39dbe5e9c9464a..d42b64ab58997f45974f70dc660643ac stack.consume(1, user); diff --git a/src/main/java/net/minecraft/world/item/SuspiciousStewItem.java b/src/main/java/net/minecraft/world/item/SuspiciousStewItem.java -index 6dccaec9834c110dde4d8b66bfd400c3306c2867..da559bf12574a5bb13c43b97282aabd3d7a71274 100644 +index f15c54be432480ae5bcda3a60e21e54fdce04b8a..5b448006debecab983167d15fac59fc2a04805df 100644 --- a/src/main/java/net/minecraft/world/item/SuspiciousStewItem.java +++ b/src/main/java/net/minecraft/world/item/SuspiciousStewItem.java -@@ -37,7 +37,7 @@ public class SuspiciousStewItem extends Item { - SuspiciousStewEffects suspiciousStewEffects = stack.getOrDefault(DataComponents.SUSPICIOUS_STEW_EFFECTS, SuspiciousStewEffects.EMPTY); +@@ -48,7 +48,7 @@ public class SuspiciousStewItem extends Item { + while (iterator.hasNext()) { + SuspiciousStewEffects.Entry suspicioussteweffects_a = (SuspiciousStewEffects.Entry) iterator.next(); - for (SuspiciousStewEffects.Entry entry : suspiciousStewEffects.effects()) { -- user.addEffect(entry.createEffectInstance()); -+ user.addEffect(entry.createEffectInstance(), org.bukkit.event.entity.EntityPotionEffectEvent.Cause.FOOD); // Paper - Add missing effect cause +- user.addEffect(suspicioussteweffects_a.createEffectInstance()); ++ user.addEffect(suspicioussteweffects_a.createEffectInstance(), org.bukkit.event.entity.EntityPotionEffectEvent.Cause.FOOD); // Paper - Add missing effect cause } return super.finishUsingItem(stack, world, user); diff --git a/patches/server/0740-Added-byte-array-serialization-deserialization-for-P.patch b/patches/server/0739-Added-byte-array-serialization-deserialization-for-P.patch similarity index 100% rename from patches/server/0740-Added-byte-array-serialization-deserialization-for-P.patch rename to patches/server/0739-Added-byte-array-serialization-deserialization-for-P.patch diff --git a/patches/server/0741-Add-a-consumer-parameter-to-ProjectileSource-launchP.patch b/patches/server/0740-Add-a-consumer-parameter-to-ProjectileSource-launchP.patch similarity index 97% rename from patches/server/0741-Add-a-consumer-parameter-to-ProjectileSource-launchP.patch rename to patches/server/0740-Add-a-consumer-parameter-to-ProjectileSource-launchP.patch index 1472e064a..5f204ad2b 100644 --- a/patches/server/0741-Add-a-consumer-parameter-to-ProjectileSource-launchP.patch +++ b/patches/server/0740-Add-a-consumer-parameter-to-ProjectileSource-launchP.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add a consumer parameter to ProjectileSource#launchProjectile diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index 34276233751a41b41ee6af99afa97ef7d4bca836..f278346bb5fe816f3c559a02692b125dde0446f4 100644 +index 3210d7c9405a1a335ef92debf4d85957087bfcf3..ae3bf4adc93ebd5a3d19536ac0e0889599aa4e6b 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java @@ -569,8 +569,15 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { diff --git a/patches/server/0742-Call-BlockPhysicsEvent-more-often.patch b/patches/server/0741-Call-BlockPhysicsEvent-more-often.patch similarity index 100% rename from patches/server/0742-Call-BlockPhysicsEvent-more-often.patch rename to patches/server/0741-Call-BlockPhysicsEvent-more-often.patch diff --git a/patches/server/0743-Configurable-chat-thread-limit.patch b/patches/server/0742-Configurable-chat-thread-limit.patch similarity index 100% rename from patches/server/0743-Configurable-chat-thread-limit.patch rename to patches/server/0742-Configurable-chat-thread-limit.patch diff --git a/patches/server/0744-Mitigate-effects-of-WorldCreator-keepSpawnLoaded-ret.patch b/patches/server/0743-Mitigate-effects-of-WorldCreator-keepSpawnLoaded-ret.patch similarity index 100% rename from patches/server/0744-Mitigate-effects-of-WorldCreator-keepSpawnLoaded-ret.patch rename to patches/server/0743-Mitigate-effects-of-WorldCreator-keepSpawnLoaded-ret.patch diff --git a/patches/server/0745-fix-Jigsaw-block-kicking-user.patch b/patches/server/0744-fix-Jigsaw-block-kicking-user.patch similarity index 100% rename from patches/server/0745-fix-Jigsaw-block-kicking-user.patch rename to patches/server/0744-fix-Jigsaw-block-kicking-user.patch diff --git a/patches/server/0746-use-BlockFormEvent-for-mud-converting-into-clay.patch b/patches/server/0745-use-BlockFormEvent-for-mud-converting-into-clay.patch similarity index 100% rename from patches/server/0746-use-BlockFormEvent-for-mud-converting-into-clay.patch rename to patches/server/0745-use-BlockFormEvent-for-mud-converting-into-clay.patch diff --git a/patches/server/0747-Add-getDrops-to-BlockState.patch b/patches/server/0746-Add-getDrops-to-BlockState.patch similarity index 100% rename from patches/server/0747-Add-getDrops-to-BlockState.patch rename to patches/server/0746-Add-getDrops-to-BlockState.patch diff --git a/patches/server/0748-Fix-a-bunch-of-vanilla-bugs.patch b/patches/server/0747-Fix-a-bunch-of-vanilla-bugs.patch similarity index 99% rename from patches/server/0748-Fix-a-bunch-of-vanilla-bugs.patch rename to patches/server/0747-Fix-a-bunch-of-vanilla-bugs.patch index 8bac2e9b9..04ccd673a 100644 --- a/patches/server/0748-Fix-a-bunch-of-vanilla-bugs.patch +++ b/patches/server/0747-Fix-a-bunch-of-vanilla-bugs.patch @@ -140,7 +140,7 @@ index ca32e5aa6e77ca1bab886e7b6a778ec931ac4e4c..28808ffc6e486f7dc01be370c9eb249d MutableComponent ichatmutablecomponent1 = Component.translatable("build.tooHigh", i - 1).withStyle(ChatFormatting.RED); diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index be842c81ae6c6ec64a233f126d7221a37d66439c..b54e8da2209d99696e12c65a23323a68b7da272b 100644 +index 03572023ae7f061bf34fed8ac27852e08d6412c0..38b9ab369e25e4b718418375f76e782283b48411 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -260,7 +260,7 @@ public abstract class PlayerList { diff --git a/patches/server/0749-Remove-unnecessary-onTrackingStart-during-navigation.patch b/patches/server/0748-Remove-unnecessary-onTrackingStart-during-navigation.patch similarity index 100% rename from patches/server/0749-Remove-unnecessary-onTrackingStart-during-navigation.patch rename to patches/server/0748-Remove-unnecessary-onTrackingStart-during-navigation.patch diff --git a/patches/server/0750-Fix-custom-piglin-loved-items.patch b/patches/server/0749-Fix-custom-piglin-loved-items.patch similarity index 100% rename from patches/server/0750-Fix-custom-piglin-loved-items.patch rename to patches/server/0749-Fix-custom-piglin-loved-items.patch diff --git a/patches/server/0751-EntityPickupItemEvent-fixes.patch b/patches/server/0750-EntityPickupItemEvent-fixes.patch similarity index 100% rename from patches/server/0751-EntityPickupItemEvent-fixes.patch rename to patches/server/0750-EntityPickupItemEvent-fixes.patch diff --git a/patches/server/0752-Correctly-handle-interactions-with-items-on-cooldown.patch b/patches/server/0751-Correctly-handle-interactions-with-items-on-cooldown.patch similarity index 97% rename from patches/server/0752-Correctly-handle-interactions-with-items-on-cooldown.patch rename to patches/server/0751-Correctly-handle-interactions-with-items-on-cooldown.patch index 0622f3fbf..b7fa362a4 100644 --- a/patches/server/0752-Correctly-handle-interactions-with-items-on-cooldown.patch +++ b/patches/server/0751-Correctly-handle-interactions-with-items-on-cooldown.patch @@ -30,7 +30,7 @@ index 03d89f326d320c5d778c3d1e2db7d6b88753faec..717d015dd4637dd9d568b751be1dc104 this.interactResult = event.useItemInHand() == Event.Result.DENY; this.interactPosition = blockposition.immutable(); diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index d793566b2b5b0e996e4122087a883e92b24c216f..e1e5a195c2a415d214c5bf8a2364835f7332751b 100644 +index ba1599b733946bef468a9b006411f8827844e791..b6cca72b4785d5cf009077c81c1cca718d8cfe28 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -556,6 +556,12 @@ public class CraftEventFactory { diff --git a/patches/server/0753-Add-PlayerInventorySlotChangeEvent.patch b/patches/server/0752-Add-PlayerInventorySlotChangeEvent.patch similarity index 100% rename from patches/server/0753-Add-PlayerInventorySlotChangeEvent.patch rename to patches/server/0752-Add-PlayerInventorySlotChangeEvent.patch diff --git a/patches/server/0754-Elder-Guardian-appearance-API.patch b/patches/server/0753-Elder-Guardian-appearance-API.patch similarity index 90% rename from patches/server/0754-Elder-Guardian-appearance-API.patch rename to patches/server/0753-Elder-Guardian-appearance-API.patch index 18f10a019..fd1cef6a0 100644 --- a/patches/server/0754-Elder-Guardian-appearance-API.patch +++ b/patches/server/0753-Elder-Guardian-appearance-API.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Elder Guardian appearance API diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 41e000981d175f121ad92aff47260b8ed76ceb62..dd8f74da064530d21e834139cd5b5cb1daf905a9 100644 +index 3374dcd3b1f22b6c1803b9580c4cea6552b6afb1..1e563ed8f7e85d68682e679b27b0f6100eb10aea 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -3298,6 +3298,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0755-Add-entity-knockback-API.patch b/patches/server/0754-Add-entity-knockback-API.patch similarity index 86% rename from patches/server/0755-Add-entity-knockback-API.patch rename to patches/server/0754-Add-entity-knockback-API.patch index e69cd1ea9..d390d3fbd 100644 --- a/patches/server/0755-Add-entity-knockback-API.patch +++ b/patches/server/0754-Add-entity-knockback-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add entity knockback API diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index f278346bb5fe816f3c559a02692b125dde0446f4..3cc29107c018848a364e0fca689acf16cdd0ddb0 100644 +index ae3bf4adc93ebd5a3d19536ac0e0889599aa4e6b..2b53f1daa4f22ee1b52443ae8589c62807d22903 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -@@ -1098,4 +1098,12 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { +@@ -1103,4 +1103,12 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { throw new UnsupportedOperationException("Cannot set the hurt direction on a non player"); } // Paper end - hurt direction API diff --git a/patches/server/0756-Detect-headless-JREs.patch b/patches/server/0755-Detect-headless-JREs.patch similarity index 100% rename from patches/server/0756-Detect-headless-JREs.patch rename to patches/server/0755-Detect-headless-JREs.patch diff --git a/patches/server/0757-fix-entity-vehicle-collision-event-not-called.patch b/patches/server/0756-fix-entity-vehicle-collision-event-not-called.patch similarity index 93% rename from patches/server/0757-fix-entity-vehicle-collision-event-not-called.patch rename to patches/server/0756-fix-entity-vehicle-collision-event-not-called.patch index e39b0eaf2..e2f922a2a 100644 --- a/patches/server/0757-fix-entity-vehicle-collision-event-not-called.patch +++ b/patches/server/0756-fix-entity-vehicle-collision-event-not-called.patch @@ -5,7 +5,7 @@ Subject: [PATCH] fix entity vehicle collision event not called diff --git a/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java b/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java -index 2bd3ba073843b1680eeb81f7dede5973bb4f446d..f403fc311a974558233028663dbe14c27b27d3f9 100644 +index 93634fb01962ca7a35026e3c365f2a7f6b258a39..a38ce400550893f63640e3bb5bb801ab40f06266 100644 --- a/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java +++ b/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java @@ -165,7 +165,15 @@ public abstract class AbstractMinecart extends VehicleEntity { diff --git a/patches/server/0758-Add-EntityToggleSitEvent.patch b/patches/server/0757-Add-EntityToggleSitEvent.patch similarity index 100% rename from patches/server/0758-Add-EntityToggleSitEvent.patch rename to patches/server/0757-Add-EntityToggleSitEvent.patch diff --git a/patches/server/0759-Add-fire-tick-delay-option.patch b/patches/server/0758-Add-fire-tick-delay-option.patch similarity index 100% rename from patches/server/0759-Add-fire-tick-delay-option.patch rename to patches/server/0758-Add-fire-tick-delay-option.patch diff --git a/patches/server/0760-Add-Moving-Piston-API.patch b/patches/server/0759-Add-Moving-Piston-API.patch similarity index 100% rename from patches/server/0760-Add-Moving-Piston-API.patch rename to patches/server/0759-Add-Moving-Piston-API.patch diff --git a/patches/server/0761-Ignore-impossible-spawn-tick.patch b/patches/server/0760-Ignore-impossible-spawn-tick.patch similarity index 100% rename from patches/server/0761-Ignore-impossible-spawn-tick.patch rename to patches/server/0760-Ignore-impossible-spawn-tick.patch diff --git a/patches/server/0762-Fix-EntityArgument-and-EntitySelectorParser-permissi.patch b/patches/server/0761-Fix-EntityArgument-and-EntitySelectorParser-permissi.patch similarity index 100% rename from patches/server/0762-Fix-EntityArgument-and-EntitySelectorParser-permissi.patch rename to patches/server/0761-Fix-EntityArgument-and-EntitySelectorParser-permissi.patch diff --git a/patches/server/0763-Fix-EntityCombustEvent-cancellation-cant-fully-preve.patch b/patches/server/0762-Fix-EntityCombustEvent-cancellation-cant-fully-preve.patch similarity index 100% rename from patches/server/0763-Fix-EntityCombustEvent-cancellation-cant-fully-preve.patch rename to patches/server/0762-Fix-EntityCombustEvent-cancellation-cant-fully-preve.patch diff --git a/patches/server/0764-Add-PrePlayerAttackEntityEvent.patch b/patches/server/0763-Add-PrePlayerAttackEntityEvent.patch similarity index 100% rename from patches/server/0764-Add-PrePlayerAttackEntityEvent.patch rename to patches/server/0763-Add-PrePlayerAttackEntityEvent.patch diff --git a/patches/server/0765-ensure-reset-EnderDragon-boss-event-name.patch b/patches/server/0764-ensure-reset-EnderDragon-boss-event-name.patch similarity index 100% rename from patches/server/0765-ensure-reset-EnderDragon-boss-event-name.patch rename to patches/server/0764-ensure-reset-EnderDragon-boss-event-name.patch diff --git a/patches/server/0766-Add-Player-Warden-Warning-API.patch b/patches/server/0765-Add-Player-Warden-Warning-API.patch similarity index 95% rename from patches/server/0766-Add-Player-Warden-Warning-API.patch rename to patches/server/0765-Add-Player-Warden-Warning-API.patch index 4d0bbf78c..bbb7bff75 100644 --- a/patches/server/0766-Add-Player-Warden-Warning-API.patch +++ b/patches/server/0765-Add-Player-Warden-Warning-API.patch @@ -10,7 +10,7 @@ public net.minecraft.world.entity.monster.warden.WardenSpawnTracker cooldownTick public net.minecraft.world.entity.monster.warden.WardenSpawnTracker increaseWarningLevel()V diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index dd8f74da064530d21e834139cd5b5cb1daf905a9..171547b3affbd6ea79c833c58a2ea0ae58da3138 100644 +index 1e563ed8f7e85d68682e679b27b0f6100eb10aea..922ec82d566fd5ac0b40ed95629e63be3d1bf264 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -3303,6 +3303,41 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0767-More-vanilla-friendly-methods-to-update-trades.patch b/patches/server/0766-More-vanilla-friendly-methods-to-update-trades.patch similarity index 100% rename from patches/server/0767-More-vanilla-friendly-methods-to-update-trades.patch rename to patches/server/0766-More-vanilla-friendly-methods-to-update-trades.patch diff --git a/patches/server/0768-Add-paper-dumplisteners-command.patch b/patches/server/0767-Add-paper-dumplisteners-command.patch similarity index 100% rename from patches/server/0768-Add-paper-dumplisteners-command.patch rename to patches/server/0767-Add-paper-dumplisteners-command.patch diff --git a/patches/server/0769-check-global-player-list-where-appropriate.patch b/patches/server/0768-check-global-player-list-where-appropriate.patch similarity index 98% rename from patches/server/0769-check-global-player-list-where-appropriate.patch rename to patches/server/0768-check-global-player-list-where-appropriate.patch index 94286fbda..cc1aa7af3 100644 --- a/patches/server/0769-check-global-player-list-where-appropriate.patch +++ b/patches/server/0768-check-global-player-list-where-appropriate.patch @@ -24,7 +24,7 @@ index faacbdcce7de32f4e3e4a9528ea59808ccaee70b..07f7752651095abdd9e9408a419aed7d + // Paper end - check global player list where appropriate } diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 9c8e23f92a4cf902b060af4ce74777753e32f207..c1d0ee65a0390c37f12d68bb8fdb2f20d30a8391 100644 +index e6d20887572817099cb863515978d3f06926be3d..f662a791e8cb045903a0de29778e5f30892fb766 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -3723,7 +3723,7 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/0770-Fix-async-entity-add-due-to-fungus-trees.patch b/patches/server/0769-Fix-async-entity-add-due-to-fungus-trees.patch similarity index 100% rename from patches/server/0770-Fix-async-entity-add-due-to-fungus-trees.patch rename to patches/server/0769-Fix-async-entity-add-due-to-fungus-trees.patch diff --git a/patches/server/0771-ItemStack-damage-API.patch b/patches/server/0770-ItemStack-damage-API.patch similarity index 90% rename from patches/server/0771-ItemStack-damage-API.patch rename to patches/server/0770-ItemStack-damage-API.patch index 2f7108790..0455f41b1 100644 --- a/patches/server/0771-ItemStack-damage-API.patch +++ b/patches/server/0770-ItemStack-damage-API.patch @@ -11,7 +11,7 @@ the logic associated with damaging them public net.minecraft.world.entity.LivingEntity entityEventForEquipmentBreak(Lnet/minecraft/world/entity/EquipmentSlot;)B diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index 598507684aed7978fa2e9bae0d959c7d0f9e53d6..e6588a7fc03df4036b38f9a2011e7a716ff111f4 100644 +index 889263767ce3a2a4c43a2c61aa9d2d715392607c..8bf5783414b7dbe5c01a4ed1286e543426f20698 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java @@ -647,8 +647,13 @@ public final class ItemStack implements DataComponentHolder { @@ -29,7 +29,7 @@ index 598507684aed7978fa2e9bae0d959c7d0f9e53d6..e6588a7fc03df4036b38f9a2011e7a71 if (amount > 0) { int originalDamage = amount; // Paper - Expand PlayerItemDamageEvent amount = EnchantmentHelper.processDurabilityChange(world, this, amount); -@@ -699,6 +704,11 @@ public final class ItemStack implements DataComponentHolder { +@@ -704,6 +709,11 @@ public final class ItemStack implements DataComponentHolder { } public void hurtAndBreak(int amount, LivingEntity entity, EquipmentSlot slot) { @@ -42,21 +42,21 @@ index 598507684aed7978fa2e9bae0d959c7d0f9e53d6..e6588a7fc03df4036b38f9a2011e7a71 if (world instanceof ServerLevel worldserver) { @@ -716,8 +726,8 @@ public final class ItemStack implements DataComponentHolder { - org.bukkit.craftbukkit.event.CraftEventFactory.callPlayerItemBreakEvent((net.minecraft.world.entity.player.Player) entity, this); - } - // CraftBukkit end + } + + this.hurtAndBreak(amount, worldserver, entity, (item) -> { // Paper - Add EntityDamageItemEvent - entity.onEquippedItemBroken(item, slot); - }); + if (slot != null) entity.onEquippedItemBroken(item, slot); // Paper - itemstack damage API - do not process entity related callbacks when damaging from API -+ }, force); // Paper ++ }, force); // Paper - itemstack damage API } } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index 3cc29107c018848a364e0fca689acf16cdd0ddb0..6d3183c2bfe9b28070a72cb5c3c05dda2a9d8b11 100644 +index 2b53f1daa4f22ee1b52443ae8589c62807d22903..9134ce983f5c798e2925348ac9d3b8570965d415 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -@@ -1106,4 +1106,48 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { +@@ -1111,4 +1111,48 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { this.getHandle().knockback(strength, directionX, directionZ); }; // Paper end - knockback API diff --git a/patches/server/0772-Friction-API.patch b/patches/server/0771-Friction-API.patch similarity index 96% rename from patches/server/0772-Friction-API.patch rename to patches/server/0771-Friction-API.patch index cae3c2376..c4c9c3744 100644 --- a/patches/server/0772-Friction-API.patch +++ b/patches/server/0771-Friction-API.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Friction API diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index c1d0ee65a0390c37f12d68bb8fdb2f20d30a8391..7d7d5dcb9866dc84d385d82602d0fa58602ad23c 100644 +index f662a791e8cb045903a0de29778e5f30892fb766..2bb61084b628582ded44926d7697ee26d0bb1e8e 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -285,6 +285,7 @@ public abstract class LivingEntity extends Entity implements Attackable { @@ -133,10 +133,10 @@ index 1a291dd8a287db30e71dcb315599fc4b038764c4..30d62ee4d5cd2ddacb8783b5bbbf475d public int getHealth() { return this.getHandle().health; diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index 6d3183c2bfe9b28070a72cb5c3c05dda2a9d8b11..89af84b8ff3aac5269dfb2b069a6e23742b82b4e 100644 +index 9134ce983f5c798e2925348ac9d3b8570965d415..89b66fd33cdeab03a6b208f9c59df767787a42bf 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -@@ -1150,4 +1150,17 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { +@@ -1155,4 +1155,17 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { nmsStack.hurtAndBreak(amount, this.getHandle(), slot, true); } // Paper end - ItemStack damage API diff --git a/patches/server/0773-Ability-to-control-player-s-insomnia-and-phantoms.patch b/patches/server/0772-Ability-to-control-player-s-insomnia-and-phantoms.patch similarity index 100% rename from patches/server/0773-Ability-to-control-player-s-insomnia-and-phantoms.patch rename to patches/server/0772-Ability-to-control-player-s-insomnia-and-phantoms.patch diff --git a/patches/server/0774-Fix-premature-player-kicks-on-shutdown.patch b/patches/server/0773-Fix-premature-player-kicks-on-shutdown.patch similarity index 100% rename from patches/server/0774-Fix-premature-player-kicks-on-shutdown.patch rename to patches/server/0773-Fix-premature-player-kicks-on-shutdown.patch diff --git a/patches/server/0775-Sync-offhand-slot-in-menus.patch b/patches/server/0774-Sync-offhand-slot-in-menus.patch similarity index 100% rename from patches/server/0775-Sync-offhand-slot-in-menus.patch rename to patches/server/0774-Sync-offhand-slot-in-menus.patch diff --git a/patches/server/0776-Player-Entity-Tracking-Events.patch b/patches/server/0775-Player-Entity-Tracking-Events.patch similarity index 100% rename from patches/server/0776-Player-Entity-Tracking-Events.patch rename to patches/server/0775-Player-Entity-Tracking-Events.patch diff --git a/patches/server/0777-Limit-pet-look-distance.patch b/patches/server/0776-Limit-pet-look-distance.patch similarity index 100% rename from patches/server/0777-Limit-pet-look-distance.patch rename to patches/server/0776-Limit-pet-look-distance.patch diff --git a/patches/server/0778-fix-Instruments.patch b/patches/server/0777-fix-Instruments.patch similarity index 96% rename from patches/server/0778-fix-Instruments.patch rename to patches/server/0777-fix-Instruments.patch index 142659036..c2cffdb2b 100644 --- a/patches/server/0778-fix-Instruments.patch +++ b/patches/server/0777-fix-Instruments.patch @@ -6,7 +6,7 @@ Subject: [PATCH] fix Instruments properly handle Player#playNote diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 171547b3affbd6ea79c833c58a2ea0ae58da3138..3e0018c512cad3127a59b54ab008afb6847d82b6 100644 +index 922ec82d566fd5ac0b40ed95629e63be3d1bf264..111b90f97f631369acfb76278da26de94a4740bf 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -768,7 +768,10 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0779-Improve-inlining-for-some-hot-BlockBehavior-and-Flui.patch b/patches/server/0778-Improve-inlining-for-some-hot-BlockBehavior-and-Flui.patch similarity index 100% rename from patches/server/0779-Improve-inlining-for-some-hot-BlockBehavior-and-Flui.patch rename to patches/server/0778-Improve-inlining-for-some-hot-BlockBehavior-and-Flui.patch diff --git a/patches/server/0780-Fix-inconsistencies-in-dispense-events-regarding-sta.patch b/patches/server/0779-Fix-inconsistencies-in-dispense-events-regarding-sta.patch similarity index 100% rename from patches/server/0780-Fix-inconsistencies-in-dispense-events-regarding-sta.patch rename to patches/server/0779-Fix-inconsistencies-in-dispense-events-regarding-sta.patch diff --git a/patches/server/0781-Add-BlockLockCheckEvent.patch b/patches/server/0780-Add-BlockLockCheckEvent.patch similarity index 100% rename from patches/server/0781-Add-BlockLockCheckEvent.patch rename to patches/server/0780-Add-BlockLockCheckEvent.patch diff --git a/patches/server/0782-Add-Sneaking-API-for-Entities.patch b/patches/server/0781-Add-Sneaking-API-for-Entities.patch similarity index 100% rename from patches/server/0782-Add-Sneaking-API-for-Entities.patch rename to patches/server/0781-Add-Sneaking-API-for-Entities.patch diff --git a/patches/server/0783-Improve-logging-and-errors.patch b/patches/server/0782-Improve-logging-and-errors.patch similarity index 100% rename from patches/server/0783-Improve-logging-and-errors.patch rename to patches/server/0782-Improve-logging-and-errors.patch diff --git a/patches/server/0784-Improve-PortalEvents.patch b/patches/server/0783-Improve-PortalEvents.patch similarity index 100% rename from patches/server/0784-Improve-PortalEvents.patch rename to patches/server/0783-Improve-PortalEvents.patch diff --git a/patches/server/0785-Add-config-option-for-spider-worldborder-climbing.patch b/patches/server/0784-Add-config-option-for-spider-worldborder-climbing.patch similarity index 100% rename from patches/server/0785-Add-config-option-for-spider-worldborder-climbing.patch rename to patches/server/0784-Add-config-option-for-spider-worldborder-climbing.patch diff --git a/patches/server/0786-Add-missing-SpigotConfig-logCommands-check.patch b/patches/server/0785-Add-missing-SpigotConfig-logCommands-check.patch similarity index 100% rename from patches/server/0786-Add-missing-SpigotConfig-logCommands-check.patch rename to patches/server/0785-Add-missing-SpigotConfig-logCommands-check.patch diff --git a/patches/server/0787-Fix-NPE-on-Allay-stopDancing-while-not-dancing.patch b/patches/server/0786-Fix-NPE-on-Allay-stopDancing-while-not-dancing.patch similarity index 100% rename from patches/server/0787-Fix-NPE-on-Allay-stopDancing-while-not-dancing.patch rename to patches/server/0786-Fix-NPE-on-Allay-stopDancing-while-not-dancing.patch diff --git a/patches/server/0788-Flying-Fall-Damage.patch b/patches/server/0787-Flying-Fall-Damage.patch similarity index 96% rename from patches/server/0788-Flying-Fall-Damage.patch rename to patches/server/0787-Flying-Fall-Damage.patch index d82a7d6a4..cee20a07d 100644 --- a/patches/server/0788-Flying-Fall-Damage.patch +++ b/patches/server/0787-Flying-Fall-Damage.patch @@ -26,7 +26,7 @@ index ad334f149fe1b44d4ebe48489dcd2811ff1b5cd0..950ce40d268d89ff3c503116081db6c9 } else { if (fallDistance >= 2.0F) { diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 3e0018c512cad3127a59b54ab008afb6847d82b6..88d55a5da818665799ae957e1e5e53a406bcdef2 100644 +index 111b90f97f631369acfb76278da26de94a4740bf..fdf6c3f1f8f79dd20e1363ef472f97fe98c9799e 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -2581,6 +2581,19 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0789-Expose-pre-collision-moving-velocity-to-VehicleBlock.patch b/patches/server/0788-Expose-pre-collision-moving-velocity-to-VehicleBlock.patch similarity index 100% rename from patches/server/0789-Expose-pre-collision-moving-velocity-to-VehicleBlock.patch rename to patches/server/0788-Expose-pre-collision-moving-velocity-to-VehicleBlock.patch diff --git a/patches/server/0790-config-for-disabling-entity-tag-tags.patch b/patches/server/0789-config-for-disabling-entity-tag-tags.patch similarity index 100% rename from patches/server/0790-config-for-disabling-entity-tag-tags.patch rename to patches/server/0789-config-for-disabling-entity-tag-tags.patch diff --git a/patches/server/0791-Use-single-player-info-update-packet-on-join.patch b/patches/server/0790-Use-single-player-info-update-packet-on-join.patch similarity index 97% rename from patches/server/0791-Use-single-player-info-update-packet-on-join.patch rename to patches/server/0790-Use-single-player-info-update-packet-on-join.patch index 086e834d7..bbf878531 100644 --- a/patches/server/0791-Use-single-player-info-update-packet-on-join.patch +++ b/patches/server/0790-Use-single-player-info-update-packet-on-join.patch @@ -18,7 +18,7 @@ index a2a7d499a68841ecd76ba029298094993a82bf39..a6f58438badb0bdeab67706f4a8e519b } diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index b54e8da2209d99696e12c65a23323a68b7da272b..d210df131bac0604eb44e7a772ec48089c043746 100644 +index 38b9ab369e25e4b718418375f76e782283b48411..bd67245393f512264db774e0b855db0ce925a3f4 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -361,6 +361,7 @@ public abstract class PlayerList { diff --git a/patches/server/0792-Correctly-shrink-items-during-EntityResurrectEvent.patch b/patches/server/0791-Correctly-shrink-items-during-EntityResurrectEvent.patch similarity index 95% rename from patches/server/0792-Correctly-shrink-items-during-EntityResurrectEvent.patch rename to patches/server/0791-Correctly-shrink-items-during-EntityResurrectEvent.patch index c1db8cbca..e7b31c364 100644 --- a/patches/server/0792-Correctly-shrink-items-during-EntityResurrectEvent.patch +++ b/patches/server/0791-Correctly-shrink-items-during-EntityResurrectEvent.patch @@ -22,7 +22,7 @@ This patch corrects this behaviour by only shrinking the item if a totem of undying was found and the event was called uncancelled. diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 7d7d5dcb9866dc84d385d82602d0fa58602ad23c..c749c45cb49444347f8e9c0c4689aa44f96b40bb 100644 +index 2bb61084b628582ded44926d7697ee26d0bb1e8e..9e58a85a7de53b17fa149ae0b4951baa351d99db 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -1632,7 +1632,7 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/0793-Win-Screen-API.patch b/patches/server/0792-Win-Screen-API.patch similarity index 93% rename from patches/server/0793-Win-Screen-API.patch rename to patches/server/0792-Win-Screen-API.patch index 9089ea050..567b2236d 100644 --- a/patches/server/0793-Win-Screen-API.patch +++ b/patches/server/0792-Win-Screen-API.patch @@ -7,7 +7,7 @@ Subject: [PATCH] Win Screen API public net.minecraft.server.level.ServerPlayer seenCredits diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 88d55a5da818665799ae957e1e5e53a406bcdef2..34c16525d9393a3f111e3df387b55d28b875cb06 100644 +index fdf6c3f1f8f79dd20e1363ef472f97fe98c9799e..06a3ccb90f23fc357e5cbc6e9173baab4b218955 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -1305,6 +1305,25 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0794-Remove-CraftItemStack-setAmount-null-assignment.patch b/patches/server/0793-Remove-CraftItemStack-setAmount-null-assignment.patch similarity index 100% rename from patches/server/0794-Remove-CraftItemStack-setAmount-null-assignment.patch rename to patches/server/0793-Remove-CraftItemStack-setAmount-null-assignment.patch diff --git a/patches/server/0795-Fix-force-opening-enchantment-tables.patch b/patches/server/0794-Fix-force-opening-enchantment-tables.patch similarity index 91% rename from patches/server/0795-Fix-force-opening-enchantment-tables.patch rename to patches/server/0794-Fix-force-opening-enchantment-tables.patch index db009af8c..89326fc71 100644 --- a/patches/server/0795-Fix-force-opening-enchantment-tables.patch +++ b/patches/server/0794-Fix-force-opening-enchantment-tables.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Fix force-opening enchantment tables diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java -index 0213898b4d029ea9260a755d6411d909a1b6885c..9ab3fc287480aedcb4033801d4f092719e933454 100644 +index 049db909fbd8610ebb688d948f5d03c97ab23495..1ff114f792ca12bc5408cdd9ab0ad23c3158b99c 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java -@@ -403,7 +403,18 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity { +@@ -411,7 +411,18 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity { // If there isn't an enchant table we can force create one, won't be very useful though. BlockPos pos = CraftLocation.toBlockPosition(location); diff --git a/patches/server/0796-Add-Entity-Body-Yaw-API.patch b/patches/server/0795-Add-Entity-Body-Yaw-API.patch similarity index 92% rename from patches/server/0796-Add-Entity-Body-Yaw-API.patch rename to patches/server/0795-Add-Entity-Body-Yaw-API.patch index 53523e2ba..da33e1c8c 100644 --- a/patches/server/0796-Add-Entity-Body-Yaw-API.patch +++ b/patches/server/0795-Add-Entity-Body-Yaw-API.patch @@ -43,10 +43,10 @@ index ac513d3162a0794f226abc80bff21c799fe5802c..7c7501b4b21530d0641774f64e87d7d1 @Override public boolean isInvisible() { // Paper - moved up from LivingEntity diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index 89af84b8ff3aac5269dfb2b069a6e23742b82b4e..413a58d025cc7baf794e1f2866c3582504df4daf 100644 +index 89b66fd33cdeab03a6b208f9c59df767787a42bf..a5d30e5657edd7d71ea521f81faa6d3088164291 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -@@ -1163,4 +1163,16 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { +@@ -1168,4 +1168,16 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { this.getHandle().frictionState = state; } // Paper end - friction API diff --git a/patches/server/0797-Fix-MC-157464-Prevent-sleeping-villagers-moving-towa.patch b/patches/server/0796-Fix-MC-157464-Prevent-sleeping-villagers-moving-towa.patch similarity index 100% rename from patches/server/0797-Fix-MC-157464-Prevent-sleeping-villagers-moving-towa.patch rename to patches/server/0796-Fix-MC-157464-Prevent-sleeping-villagers-moving-towa.patch diff --git a/patches/server/0798-Add-EntityFertilizeEggEvent.patch b/patches/server/0797-Add-EntityFertilizeEggEvent.patch similarity index 98% rename from patches/server/0798-Add-EntityFertilizeEggEvent.patch rename to patches/server/0797-Add-EntityFertilizeEggEvent.patch index f940f43c5..07253994c 100644 --- a/patches/server/0798-Add-EntityFertilizeEggEvent.patch +++ b/patches/server/0797-Add-EntityFertilizeEggEvent.patch @@ -69,7 +69,7 @@ index d34d8fe70379dcad9540739ec0ae1c94f01fc46b..fadd341ff398886a4da102eefa1beb95 this.playSound(SoundEvents.SNIFFER_EGG_PLOP, 1.0F, (this.random.nextFloat() - this.random.nextFloat()) * 0.2F + 0.5F); } // Paper - Call EntityDropItemEvent diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index e1e5a195c2a415d214c5bf8a2364835f7332751b..2eb6080c92b2557c77d826300db5104db830bc7f 100644 +index b6cca72b4785d5cf009077c81c1cca718d8cfe28..a0b387ddf3cc1e3473c6b35175ac8b68c717cfbe 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -2197,4 +2197,28 @@ public class CraftEventFactory { diff --git a/patches/server/0799-Fix-HumanEntity-drop-not-updating-the-client-inv.patch b/patches/server/0798-Fix-HumanEntity-drop-not-updating-the-client-inv.patch similarity index 90% rename from patches/server/0799-Fix-HumanEntity-drop-not-updating-the-client-inv.patch rename to patches/server/0798-Fix-HumanEntity-drop-not-updating-the-client-inv.patch index 99130d8f1..b804a7782 100644 --- a/patches/server/0799-Fix-HumanEntity-drop-not-updating-the-client-inv.patch +++ b/patches/server/0798-Fix-HumanEntity-drop-not-updating-the-client-inv.patch @@ -7,10 +7,10 @@ Subject: [PATCH] Fix HumanEntity#drop not updating the client inv public net.minecraft.server.level.ServerPlayer containerSynchronizer diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java -index 9ab3fc287480aedcb4033801d4f092719e933454..12ab8f7cde88cd6ce3ad474fe2843d5d30c3c0d7 100644 +index 1ff114f792ca12bc5408cdd9ab0ad23c3158b99c..b782cc64426a058881947ed62316c1cb8d332037 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java -@@ -751,8 +751,15 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity { +@@ -759,8 +759,15 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity { // Paper end @Override public boolean dropItem(boolean dropAll) { diff --git a/patches/server/0800-Add-CompostItemEvent-and-EntityCompostItemEvent.patch b/patches/server/0799-Add-CompostItemEvent-and-EntityCompostItemEvent.patch similarity index 100% rename from patches/server/0800-Add-CompostItemEvent-and-EntityCompostItemEvent.patch rename to patches/server/0799-Add-CompostItemEvent-and-EntityCompostItemEvent.patch diff --git a/patches/server/0801-Correctly-handle-ArmorStand-invisibility.patch b/patches/server/0800-Correctly-handle-ArmorStand-invisibility.patch similarity index 100% rename from patches/server/0801-Correctly-handle-ArmorStand-invisibility.patch rename to patches/server/0800-Correctly-handle-ArmorStand-invisibility.patch diff --git a/patches/server/0802-Fix-advancement-triggers-for-entity-damage.patch b/patches/server/0801-Fix-advancement-triggers-for-entity-damage.patch similarity index 97% rename from patches/server/0802-Fix-advancement-triggers-for-entity-damage.patch rename to patches/server/0801-Fix-advancement-triggers-for-entity-damage.patch index ea0459da7..94c53ab61 100644 --- a/patches/server/0802-Fix-advancement-triggers-for-entity-damage.patch +++ b/patches/server/0801-Fix-advancement-triggers-for-entity-damage.patch @@ -23,7 +23,7 @@ index 2ebbf7954dc5e0d6c9d53327d05b725eec310086..c5bd2e90ad74ba08910f65a2e07b6f76 return !this.getResponse(); diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index c749c45cb49444347f8e9c0c4689aa44f96b40bb..3bd9eaf4f0537167ed27c666e805fbf65c640445 100644 +index 9e58a85a7de53b17fa149ae0b4951baa351d99db..4e96a65396b687d2823f2229744f5d448ba87512 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -2388,7 +2388,7 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/0803-Fix-text-display-error-on-spawn.patch b/patches/server/0802-Fix-text-display-error-on-spawn.patch similarity index 100% rename from patches/server/0803-Fix-text-display-error-on-spawn.patch rename to patches/server/0802-Fix-text-display-error-on-spawn.patch diff --git a/patches/server/0804-Fix-inventories-returning-null-Locations.patch b/patches/server/0803-Fix-inventories-returning-null-Locations.patch similarity index 100% rename from patches/server/0804-Fix-inventories-returning-null-Locations.patch rename to patches/server/0803-Fix-inventories-returning-null-Locations.patch diff --git a/patches/server/0805-Add-Shearable-API.patch b/patches/server/0804-Add-Shearable-API.patch similarity index 100% rename from patches/server/0805-Add-Shearable-API.patch rename to patches/server/0804-Add-Shearable-API.patch diff --git a/patches/server/0806-Fix-SpawnEggMeta-get-setSpawnedType.patch b/patches/server/0805-Fix-SpawnEggMeta-get-setSpawnedType.patch similarity index 100% rename from patches/server/0806-Fix-SpawnEggMeta-get-setSpawnedType.patch rename to patches/server/0805-Fix-SpawnEggMeta-get-setSpawnedType.patch diff --git a/patches/server/0807-Fix-crash-relating-to-bad-recipes-in-furnace-like-ti.patch b/patches/server/0806-Fix-crash-relating-to-bad-recipes-in-furnace-like-ti.patch similarity index 100% rename from patches/server/0807-Fix-crash-relating-to-bad-recipes-in-furnace-like-ti.patch rename to patches/server/0806-Fix-crash-relating-to-bad-recipes-in-furnace-like-ti.patch diff --git a/patches/server/0808-Treat-sequence-violations-like-they-should-be.patch b/patches/server/0807-Treat-sequence-violations-like-they-should-be.patch similarity index 100% rename from patches/server/0808-Treat-sequence-violations-like-they-should-be.patch rename to patches/server/0807-Treat-sequence-violations-like-they-should-be.patch diff --git a/patches/server/0809-Prevent-causing-expired-keys-from-impacting-new-join.patch b/patches/server/0808-Prevent-causing-expired-keys-from-impacting-new-join.patch similarity index 100% rename from patches/server/0809-Prevent-causing-expired-keys-from-impacting-new-join.patch rename to patches/server/0808-Prevent-causing-expired-keys-from-impacting-new-join.patch diff --git a/patches/server/0810-Prevent-GameEvents-being-fired-from-unloaded-chunks.patch b/patches/server/0809-Prevent-GameEvents-being-fired-from-unloaded-chunks.patch similarity index 100% rename from patches/server/0810-Prevent-GameEvents-being-fired-from-unloaded-chunks.patch rename to patches/server/0809-Prevent-GameEvents-being-fired-from-unloaded-chunks.patch diff --git a/patches/server/0811-Use-array-for-gamerule-storage.patch b/patches/server/0810-Use-array-for-gamerule-storage.patch similarity index 100% rename from patches/server/0811-Use-array-for-gamerule-storage.patch rename to patches/server/0810-Use-array-for-gamerule-storage.patch diff --git a/patches/server/0812-Fix-a-couple-of-upstream-bed-issues.patch b/patches/server/0811-Fix-a-couple-of-upstream-bed-issues.patch similarity index 100% rename from patches/server/0812-Fix-a-couple-of-upstream-bed-issues.patch rename to patches/server/0811-Fix-a-couple-of-upstream-bed-issues.patch diff --git a/patches/server/0813-Fix-demo-flag-not-enabling-demo-mode.patch b/patches/server/0812-Fix-demo-flag-not-enabling-demo-mode.patch similarity index 100% rename from patches/server/0813-Fix-demo-flag-not-enabling-demo-mode.patch rename to patches/server/0812-Fix-demo-flag-not-enabling-demo-mode.patch diff --git a/patches/server/0814-Add-Mob-Experience-reward-API.patch b/patches/server/0813-Add-Mob-Experience-reward-API.patch similarity index 100% rename from patches/server/0814-Add-Mob-Experience-reward-API.patch rename to patches/server/0813-Add-Mob-Experience-reward-API.patch diff --git a/patches/server/0815-Break-redstone-on-top-of-trap-doors-early.patch b/patches/server/0814-Break-redstone-on-top-of-trap-doors-early.patch similarity index 100% rename from patches/server/0815-Break-redstone-on-top-of-trap-doors-early.patch rename to patches/server/0814-Break-redstone-on-top-of-trap-doors-early.patch diff --git a/patches/server/0816-Avoid-Lazy-Initialization-for-Enum-Fields.patch b/patches/server/0815-Avoid-Lazy-Initialization-for-Enum-Fields.patch similarity index 100% rename from patches/server/0816-Avoid-Lazy-Initialization-for-Enum-Fields.patch rename to patches/server/0815-Avoid-Lazy-Initialization-for-Enum-Fields.patch diff --git a/patches/server/0817-More-accurate-isInOpenWater-impl.patch b/patches/server/0816-More-accurate-isInOpenWater-impl.patch similarity index 100% rename from patches/server/0817-More-accurate-isInOpenWater-impl.patch rename to patches/server/0816-More-accurate-isInOpenWater-impl.patch diff --git a/patches/server/0818-Expand-PlayerItemMendEvent.patch b/patches/server/0817-Expand-PlayerItemMendEvent.patch similarity index 96% rename from patches/server/0818-Expand-PlayerItemMendEvent.patch rename to patches/server/0817-Expand-PlayerItemMendEvent.patch index 6c302fd08..289fae7ad 100644 --- a/patches/server/0818-Expand-PlayerItemMendEvent.patch +++ b/patches/server/0817-Expand-PlayerItemMendEvent.patch @@ -30,7 +30,7 @@ index a758b2456acac23095fe4619ae10300a034cb460..a58ff67052fb5f33782f8b5c83465ec0 if (l > 0) { // this.value = l; // CraftBukkit - update exp value of orb for PlayerItemMendEvent calls // Paper - the value field should not be mutated here because it doesn't take "count" into account diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 34c16525d9393a3f111e3df387b55d28b875cb06..d7437bdfca45ee89cef23c6466c3d7d8a3f5c8d6 100644 +index 06a3ccb90f23fc357e5cbc6e9173baab4b218955..3945a6ab723deee3ec3ebb5fbc726ce16bbca411 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -1853,11 +1853,12 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @@ -49,7 +49,7 @@ index 34c16525d9393a3f111e3df387b55d28b875cb06..d7437bdfca45ee89cef23c6466c3d7d8 } } diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 2eb6080c92b2557c77d826300db5104db830bc7f..3af97418a7e28037ed59dea7f37e0785cf9d46e4 100644 +index a0b387ddf3cc1e3473c6b35175ac8b68c717cfbe..9586837f25464396c0695e87fa278c91ca90183a 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -1286,10 +1286,10 @@ public class CraftEventFactory { diff --git a/patches/server/0819-Refresh-ProjectileSource-for-projectiles.patch b/patches/server/0818-Refresh-ProjectileSource-for-projectiles.patch similarity index 100% rename from patches/server/0819-Refresh-ProjectileSource-for-projectiles.patch rename to patches/server/0818-Refresh-ProjectileSource-for-projectiles.patch diff --git a/patches/server/0820-Add-transient-modifier-API.patch b/patches/server/0819-Add-transient-modifier-API.patch similarity index 100% rename from patches/server/0820-Add-transient-modifier-API.patch rename to patches/server/0819-Add-transient-modifier-API.patch diff --git a/patches/server/0821-Fix-block-place-logic.patch b/patches/server/0820-Fix-block-place-logic.patch similarity index 100% rename from patches/server/0821-Fix-block-place-logic.patch rename to patches/server/0820-Fix-block-place-logic.patch diff --git a/patches/server/0822-Fix-spigot-sound-playing-for-BlockItem-ItemStacks.patch b/patches/server/0821-Fix-spigot-sound-playing-for-BlockItem-ItemStacks.patch similarity index 94% rename from patches/server/0822-Fix-spigot-sound-playing-for-BlockItem-ItemStacks.patch rename to patches/server/0821-Fix-spigot-sound-playing-for-BlockItem-ItemStacks.patch index e37c1ac01..6b029362a 100644 --- a/patches/server/0822-Fix-spigot-sound-playing-for-BlockItem-ItemStacks.patch +++ b/patches/server/0821-Fix-spigot-sound-playing-for-BlockItem-ItemStacks.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Fix spigot sound playing for BlockItem ItemStacks diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index e6588a7fc03df4036b38f9a2011e7a716ff111f4..748489c375517368ab5a62f61d86ccdf91304d97 100644 +index 8bf5783414b7dbe5c01a4ed1286e543426f20698..67728baaaeac7c0fe353e30ae681eec24af3aff2 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java @@ -571,7 +571,11 @@ public final class ItemStack implements DataComponentHolder { diff --git a/patches/server/0823-Call-BlockGrowEvent-for-missing-blocks.patch b/patches/server/0822-Call-BlockGrowEvent-for-missing-blocks.patch similarity index 100% rename from patches/server/0823-Call-BlockGrowEvent-for-missing-blocks.patch rename to patches/server/0822-Call-BlockGrowEvent-for-missing-blocks.patch diff --git a/patches/server/0824-Don-t-enforce-icanhasbukkit-default-if-alias-block-e.patch b/patches/server/0823-Don-t-enforce-icanhasbukkit-default-if-alias-block-e.patch similarity index 94% rename from patches/server/0824-Don-t-enforce-icanhasbukkit-default-if-alias-block-e.patch rename to patches/server/0823-Don-t-enforce-icanhasbukkit-default-if-alias-block-e.patch index 51cff2458..0eb4dc7f6 100644 --- a/patches/server/0824-Don-t-enforce-icanhasbukkit-default-if-alias-block-e.patch +++ b/patches/server/0823-Don-t-enforce-icanhasbukkit-default-if-alias-block-e.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Don't enforce icanhasbukkit default if alias block exists diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index c049c6046e3acd2262c7a474db351ae761457a0e..085e7ebd5e34b6f7c41b2847641bad9d03fb9d96 100644 +index d0deaa80b404043b8cb3dbc390fd5ec3bff2630b..622fe949819ec80737da21305e1a1e0c46480a63 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -355,7 +355,11 @@ public final class CraftServer implements Server { diff --git a/patches/server/0825-fix-MapLike-spam-for-missing-key-selector.patch b/patches/server/0824-fix-MapLike-spam-for-missing-key-selector.patch similarity index 100% rename from patches/server/0825-fix-MapLike-spam-for-missing-key-selector.patch rename to patches/server/0824-fix-MapLike-spam-for-missing-key-selector.patch diff --git a/patches/server/0826-Fix-sniffer-removeExploredLocation.patch b/patches/server/0825-Fix-sniffer-removeExploredLocation.patch similarity index 100% rename from patches/server/0826-Fix-sniffer-removeExploredLocation.patch rename to patches/server/0825-Fix-sniffer-removeExploredLocation.patch diff --git a/patches/server/0827-Add-method-to-remove-all-active-potion-effects.patch b/patches/server/0826-Add-method-to-remove-all-active-potion-effects.patch similarity index 91% rename from patches/server/0827-Add-method-to-remove-all-active-potion-effects.patch rename to patches/server/0826-Add-method-to-remove-all-active-potion-effects.patch index eb810dfef..beee87ef9 100644 --- a/patches/server/0827-Add-method-to-remove-all-active-potion-effects.patch +++ b/patches/server/0826-Add-method-to-remove-all-active-potion-effects.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add method to remove all active potion effects diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index 413a58d025cc7baf794e1f2866c3582504df4daf..de1c0c610931471c580266f0d0e0fd881b1e7d3d 100644 +index a5d30e5657edd7d71ea521f81faa6d3088164291..6c44aaef8f09b2a10183dba751557ac5c6233a87 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java @@ -563,6 +563,13 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { diff --git a/patches/server/0828-Fix-incorrect-crafting-result-amount-for-fireworks.patch b/patches/server/0827-Fix-incorrect-crafting-result-amount-for-fireworks.patch similarity index 100% rename from patches/server/0828-Fix-incorrect-crafting-result-amount-for-fireworks.patch rename to patches/server/0827-Fix-incorrect-crafting-result-amount-for-fireworks.patch diff --git a/patches/server/0829-Add-event-for-player-editing-sign.patch b/patches/server/0828-Add-event-for-player-editing-sign.patch similarity index 98% rename from patches/server/0829-Add-event-for-player-editing-sign.patch rename to patches/server/0828-Add-event-for-player-editing-sign.patch index f2582476f..0f2923121 100644 --- a/patches/server/0829-Add-event-for-player-editing-sign.patch +++ b/patches/server/0828-Add-event-for-player-editing-sign.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add event for player editing sign diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index 748489c375517368ab5a62f61d86ccdf91304d97..0a6db77afa392e6ab47f970d5665804c8f6cbf7b 100644 +index 67728baaaeac7c0fe353e30ae681eec24af3aff2..67ccd3065962a60d9a1676f13e383ed1f8a00d20 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java @@ -550,7 +550,7 @@ public final class ItemStack implements DataComponentHolder { diff --git a/patches/server/0830-Only-tick-item-frames-if-players-can-see-it.patch b/patches/server/0829-Only-tick-item-frames-if-players-can-see-it.patch similarity index 100% rename from patches/server/0830-Only-tick-item-frames-if-players-can-see-it.patch rename to patches/server/0829-Only-tick-item-frames-if-players-can-see-it.patch diff --git a/patches/server/0831-Fix-cmd-permission-levels-for-command-blocks.patch b/patches/server/0830-Fix-cmd-permission-levels-for-command-blocks.patch similarity index 100% rename from patches/server/0831-Fix-cmd-permission-levels-for-command-blocks.patch rename to patches/server/0830-Fix-cmd-permission-levels-for-command-blocks.patch diff --git a/patches/server/0832-Add-option-to-disable-block-updates.patch b/patches/server/0831-Add-option-to-disable-block-updates.patch similarity index 100% rename from patches/server/0832-Add-option-to-disable-block-updates.patch rename to patches/server/0831-Add-option-to-disable-block-updates.patch diff --git a/patches/server/0833-Call-missing-BlockDispenseEvent.patch b/patches/server/0832-Call-missing-BlockDispenseEvent.patch similarity index 98% rename from patches/server/0833-Call-missing-BlockDispenseEvent.patch rename to patches/server/0832-Call-missing-BlockDispenseEvent.patch index 1ee26b1b6..ca534e461 100644 --- a/patches/server/0833-Call-missing-BlockDispenseEvent.patch +++ b/patches/server/0832-Call-missing-BlockDispenseEvent.patch @@ -50,7 +50,7 @@ index 96db0b1041a4c0f054d4f3f2bdced960b119664e..78951f50188528718cdb3dbbaabe3f9f for (int k = 0; k < 5; ++k) { worldserver.sendParticles(ParticleTypes.SPLASH, (double) blockposition.getX() + worldserver.random.nextDouble(), (double) (blockposition.getY() + 1), (double) blockposition.getZ() + worldserver.random.nextDouble(), 1, 0.0D, 0.0D, 0.0D, 1.0D); diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 3af97418a7e28037ed59dea7f37e0785cf9d46e4..736244853af33891609ab71fc50d259918574f3d 100644 +index 9586837f25464396c0695e87fa278c91ca90183a..9b3023fdda9d08c0f5489542f644e2ea311af191 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -2198,6 +2198,32 @@ public class CraftEventFactory { diff --git a/patches/server/0834-Don-t-load-chunks-for-supporting-block-checks.patch b/patches/server/0833-Don-t-load-chunks-for-supporting-block-checks.patch similarity index 100% rename from patches/server/0834-Don-t-load-chunks-for-supporting-block-checks.patch rename to patches/server/0833-Don-t-load-chunks-for-supporting-block-checks.patch diff --git a/patches/server/0835-Optimize-player-lookups-for-beacons.patch b/patches/server/0834-Optimize-player-lookups-for-beacons.patch similarity index 100% rename from patches/server/0835-Optimize-player-lookups-for-beacons.patch rename to patches/server/0834-Optimize-player-lookups-for-beacons.patch diff --git a/patches/server/0836-More-Sign-Block-API.patch b/patches/server/0835-More-Sign-Block-API.patch similarity index 100% rename from patches/server/0836-More-Sign-Block-API.patch rename to patches/server/0835-More-Sign-Block-API.patch diff --git a/patches/server/0837-fix-item-meta-for-tadpole-buckets.patch b/patches/server/0836-fix-item-meta-for-tadpole-buckets.patch similarity index 100% rename from patches/server/0837-fix-item-meta-for-tadpole-buckets.patch rename to patches/server/0836-fix-item-meta-for-tadpole-buckets.patch diff --git a/patches/server/0838-Fix-BanList-API.patch b/patches/server/0837-Fix-BanList-API.patch similarity index 97% rename from patches/server/0838-Fix-BanList-API.patch rename to patches/server/0837-Fix-BanList-API.patch index 0b3b2d80a..0ed02f9e9 100644 --- a/patches/server/0838-Fix-BanList-API.patch +++ b/patches/server/0837-Fix-BanList-API.patch @@ -208,7 +208,7 @@ index 172202accf4448a933fcf1ff820316c7910dd7f7..50ee7656580d386db473c054f5c5ec57 return null; } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index d7437bdfca45ee89cef23c6466c3d7d8a3f5c8d6..eb8c3b1c55e7ab9c1304d30a3da911b5051b259c 100644 +index 3945a6ab723deee3ec3ebb5fbc726ce16bbca411..62914bde6f6b045e6b3682581899d756d1b272f1 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -1747,23 +1747,23 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @@ -256,11 +256,11 @@ index d7437bdfca45ee89cef23c6466c3d7d8a3f5c8d6..eb8c3b1c55e7ab9c1304d30a3da911b5 } diff --git a/src/main/java/org/bukkit/craftbukkit/profile/CraftPlayerProfile.java b/src/main/java/org/bukkit/craftbukkit/profile/CraftPlayerProfile.java -index ce30a8853d5095ce5bf1ec902b41d27db9e35b4f..0121c90dd7f57be5f484f970f78747a92a734611 100644 +index 41bf260a599f46d410f234bac4dbad32142aa1cc..c216d8bf2fb836a17cca55375fbe67bc4f52d54a 100644 --- a/src/main/java/org/bukkit/craftbukkit/profile/CraftPlayerProfile.java +++ b/src/main/java/org/bukkit/craftbukkit/profile/CraftPlayerProfile.java -@@ -28,7 +28,7 @@ import org.bukkit.profile.PlayerProfile; - import org.bukkit.profile.PlayerTextures; +@@ -31,7 +31,7 @@ import org.bukkit.profile.PlayerTextures; + import org.jetbrains.annotations.ApiStatus; @SerializableAs("PlayerProfile") -public final class CraftPlayerProfile implements PlayerProfile, com.destroystokyo.paper.profile.SharedPlayerProfile { // Paper @@ -268,7 +268,7 @@ index ce30a8853d5095ce5bf1ec902b41d27db9e35b4f..0121c90dd7f57be5f484f970f78747a9 @Nonnull public static GameProfile validateSkullProfile(@Nonnull GameProfile gameProfile) { -@@ -137,7 +137,7 @@ public final class CraftPlayerProfile implements PlayerProfile, com.destroystoky +@@ -162,7 +162,7 @@ public final class CraftPlayerProfile implements PlayerProfile, com.destroystoky } @Override @@ -277,7 +277,7 @@ index ce30a8853d5095ce5bf1ec902b41d27db9e35b4f..0121c90dd7f57be5f484f970f78747a9 return CompletableFuture.supplyAsync(this::getUpdatedProfile, Util.PROFILE_EXECUTOR); // Paper - don't submit BLOCKING PROFILE LOOKUPS to the world gen thread } -@@ -291,4 +291,71 @@ public final class CraftPlayerProfile implements PlayerProfile, com.destroystoky +@@ -321,4 +321,71 @@ public final class CraftPlayerProfile implements PlayerProfile, com.destroystoky // Paper - diff on change return profile; } diff --git a/patches/server/0839-Determine-lava-and-water-fluid-explosion-resistance-.patch b/patches/server/0838-Determine-lava-and-water-fluid-explosion-resistance-.patch similarity index 100% rename from patches/server/0839-Determine-lava-and-water-fluid-explosion-resistance-.patch rename to patches/server/0838-Determine-lava-and-water-fluid-explosion-resistance-.patch diff --git a/patches/server/0840-Fix-possible-NPE-on-painting-creation.patch b/patches/server/0839-Fix-possible-NPE-on-painting-creation.patch similarity index 100% rename from patches/server/0840-Fix-possible-NPE-on-painting-creation.patch rename to patches/server/0839-Fix-possible-NPE-on-painting-creation.patch diff --git a/patches/server/0841-Only-set-despawnTimer-for-Wandering-Traders-spawned-.patch b/patches/server/0840-Only-set-despawnTimer-for-Wandering-Traders-spawned-.patch similarity index 100% rename from patches/server/0841-Only-set-despawnTimer-for-Wandering-Traders-spawned-.patch rename to patches/server/0840-Only-set-despawnTimer-for-Wandering-Traders-spawned-.patch diff --git a/patches/server/0842-ExperienceOrb-should-call-EntitySpawnEvent.patch b/patches/server/0841-ExperienceOrb-should-call-EntitySpawnEvent.patch similarity index 93% rename from patches/server/0842-ExperienceOrb-should-call-EntitySpawnEvent.patch rename to patches/server/0841-ExperienceOrb-should-call-EntitySpawnEvent.patch index 8199743d6..b70d980d3 100644 --- a/patches/server/0842-ExperienceOrb-should-call-EntitySpawnEvent.patch +++ b/patches/server/0841-ExperienceOrb-should-call-EntitySpawnEvent.patch @@ -5,7 +5,7 @@ Subject: [PATCH] ExperienceOrb should call EntitySpawnEvent diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 736244853af33891609ab71fc50d259918574f3d..50346dda83472bddc043f8e8c45f9131c2e5958c 100644 +index 9b3023fdda9d08c0f5489542f644e2ea311af191..907ea60b647d529f133986632d00416269bc311e 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -746,7 +746,8 @@ public class CraftEventFactory { diff --git a/patches/server/0843-Make-Amethyst-throw-both-Spread-and-Grow-Events.patch b/patches/server/0842-Make-Amethyst-throw-both-Spread-and-Grow-Events.patch similarity index 100% rename from patches/server/0843-Make-Amethyst-throw-both-Spread-and-Grow-Events.patch rename to patches/server/0842-Make-Amethyst-throw-both-Spread-and-Grow-Events.patch diff --git a/patches/server/0844-Add-whitelist-events.patch b/patches/server/0843-Add-whitelist-events.patch similarity index 100% rename from patches/server/0844-Add-whitelist-events.patch rename to patches/server/0843-Add-whitelist-events.patch diff --git a/patches/server/0845-Implement-PlayerFailMoveEvent.patch b/patches/server/0844-Implement-PlayerFailMoveEvent.patch similarity index 100% rename from patches/server/0845-Implement-PlayerFailMoveEvent.patch rename to patches/server/0844-Implement-PlayerFailMoveEvent.patch diff --git a/patches/server/0846-Folia-scheduler-and-owned-region-API.patch b/patches/server/0845-Folia-scheduler-and-owned-region-API.patch similarity index 99% rename from patches/server/0846-Folia-scheduler-and-owned-region-API.patch rename to patches/server/0845-Folia-scheduler-and-owned-region-API.patch index 3b6c47e31..061c3c8e9 100644 --- a/patches/server/0846-Folia-scheduler-and-owned-region-API.patch +++ b/patches/server/0845-Folia-scheduler-and-owned-region-API.patch @@ -1173,7 +1173,7 @@ index a72b278826be1d0da79ca619ea9a9a437fa9c54b..2dfa9c4c0c2ef489649944eed89d8c77 this.profiler.push("commandFunctions"); MinecraftTimings.commandFunctionsTimer.startTiming(); // Spigot // Paper diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index d210df131bac0604eb44e7a772ec48089c043746..b8e79cf272f0a87b0fc0c0f61d325ec780b0f6b5 100644 +index bd67245393f512264db774e0b855db0ce925a3f4..e85b91036c2470b2f164a4641d1c07d27553a078 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -640,6 +640,7 @@ public abstract class PlayerList { @@ -1251,7 +1251,7 @@ index 8e252b930247293e0fbcf350111403ee716cfffa..f81a576084ccceb2b02e8d8cd57442ef public void setLevelCallback(EntityInLevelCallback changeListener) { this.levelCallback = changeListener; diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 085e7ebd5e34b6f7c41b2847641bad9d03fb9d96..161e3e440e90dcc23a8b82b1f1856a095e5a9a7f 100644 +index 622fe949819ec80737da21305e1a1e0c46480a63..2dd20823769f1a3a2d028cd64d3af5989429d1ac 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -310,6 +310,76 @@ public final class CraftServer implements Server { diff --git a/patches/server/0847-Only-erase-allay-memory-on-non-item-targets.patch b/patches/server/0846-Only-erase-allay-memory-on-non-item-targets.patch similarity index 100% rename from patches/server/0847-Only-erase-allay-memory-on-non-item-targets.patch rename to patches/server/0846-Only-erase-allay-memory-on-non-item-targets.patch diff --git a/patches/server/0848-API-for-updating-recipes-on-clients.patch b/patches/server/0847-API-for-updating-recipes-on-clients.patch similarity index 95% rename from patches/server/0848-API-for-updating-recipes-on-clients.patch rename to patches/server/0847-API-for-updating-recipes-on-clients.patch index 8f795d23d..54f4e830b 100644 --- a/patches/server/0848-API-for-updating-recipes-on-clients.patch +++ b/patches/server/0847-API-for-updating-recipes-on-clients.patch @@ -5,7 +5,7 @@ Subject: [PATCH] API for updating recipes on clients diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index b2e131f45e8f1bbefc42b6e16ac482b2fbeafb12..b7fbf6e395aeaaf2353a3d047a0321d4a9b6de3c 100644 +index e85b91036c2470b2f164a4641d1c07d27553a078..387470d6cfd34dc6f9c895a962ddcdf92583ab8c 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -1489,6 +1489,13 @@ public abstract class PlayerList { @@ -39,7 +39,7 @@ index b2e131f45e8f1bbefc42b6e16ac482b2fbeafb12..b7fbf6e395aeaaf2353a3d047a0321d4 Iterator iterator1 = this.players.iterator(); diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 161e3e440e90dcc23a8b82b1f1856a095e5a9a7f..b2e230ed6f86bd53e360192352c4c5dee0323fb6 100644 +index 2dd20823769f1a3a2d028cd64d3af5989429d1ac..00f8042538a698995299aaa57212e7091c1af634 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -1174,6 +1174,18 @@ public final class CraftServer implements Server { diff --git a/patches/server/0849-Fix-rotation-when-spawning-display-entities.patch b/patches/server/0848-Fix-rotation-when-spawning-display-entities.patch similarity index 100% rename from patches/server/0849-Fix-rotation-when-spawning-display-entities.patch rename to patches/server/0848-Fix-rotation-when-spawning-display-entities.patch diff --git a/patches/server/0850-Only-capture-actual-tree-growth.patch b/patches/server/0849-Only-capture-actual-tree-growth.patch similarity index 98% rename from patches/server/0850-Only-capture-actual-tree-growth.patch rename to patches/server/0849-Only-capture-actual-tree-growth.patch index 202a25604..039d1ea70 100644 --- a/patches/server/0850-Only-capture-actual-tree-growth.patch +++ b/patches/server/0849-Only-capture-actual-tree-growth.patch @@ -17,7 +17,7 @@ index 78951f50188528718cdb3dbbaabe3f9f2760ffe3..7826e2a52da47914aca39fef958b8f39 } } diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index 0a6db77afa392e6ab47f970d5665804c8f6cbf7b..7cc9ded0e53bc1c6313ab720c852b1b0163ba951 100644 +index 67ccd3065962a60d9a1676f13e383ed1f8a00d20..355e461da5551e38bbc2ede69c5818f7db27011c 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java @@ -466,6 +466,7 @@ public final class ItemStack implements DataComponentHolder { diff --git a/patches/server/0851-Use-correct-source-for-mushroom-block-spread-event.patch b/patches/server/0850-Use-correct-source-for-mushroom-block-spread-event.patch similarity index 100% rename from patches/server/0851-Use-correct-source-for-mushroom-block-spread-event.patch rename to patches/server/0850-Use-correct-source-for-mushroom-block-spread-event.patch diff --git a/patches/server/0852-Respect-randomizeData-on-more-entities-when-spawning.patch b/patches/server/0851-Respect-randomizeData-on-more-entities-when-spawning.patch similarity index 100% rename from patches/server/0852-Respect-randomizeData-on-more-entities-when-spawning.patch rename to patches/server/0851-Respect-randomizeData-on-more-entities-when-spawning.patch diff --git a/patches/server/0853-Use-correct-seed-on-api-world-load.patch b/patches/server/0852-Use-correct-seed-on-api-world-load.patch similarity index 92% rename from patches/server/0853-Use-correct-seed-on-api-world-load.patch rename to patches/server/0852-Use-correct-seed-on-api-world-load.patch index 8b0db6667..764833c01 100644 --- a/patches/server/0853-Use-correct-seed-on-api-world-load.patch +++ b/patches/server/0852-Use-correct-seed-on-api-world-load.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Use correct seed on api world load diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index b2e230ed6f86bd53e360192352c4c5dee0323fb6..3135e6de5915d8253892e0b642587ef53e0e5b4f 100644 +index 00f8042538a698995299aaa57212e7091c1af634..b5af662ae3c3216b5dc30df5619d0c74db10d119 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -1396,7 +1396,7 @@ public final class CraftServer implements Server { diff --git a/patches/server/0854-Remove-UpgradeData-neighbour-ticks-outside-of-range.patch b/patches/server/0853-Remove-UpgradeData-neighbour-ticks-outside-of-range.patch similarity index 100% rename from patches/server/0854-Remove-UpgradeData-neighbour-ticks-outside-of-range.patch rename to patches/server/0853-Remove-UpgradeData-neighbour-ticks-outside-of-range.patch diff --git a/patches/server/0855-Cache-map-ids-on-item-frames.patch b/patches/server/0854-Cache-map-ids-on-item-frames.patch similarity index 100% rename from patches/server/0855-Cache-map-ids-on-item-frames.patch rename to patches/server/0854-Cache-map-ids-on-item-frames.patch diff --git a/patches/server/0856-Fix-custom-statistic-criteria-creation.patch b/patches/server/0855-Fix-custom-statistic-criteria-creation.patch similarity index 100% rename from patches/server/0856-Fix-custom-statistic-criteria-creation.patch rename to patches/server/0855-Fix-custom-statistic-criteria-creation.patch diff --git a/patches/server/0857-Bandaid-fix-for-Effect.patch b/patches/server/0856-Bandaid-fix-for-Effect.patch similarity index 98% rename from patches/server/0857-Bandaid-fix-for-Effect.patch rename to patches/server/0856-Bandaid-fix-for-Effect.patch index d0958234c..d7a85ce5c 100644 --- a/patches/server/0857-Bandaid-fix-for-Effect.patch +++ b/patches/server/0856-Bandaid-fix-for-Effect.patch @@ -81,7 +81,7 @@ index cb28a7504e809a8b1e8ab6e34e14e414c542055f..28458a499702989d640d88de8fa7e886 // Special case: the axis is optional for ELECTRIC_SPARK Preconditions.checkArgument(effect.getData() == null || effect == Effect.ELECTRIC_SPARK, "Wrong kind of data for the %s effect", effect); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index eb8c3b1c55e7ab9c1304d30a3da911b5051b259c..e14522b159d36c3f4cb18f285d16d262e6ca1035 100644 +index 62914bde6f6b045e6b3682581899d756d1b272f1..ccd81bc7279a92f78bb882c9443cf9ca90fd9acf 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -917,7 +917,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0858-SculkCatalyst-bloom-API.patch b/patches/server/0857-SculkCatalyst-bloom-API.patch similarity index 100% rename from patches/server/0858-SculkCatalyst-bloom-API.patch rename to patches/server/0857-SculkCatalyst-bloom-API.patch diff --git a/patches/server/0859-API-for-an-entity-s-scoreboard-name.patch b/patches/server/0858-API-for-an-entity-s-scoreboard-name.patch similarity index 100% rename from patches/server/0859-API-for-an-entity-s-scoreboard-name.patch rename to patches/server/0858-API-for-an-entity-s-scoreboard-name.patch diff --git a/patches/server/0860-Deprecate-and-replace-methods-with-old-StructureType.patch b/patches/server/0859-Deprecate-and-replace-methods-with-old-StructureType.patch similarity index 96% rename from patches/server/0860-Deprecate-and-replace-methods-with-old-StructureType.patch rename to patches/server/0859-Deprecate-and-replace-methods-with-old-StructureType.patch index 253aafa7b..d34d5b18d 100644 --- a/patches/server/0860-Deprecate-and-replace-methods-with-old-StructureType.patch +++ b/patches/server/0859-Deprecate-and-replace-methods-with-old-StructureType.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Deprecate and replace methods with old StructureType diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 3135e6de5915d8253892e0b642587ef53e0e5b4f..819ad0ff87de2b7f131d7c7bb5faa5f923613997 100644 +index b5af662ae3c3216b5dc30df5619d0c74db10d119..733bd5c4951426fc9471a18d4b71cb4fa1532ec2 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -2001,6 +2001,11 @@ public final class CraftServer implements Server { diff --git a/patches/server/0861-Don-t-tab-complete-namespaced-commands-if-send-names.patch b/patches/server/0860-Don-t-tab-complete-namespaced-commands-if-send-names.patch similarity index 100% rename from patches/server/0861-Don-t-tab-complete-namespaced-commands-if-send-names.patch rename to patches/server/0860-Don-t-tab-complete-namespaced-commands-if-send-names.patch diff --git a/patches/server/0862-Properly-handle-BlockBreakEvent-isDropItems.patch b/patches/server/0861-Properly-handle-BlockBreakEvent-isDropItems.patch similarity index 100% rename from patches/server/0862-Properly-handle-BlockBreakEvent-isDropItems.patch rename to patches/server/0861-Properly-handle-BlockBreakEvent-isDropItems.patch diff --git a/patches/server/0863-Fire-entity-death-event-for-ender-dragon.patch b/patches/server/0862-Fire-entity-death-event-for-ender-dragon.patch similarity index 100% rename from patches/server/0863-Fire-entity-death-event-for-ender-dragon.patch rename to patches/server/0862-Fire-entity-death-event-for-ender-dragon.patch diff --git a/patches/server/0864-Configurable-entity-tracking-range-by-Y-coordinate.patch b/patches/server/0863-Configurable-entity-tracking-range-by-Y-coordinate.patch similarity index 100% rename from patches/server/0864-Configurable-entity-tracking-range-by-Y-coordinate.patch rename to patches/server/0863-Configurable-entity-tracking-range-by-Y-coordinate.patch diff --git a/patches/server/0865-Add-Listing-API-for-Player.patch b/patches/server/0864-Add-Listing-API-for-Player.patch similarity index 98% rename from patches/server/0865-Add-Listing-API-for-Player.patch rename to patches/server/0864-Add-Listing-API-for-Player.patch index 400b0f504..bd96c74d5 100644 --- a/patches/server/0865-Add-Listing-API-for-Player.patch +++ b/patches/server/0864-Add-Listing-API-for-Player.patch @@ -82,7 +82,7 @@ index 6247a21c9c391abf1f6db3482c659593e4f29355..9ccca41bf23efadba5329cc584bbcdca static class EntryBuilder { diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 1eed5ebf96f8e8889d5af346d45a401b282bab21..4b597ed9a71908ecec3b6da5b6a4a735cf22498b 100644 +index 387470d6cfd34dc6f9c895a962ddcdf92583ab8c..c9d72ab365dcfc2482764463b116451187684b3c 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -359,14 +359,22 @@ public abstract class PlayerList { @@ -119,7 +119,7 @@ index 1eed5ebf96f8e8889d5af346d45a401b282bab21..4b597ed9a71908ecec3b6da5b6a4a735 // Paper end - Use single player info update packet on join player.sentListPacket = true; diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index e14522b159d36c3f4cb18f285d16d262e6ca1035..b250efdcfbdfc211a63060146e3e5a22527b7117 100644 +index ccd81bc7279a92f78bb882c9443cf9ca90fd9acf..a3912d4de96a6bb2b9b3977705fa3facb891f73d 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -201,6 +201,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0866-Configurable-Region-Compression-Format.patch b/patches/server/0865-Configurable-Region-Compression-Format.patch similarity index 100% rename from patches/server/0866-Configurable-Region-Compression-Format.patch rename to patches/server/0865-Configurable-Region-Compression-Format.patch diff --git a/patches/server/0867-Add-BlockFace-to-BlockDamageEvent.patch b/patches/server/0866-Add-BlockFace-to-BlockDamageEvent.patch similarity index 96% rename from patches/server/0867-Add-BlockFace-to-BlockDamageEvent.patch rename to patches/server/0866-Add-BlockFace-to-BlockDamageEvent.patch index 28fdbf6dc..749d93224 100644 --- a/patches/server/0867-Add-BlockFace-to-BlockDamageEvent.patch +++ b/patches/server/0866-Add-BlockFace-to-BlockDamageEvent.patch @@ -18,7 +18,7 @@ index c680f081ba548f84f07a968a46811090c53e57e3..d839f8df658c894f144ba4637d290ffb if (blockEvent.isCancelled()) { // Let the client know the block still exists diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 50346dda83472bddc043f8e8c45f9131c2e5958c..d80587afa3d0c8c5a0dd8112bbb73bc56ac1722d 100644 +index 907ea60b647d529f133986632d00416269bc311e..6b241ec85f360ec79f18b911175d7092861024a4 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -661,13 +661,13 @@ public class CraftEventFactory { diff --git a/patches/server/0868-Fix-NPE-on-Boat-getStatus.patch b/patches/server/0867-Fix-NPE-on-Boat-getStatus.patch similarity index 100% rename from patches/server/0868-Fix-NPE-on-Boat-getStatus.patch rename to patches/server/0867-Fix-NPE-on-Boat-getStatus.patch diff --git a/patches/server/0869-Expand-Pose-API.patch b/patches/server/0868-Expand-Pose-API.patch similarity index 100% rename from patches/server/0869-Expand-Pose-API.patch rename to patches/server/0868-Expand-Pose-API.patch diff --git a/patches/server/0870-More-DragonBattle-API.patch b/patches/server/0869-More-DragonBattle-API.patch similarity index 100% rename from patches/server/0870-More-DragonBattle-API.patch rename to patches/server/0869-More-DragonBattle-API.patch diff --git a/patches/server/0871-Add-PlayerPickItemEvent.patch b/patches/server/0870-Add-PlayerPickItemEvent.patch similarity index 100% rename from patches/server/0871-Add-PlayerPickItemEvent.patch rename to patches/server/0870-Add-PlayerPickItemEvent.patch diff --git a/patches/server/0872-Allow-trident-custom-damage.patch b/patches/server/0871-Allow-trident-custom-damage.patch similarity index 100% rename from patches/server/0872-Allow-trident-custom-damage.patch rename to patches/server/0871-Allow-trident-custom-damage.patch diff --git a/patches/server/0873-Expose-hand-in-BlockCanBuildEvent.patch b/patches/server/0872-Expose-hand-in-BlockCanBuildEvent.patch similarity index 100% rename from patches/server/0873-Expose-hand-in-BlockCanBuildEvent.patch rename to patches/server/0872-Expose-hand-in-BlockCanBuildEvent.patch diff --git a/patches/server/0874-Optimize-nearest-structure-border-iteration.patch b/patches/server/0873-Optimize-nearest-structure-border-iteration.patch similarity index 100% rename from patches/server/0874-Optimize-nearest-structure-border-iteration.patch rename to patches/server/0873-Optimize-nearest-structure-border-iteration.patch diff --git a/patches/server/0875-Implement-OfflinePlayer-isConnected.patch b/patches/server/0874-Implement-OfflinePlayer-isConnected.patch similarity index 94% rename from patches/server/0875-Implement-OfflinePlayer-isConnected.patch rename to patches/server/0874-Implement-OfflinePlayer-isConnected.patch index acca20cfc..1543a8e3e 100644 --- a/patches/server/0875-Implement-OfflinePlayer-isConnected.patch +++ b/patches/server/0874-Implement-OfflinePlayer-isConnected.patch @@ -23,7 +23,7 @@ index 4d654c4f0b6210a9841427789ba70ce5d1d308be..9d93130f23addb18b97d7f5ec013faef public String getName() { Player player = this.getPlayer(); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index b250efdcfbdfc211a63060146e3e5a22527b7117..a65200854d8a0dba635b0f403f6c0a8442fbf19f 100644 +index a3912d4de96a6bb2b9b3977705fa3facb891f73d..a1b870fb3d1fd5d209474c47bf523d0d5d58ce39 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -256,6 +256,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0876-Fix-slot-desync.patch b/patches/server/0875-Fix-slot-desync.patch similarity index 100% rename from patches/server/0876-Fix-slot-desync.patch rename to patches/server/0875-Fix-slot-desync.patch diff --git a/patches/server/0877-Add-titleOverride-to-InventoryOpenEvent.patch b/patches/server/0876-Add-titleOverride-to-InventoryOpenEvent.patch similarity index 95% rename from patches/server/0877-Add-titleOverride-to-InventoryOpenEvent.patch rename to patches/server/0876-Add-titleOverride-to-InventoryOpenEvent.patch index 707a896b9..ee1767993 100644 --- a/patches/server/0877-Add-titleOverride-to-InventoryOpenEvent.patch +++ b/patches/server/0876-Add-titleOverride-to-InventoryOpenEvent.patch @@ -37,10 +37,10 @@ index 530728cd4b258444f6efe064903b521f4b23cd04..b65d816bb9feb18ecf74e10e9728c302 this.initMenu(container); return OptionalInt.of(this.containerCounter); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java -index 12ab8f7cde88cd6ce3ad474fe2843d5d30c3c0d7..c1bad887d1340ebc7c63fda3dceff929e4a44517 100644 +index b782cc64426a058881947ed62316c1cb8d332037..7dcfb45c24d7743956be514c7d554e06aac77b3e 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java -@@ -358,12 +358,16 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity { +@@ -366,12 +366,16 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity { Preconditions.checkArgument(windowType != null, "Unknown windowType"); AbstractContainerMenu container = new CraftContainer(inventory, player, player.nextContainerCounter()); @@ -58,7 +58,7 @@ index 12ab8f7cde88cd6ce3ad474fe2843d5d30c3c0d7..c1bad887d1340ebc7c63fda3dceff929 //player.connection.send(new ClientboundOpenScreenPacket(container.containerId, windowType, CraftChatMessage.fromString(title)[0])); // Paper - comment if (!player.isImmobile()) player.connection.send(new ClientboundOpenScreenPacket(container.containerId, windowType, io.papermc.paper.adventure.PaperAdventure.asVanilla(adventure$title))); // Paper - Prevent opening inventories when frozen -@@ -440,7 +444,10 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity { +@@ -448,7 +452,10 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity { } // Trigger an INVENTORY_OPEN event @@ -70,7 +70,7 @@ index 12ab8f7cde88cd6ce3ad474fe2843d5d30c3c0d7..c1bad887d1340ebc7c63fda3dceff929 if (container == null) { return; } -@@ -451,6 +458,7 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity { +@@ -459,6 +466,7 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity { //String title = inventory.getTitle(); // Paper - comment net.kyori.adventure.text.Component adventure$title = inventory.title(); // Paper if (adventure$title == null) adventure$title = net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer.legacySection().deserialize(inventory.getTitle()); // Paper @@ -79,7 +79,7 @@ index 12ab8f7cde88cd6ce3ad474fe2843d5d30c3c0d7..c1bad887d1340ebc7c63fda3dceff929 if (!player.isImmobile()) player.connection.send(new ClientboundOpenScreenPacket(container.containerId, windowType, io.papermc.paper.adventure.PaperAdventure.asVanilla(adventure$title))); // Paper - Prevent opening inventories when frozen player.containerMenu = container; diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index d80587afa3d0c8c5a0dd8112bbb73bc56ac1722d..3e1ef91d7f0bd098e7c7ebee49c43ca9436947b8 100644 +index 6b241ec85f360ec79f18b911175d7092861024a4..2690c471b819f8308f6db44150025dfa323d4e0c 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -1403,10 +1403,21 @@ public class CraftEventFactory { diff --git a/patches/server/0878-Configure-sniffer-egg-hatch-time.patch b/patches/server/0877-Configure-sniffer-egg-hatch-time.patch similarity index 100% rename from patches/server/0878-Configure-sniffer-egg-hatch-time.patch rename to patches/server/0877-Configure-sniffer-egg-hatch-time.patch diff --git a/patches/server/0879-Do-crystal-portal-proximity-check-before-entity-look.patch b/patches/server/0878-Do-crystal-portal-proximity-check-before-entity-look.patch similarity index 100% rename from patches/server/0879-Do-crystal-portal-proximity-check-before-entity-look.patch rename to patches/server/0878-Do-crystal-portal-proximity-check-before-entity-look.patch diff --git a/patches/server/0880-Skip-POI-finding-if-stuck-in-vehicle.patch b/patches/server/0879-Skip-POI-finding-if-stuck-in-vehicle.patch similarity index 100% rename from patches/server/0880-Skip-POI-finding-if-stuck-in-vehicle.patch rename to patches/server/0879-Skip-POI-finding-if-stuck-in-vehicle.patch diff --git a/patches/server/0881-Add-slot-sanity-checks-in-container-clicks.patch b/patches/server/0880-Add-slot-sanity-checks-in-container-clicks.patch similarity index 100% rename from patches/server/0881-Add-slot-sanity-checks-in-container-clicks.patch rename to patches/server/0880-Add-slot-sanity-checks-in-container-clicks.patch diff --git a/patches/server/0882-Call-BlockRedstoneEvents-for-lecterns.patch b/patches/server/0881-Call-BlockRedstoneEvents-for-lecterns.patch similarity index 100% rename from patches/server/0882-Call-BlockRedstoneEvents-for-lecterns.patch rename to patches/server/0881-Call-BlockRedstoneEvents-for-lecterns.patch diff --git a/patches/server/0883-Allow-proper-checking-of-empty-item-stacks.patch b/patches/server/0882-Allow-proper-checking-of-empty-item-stacks.patch similarity index 100% rename from patches/server/0883-Allow-proper-checking-of-empty-item-stacks.patch rename to patches/server/0882-Allow-proper-checking-of-empty-item-stacks.patch diff --git a/patches/server/0884-Fix-silent-equipment-change-for-mobs.patch b/patches/server/0883-Fix-silent-equipment-change-for-mobs.patch similarity index 100% rename from patches/server/0884-Fix-silent-equipment-change-for-mobs.patch rename to patches/server/0883-Fix-silent-equipment-change-for-mobs.patch diff --git a/patches/server/0885-Fix-spigot-s-Forced-Stats.patch b/patches/server/0884-Fix-spigot-s-Forced-Stats.patch similarity index 100% rename from patches/server/0885-Fix-spigot-s-Forced-Stats.patch rename to patches/server/0884-Fix-spigot-s-Forced-Stats.patch diff --git a/patches/server/0886-Add-missing-InventoryHolders-to-inventories.patch b/patches/server/0885-Add-missing-InventoryHolders-to-inventories.patch similarity index 100% rename from patches/server/0886-Add-missing-InventoryHolders-to-inventories.patch rename to patches/server/0885-Add-missing-InventoryHolders-to-inventories.patch diff --git a/patches/server/0887-Do-not-read-tile-entities-in-chunks-that-are-positio.patch b/patches/server/0886-Do-not-read-tile-entities-in-chunks-that-are-positio.patch similarity index 100% rename from patches/server/0887-Do-not-read-tile-entities-in-chunks-that-are-positio.patch rename to patches/server/0886-Do-not-read-tile-entities-in-chunks-that-are-positio.patch diff --git a/patches/server/0888-Add-missing-logs-for-log-ips-config-option.patch b/patches/server/0887-Add-missing-logs-for-log-ips-config-option.patch similarity index 100% rename from patches/server/0888-Add-missing-logs-for-log-ips-config-option.patch rename to patches/server/0887-Add-missing-logs-for-log-ips-config-option.patch diff --git a/patches/server/0889-Fix-race-condition-on-UpgradeData.BlockFixers-class-.patch b/patches/server/0888-Fix-race-condition-on-UpgradeData.BlockFixers-class-.patch similarity index 100% rename from patches/server/0889-Fix-race-condition-on-UpgradeData.BlockFixers-class-.patch rename to patches/server/0888-Fix-race-condition-on-UpgradeData.BlockFixers-class-.patch diff --git a/patches/server/0890-Fix-NPE-in-AdvancementProgress-getDateAwarded.patch b/patches/server/0889-Fix-NPE-in-AdvancementProgress-getDateAwarded.patch similarity index 100% rename from patches/server/0890-Fix-NPE-in-AdvancementProgress-getDateAwarded.patch rename to patches/server/0889-Fix-NPE-in-AdvancementProgress-getDateAwarded.patch diff --git a/patches/server/0891-Fix-team-sidebar-objectives-not-being-cleared.patch b/patches/server/0890-Fix-team-sidebar-objectives-not-being-cleared.patch similarity index 100% rename from patches/server/0891-Fix-team-sidebar-objectives-not-being-cleared.patch rename to patches/server/0890-Fix-team-sidebar-objectives-not-being-cleared.patch diff --git a/patches/server/0892-Fix-missing-map-initialize-event-call.patch b/patches/server/0891-Fix-missing-map-initialize-event-call.patch similarity index 100% rename from patches/server/0892-Fix-missing-map-initialize-event-call.patch rename to patches/server/0891-Fix-missing-map-initialize-event-call.patch diff --git a/patches/server/0893-Update-entity-data-when-attaching-firework-to-entity.patch b/patches/server/0892-Update-entity-data-when-attaching-firework-to-entity.patch similarity index 100% rename from patches/server/0893-Update-entity-data-when-attaching-firework-to-entity.patch rename to patches/server/0892-Update-entity-data-when-attaching-firework-to-entity.patch diff --git a/patches/server/0894-Fix-UnsafeValues-loadAdvancement.patch b/patches/server/0893-Fix-UnsafeValues-loadAdvancement.patch similarity index 100% rename from patches/server/0894-Fix-UnsafeValues-loadAdvancement.patch rename to patches/server/0893-Fix-UnsafeValues-loadAdvancement.patch diff --git a/patches/server/0895-Add-player-idle-duration-API.patch b/patches/server/0894-Add-player-idle-duration-API.patch similarity index 91% rename from patches/server/0895-Add-player-idle-duration-API.patch rename to patches/server/0894-Add-player-idle-duration-API.patch index 5f04d05fb..0713bbba0 100644 --- a/patches/server/0895-Add-player-idle-duration-API.patch +++ b/patches/server/0894-Add-player-idle-duration-API.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Add player idle duration API Implements API for getting and resetting a player's idle duration. diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index a65200854d8a0dba635b0f403f6c0a8442fbf19f..c1449a0c2b6d3612f88c0aeea2e9b6d6bd18146e 100644 +index a1b870fb3d1fd5d209474c47bf523d0d5d58ce39..1d79bacbfb24442573245550263141ad56332971 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -3419,6 +3419,18 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0896-Don-t-check-if-we-can-see-non-visible-entities.patch b/patches/server/0895-Don-t-check-if-we-can-see-non-visible-entities.patch similarity index 100% rename from patches/server/0896-Don-t-check-if-we-can-see-non-visible-entities.patch rename to patches/server/0895-Don-t-check-if-we-can-see-non-visible-entities.patch diff --git a/patches/server/0897-Fix-NPE-in-SculkBloomEvent-world-access.patch b/patches/server/0896-Fix-NPE-in-SculkBloomEvent-world-access.patch similarity index 100% rename from patches/server/0897-Fix-NPE-in-SculkBloomEvent-world-access.patch rename to patches/server/0896-Fix-NPE-in-SculkBloomEvent-world-access.patch diff --git a/patches/server/0898-Allow-null-itemstack-for-Player-sendEquipmentChange.patch b/patches/server/0897-Allow-null-itemstack-for-Player-sendEquipmentChange.patch similarity index 90% rename from patches/server/0898-Allow-null-itemstack-for-Player-sendEquipmentChange.patch rename to patches/server/0897-Allow-null-itemstack-for-Player-sendEquipmentChange.patch index a266132ac..6839ae581 100644 --- a/patches/server/0898-Allow-null-itemstack-for-Player-sendEquipmentChange.patch +++ b/patches/server/0897-Allow-null-itemstack-for-Player-sendEquipmentChange.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Allow null itemstack for Player#sendEquipmentChange diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index c1449a0c2b6d3612f88c0aeea2e9b6d6bd18146e..eb179d731e4ce7e0d12a9d3bf8d0649f150e7218 100644 +index 1d79bacbfb24442573245550263141ad56332971..b2abaf6b535da13cdeeb99c568b91c585ac2ed20 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -1127,7 +1127,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0899-Optimize-VarInts.patch b/patches/server/0898-Optimize-VarInts.patch similarity index 100% rename from patches/server/0899-Optimize-VarInts.patch rename to patches/server/0898-Optimize-VarInts.patch diff --git a/patches/server/0900-Add-API-to-get-the-collision-shape-of-a-block-before.patch b/patches/server/0899-Add-API-to-get-the-collision-shape-of-a-block-before.patch similarity index 100% rename from patches/server/0900-Add-API-to-get-the-collision-shape-of-a-block-before.patch rename to patches/server/0899-Add-API-to-get-the-collision-shape-of-a-block-before.patch diff --git a/patches/server/0901-Add-predicate-for-blocks-when-raytracing.patch b/patches/server/0900-Add-predicate-for-blocks-when-raytracing.patch similarity index 100% rename from patches/server/0901-Add-predicate-for-blocks-when-raytracing.patch rename to patches/server/0900-Add-predicate-for-blocks-when-raytracing.patch diff --git a/patches/server/0902-Broadcast-take-item-packets-with-collector-as-source.patch b/patches/server/0901-Broadcast-take-item-packets-with-collector-as-source.patch similarity index 92% rename from patches/server/0902-Broadcast-take-item-packets-with-collector-as-source.patch rename to patches/server/0901-Broadcast-take-item-packets-with-collector-as-source.patch index d06504111..740ea621a 100644 --- a/patches/server/0902-Broadcast-take-item-packets-with-collector-as-source.patch +++ b/patches/server/0901-Broadcast-take-item-packets-with-collector-as-source.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Broadcast take item packets with collector as source This fixes players (which can't view the collector) seeing item pickups with themselves as the target. diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 3bd9eaf4f0537167ed27c666e805fbf65c640445..e8a5bd0341115094a729914611430c9f28c77d84 100644 +index 4e96a65396b687d2823f2229744f5d448ba87512..04232f281ebd46954ef2259962c7bfc43b8a8aeb 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -3749,7 +3749,7 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/0903-Expand-LingeringPotion-API.patch b/patches/server/0902-Expand-LingeringPotion-API.patch similarity index 100% rename from patches/server/0903-Expand-LingeringPotion-API.patch rename to patches/server/0902-Expand-LingeringPotion-API.patch diff --git a/patches/server/0904-Fix-strikeLightningEffect-powers-lightning-rods-and-.patch b/patches/server/0903-Fix-strikeLightningEffect-powers-lightning-rods-and-.patch similarity index 100% rename from patches/server/0904-Fix-strikeLightningEffect-powers-lightning-rods-and-.patch rename to patches/server/0903-Fix-strikeLightningEffect-powers-lightning-rods-and-.patch diff --git a/patches/server/0905-Add-hand-to-fish-event-for-all-player-interactions.patch b/patches/server/0904-Add-hand-to-fish-event-for-all-player-interactions.patch similarity index 100% rename from patches/server/0905-Add-hand-to-fish-event-for-all-player-interactions.patch rename to patches/server/0904-Add-hand-to-fish-event-for-all-player-interactions.patch diff --git a/patches/server/0906-Fix-several-issues-with-EntityBreedEvent.patch b/patches/server/0905-Fix-several-issues-with-EntityBreedEvent.patch similarity index 100% rename from patches/server/0906-Fix-several-issues-with-EntityBreedEvent.patch rename to patches/server/0905-Fix-several-issues-with-EntityBreedEvent.patch diff --git a/patches/server/0907-Add-UUID-attribute-modifier-API.patch b/patches/server/0906-Add-UUID-attribute-modifier-API.patch similarity index 100% rename from patches/server/0907-Add-UUID-attribute-modifier-API.patch rename to patches/server/0906-Add-UUID-attribute-modifier-API.patch diff --git a/patches/server/0908-Fix-missing-event-call-for-entity-teleport-API.patch b/patches/server/0907-Fix-missing-event-call-for-entity-teleport-API.patch similarity index 100% rename from patches/server/0908-Fix-missing-event-call-for-entity-teleport-API.patch rename to patches/server/0907-Fix-missing-event-call-for-entity-teleport-API.patch diff --git a/patches/server/0909-Lazily-create-LootContext-for-criterions.patch b/patches/server/0908-Lazily-create-LootContext-for-criterions.patch similarity index 100% rename from patches/server/0909-Lazily-create-LootContext-for-criterions.patch rename to patches/server/0908-Lazily-create-LootContext-for-criterions.patch diff --git a/patches/server/0910-Don-t-fire-sync-events-during-worldgen.patch b/patches/server/0909-Don-t-fire-sync-events-during-worldgen.patch similarity index 99% rename from patches/server/0910-Don-t-fire-sync-events-during-worldgen.patch rename to patches/server/0909-Don-t-fire-sync-events-during-worldgen.patch index 5f8998389..6d438fe4c 100644 --- a/patches/server/0910-Don-t-fire-sync-events-during-worldgen.patch +++ b/patches/server/0909-Don-t-fire-sync-events-during-worldgen.patch @@ -68,7 +68,7 @@ index 5fb3279342506611882b5780cfbee0371919c93c..b98f9246b60daf31460f41ce214dfa7c }, () -> { EntityType.LOGGER.warn("Skipping Entity with id {}", nbt.getString("id")); diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index e8a5bd0341115094a729914611430c9f28c77d84..b28e2d35df067e5f526d8990d633ca4a6d6c453b 100644 +index 04232f281ebd46954ef2259962c7bfc43b8a8aeb..0c67f04ae7eeaa10a90419031447ad5397c6b9e2 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -1138,6 +1138,11 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/0911-Add-Structure-check-API.patch b/patches/server/0910-Add-Structure-check-API.patch similarity index 100% rename from patches/server/0911-Add-Structure-check-API.patch rename to patches/server/0910-Add-Structure-check-API.patch diff --git a/patches/server/0912-Fix-CraftMetaItem-getAttributeModifier-duplication-c.patch b/patches/server/0911-Fix-CraftMetaItem-getAttributeModifier-duplication-c.patch similarity index 100% rename from patches/server/0912-Fix-CraftMetaItem-getAttributeModifier-duplication-c.patch rename to patches/server/0911-Fix-CraftMetaItem-getAttributeModifier-duplication-c.patch diff --git a/patches/server/0913-Restore-vanilla-entity-drops-behavior.patch b/patches/server/0912-Restore-vanilla-entity-drops-behavior.patch similarity index 98% rename from patches/server/0913-Restore-vanilla-entity-drops-behavior.patch rename to patches/server/0912-Restore-vanilla-entity-drops-behavior.patch index 765b6340a..ac0264947 100644 --- a/patches/server/0913-Restore-vanilla-entity-drops-behavior.patch +++ b/patches/server/0912-Restore-vanilla-entity-drops-behavior.patch @@ -91,7 +91,7 @@ index f163cb3c75e90b96b3794a7e0c5b803268814c8c..57e7938bc605f320ed5303fcbc617b4d return this.spawnAtLocation(entityitem); } diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index b28e2d35df067e5f526d8990d633ca4a6d6c453b..306b55276189099bbbc8f2c86ad7428381fcf58c 100644 +index 0c67f04ae7eeaa10a90419031447ad5397c6b9e2..6b2dc430126713e11658f94762035ff10bbe018c 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -278,7 +278,7 @@ public abstract class LivingEntity extends Entity implements Attackable { @@ -152,7 +152,7 @@ index 5bcb9a53ebebeef4bd6ec2458df4b63002ebd804..2f398750bfee5758ad8b1367b6fc1436 } } diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 3e1ef91d7f0bd098e7c7ebee49c43ca9436947b8..5dea6473f04bcbbb7d0d8c9289fe31434233065e 100644 +index 2690c471b819f8308f6db44150025dfa323d4e0c..0d6cdb6b0dfd84f619a5e43150165b4606a96bcd 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -975,18 +975,24 @@ public class CraftEventFactory { diff --git a/patches/server/0914-Dont-resend-blocks-on-interactions.patch b/patches/server/0913-Dont-resend-blocks-on-interactions.patch similarity index 99% rename from patches/server/0914-Dont-resend-blocks-on-interactions.patch rename to patches/server/0913-Dont-resend-blocks-on-interactions.patch index ce903f155..f349629dd 100644 --- a/patches/server/0914-Dont-resend-blocks-on-interactions.patch +++ b/patches/server/0913-Dont-resend-blocks-on-interactions.patch @@ -149,7 +149,7 @@ index 6caed156ed0cfe0017d578f58cb963ee68272d78..321188173918d0d60858a258400dfd68 return false; } diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index 7cc9ded0e53bc1c6313ab720c852b1b0163ba951..e22d6f787d73fda00bc0961bd3279da2a8ab56e3 100644 +index 355e461da5551e38bbc2ede69c5818f7db27011c..abacf779b3eb2de126137d3c4166a7fc648b291c 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java @@ -500,10 +500,12 @@ public final class ItemStack implements DataComponentHolder { diff --git a/patches/server/0915-add-more-scoreboard-API.patch b/patches/server/0914-add-more-scoreboard-API.patch similarity index 100% rename from patches/server/0915-add-more-scoreboard-API.patch rename to patches/server/0914-add-more-scoreboard-API.patch diff --git a/patches/server/0916-Improve-Registry.patch b/patches/server/0915-Improve-Registry.patch similarity index 94% rename from patches/server/0916-Improve-Registry.patch rename to patches/server/0915-Improve-Registry.patch index bebb96372..bd6287869 100644 --- a/patches/server/0916-Improve-Registry.patch +++ b/patches/server/0915-Improve-Registry.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Improve Registry diff --git a/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java b/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java -index 154733684a53ff84ca8c2a994b96b68733e9fba5..1da61e0392ec1e15c0ab9d7d71b2b2b682d10130 100644 +index d1db491027a5e2d22a6c956b26a974a284d44c57..9b78bfd187a1bd5f99af5690f194441904956c7d 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java -@@ -153,6 +153,7 @@ public class CraftRegistry implements Registry { +@@ -155,6 +155,7 @@ public class CraftRegistry implements Registry { private final Class bukkitClass; // Paper - relax preload class private final Map cache = new HashMap<>(); @@ -16,7 +16,7 @@ index 154733684a53ff84ca8c2a994b96b68733e9fba5..1da61e0392ec1e15c0ab9d7d71b2b2b6 private final net.minecraft.core.Registry minecraftRegistry; private final BiFunction minecraftToBukkit; private final BiFunction serializationUpdater; // Paper - rename to make it *clear* what it is *only* for -@@ -201,6 +202,7 @@ public class CraftRegistry implements Registry { +@@ -203,6 +204,7 @@ public class CraftRegistry implements Registry { } this.cache.put(namespacedKey, bukkit); @@ -24,7 +24,7 @@ index 154733684a53ff84ca8c2a994b96b68733e9fba5..1da61e0392ec1e15c0ab9d7d71b2b2b6 return bukkit; } -@@ -223,4 +225,11 @@ public class CraftRegistry implements Registry { +@@ -225,4 +227,11 @@ public class CraftRegistry implements Registry { return this.minecraftToBukkit.apply(namespacedKey, minecraft); } diff --git a/patches/server/0917-Fix-NPE-on-null-loc-for-EntityTeleportEvent.patch b/patches/server/0916-Fix-NPE-on-null-loc-for-EntityTeleportEvent.patch similarity index 96% rename from patches/server/0917-Fix-NPE-on-null-loc-for-EntityTeleportEvent.patch rename to patches/server/0916-Fix-NPE-on-null-loc-for-EntityTeleportEvent.patch index c899162e3..d0dc04a7e 100644 --- a/patches/server/0917-Fix-NPE-on-null-loc-for-EntityTeleportEvent.patch +++ b/patches/server/0916-Fix-NPE-on-null-loc-for-EntityTeleportEvent.patch @@ -26,10 +26,10 @@ index a306b30af19277386a2f3e560b4902a8b5796f2a..54851f6cc0d5fddb32a9a1e84a4f5ae4 x = to.getX(); y = to.getY(); diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 306b55276189099bbbc8f2c86ad7428381fcf58c..278e22985ecda6653ce01a29209eb51506c48438 100644 +index 6b2dc430126713e11658f94762035ff10bbe018c..13ef1ad250b56dbadba0244186e369d7ba9b5c0e 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -4229,7 +4229,7 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -4232,7 +4232,7 @@ public abstract class LivingEntity extends Entity implements Attackable { if (!(this instanceof ServerPlayer)) { EntityTeleportEvent teleport = new EntityTeleportEvent(this.getBukkitEntity(), new Location(this.level().getWorld(), d3, d4, d5), new Location(this.level().getWorld(), d0, d6, d2)); this.level().getCraftServer().getPluginManager().callEvent(teleport); diff --git a/patches/server/0918-Add-experience-points-API.patch b/patches/server/0917-Add-experience-points-API.patch similarity index 97% rename from patches/server/0918-Add-experience-points-API.patch rename to patches/server/0917-Add-experience-points-API.patch index 4abb3e069..fc3044601 100644 --- a/patches/server/0918-Add-experience-points-API.patch +++ b/patches/server/0917-Add-experience-points-API.patch @@ -18,7 +18,7 @@ index 950ce40d268d89ff3c503116081db6c9ccd65329..454b29d8c9e42e328933aa578f49d28f // Paper start - send while respecting visibility private static void sendSoundEffect(Player fromEntity, double x, double y, double z, SoundEvent soundEffect, SoundSource soundCategory, float volume, float pitch) { diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index eb179d731e4ce7e0d12a9d3bf8d0649f150e7218..20398155e5018140c7a014718a6aa9d82d624572 100644 +index b2abaf6b535da13cdeeb99c568b91c585ac2ed20..6db4d21ee4dc97820943d3fd2aa55054cac95f50 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -1921,6 +1921,49 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0919-Add-drops-to-shear-events.patch b/patches/server/0918-Add-drops-to-shear-events.patch similarity index 99% rename from patches/server/0919-Add-drops-to-shear-events.patch rename to patches/server/0918-Add-drops-to-shear-events.patch index b19f491bf..87f104d00 100644 --- a/patches/server/0919-Add-drops-to-shear-events.patch +++ b/patches/server/0918-Add-drops-to-shear-events.patch @@ -317,7 +317,7 @@ index dc6230458e09f7555eee7f6a567ff60ad454666b..9d50b9ac8084f3db1844cc7ad1ce9153 public boolean readyForShearing() { return !this.isSheared() && this.isAlive(); diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 5dea6473f04bcbbb7d0d8c9289fe31434233065e..4efd60ec678a8f291401e293862f6bfbf376a2b0 100644 +index 0d6cdb6b0dfd84f619a5e43150165b4606a96bcd..d4c809649ff84ac953c0c93fc7031a27d235b72c 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -1691,20 +1691,20 @@ public class CraftEventFactory { diff --git a/patches/server/0920-Add-PlayerShieldDisableEvent.patch b/patches/server/0919-Add-PlayerShieldDisableEvent.patch similarity index 100% rename from patches/server/0920-Add-PlayerShieldDisableEvent.patch rename to patches/server/0919-Add-PlayerShieldDisableEvent.patch diff --git a/patches/server/0921-Validate-ResourceLocation-in-NBT-reading.patch b/patches/server/0920-Validate-ResourceLocation-in-NBT-reading.patch similarity index 98% rename from patches/server/0921-Validate-ResourceLocation-in-NBT-reading.patch rename to patches/server/0920-Validate-ResourceLocation-in-NBT-reading.patch index 6373db1e8..48e7f7ded 100644 --- a/patches/server/0921-Validate-ResourceLocation-in-NBT-reading.patch +++ b/patches/server/0920-Validate-ResourceLocation-in-NBT-reading.patch @@ -40,7 +40,7 @@ index 87afe84791af2d5e9f869cd4c09eed4bb5fee75b..1967c43ee3a12e63365cc40ee6565307 this.path = path; } diff --git a/src/main/java/net/minecraft/world/RandomizableContainer.java b/src/main/java/net/minecraft/world/RandomizableContainer.java -index a47393f9776763015de522859dc0f206b93b3a98..889013ceacbd107faff11611ac902a9d4f2b8dab 100644 +index 084935138b1484f3d96e99f4e5655a6c04931907..9e357abe13f55bd9ce3a1d5348bcf19a15ea5433 100644 --- a/src/main/java/net/minecraft/world/RandomizableContainer.java +++ b/src/main/java/net/minecraft/world/RandomizableContainer.java @@ -50,7 +50,7 @@ public interface RandomizableContainer extends Container { @@ -66,7 +66,7 @@ index b98f9246b60daf31460f41ce214dfa7c011f5684..842b0cec0397d7ae5166617627340ffa @Nullable diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 278e22985ecda6653ce01a29209eb51506c48438..474868d362d855423f74fd604c1050cf33ba27f3 100644 +index 13ef1ad250b56dbadba0244186e369d7ba9b5c0e..94169703c5a8111df1ed550d57f59f4a3bb97ae1 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -887,11 +887,13 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/0922-Properly-handle-experience-dropping-on-block-break.patch b/patches/server/0921-Properly-handle-experience-dropping-on-block-break.patch similarity index 100% rename from patches/server/0922-Properly-handle-experience-dropping-on-block-break.patch rename to patches/server/0921-Properly-handle-experience-dropping-on-block-break.patch diff --git a/patches/server/0923-Fixup-NamespacedKey-handling.patch b/patches/server/0922-Fixup-NamespacedKey-handling.patch similarity index 98% rename from patches/server/0923-Fixup-NamespacedKey-handling.patch rename to patches/server/0922-Fixup-NamespacedKey-handling.patch index ac021fa17..f5d990944 100644 --- a/patches/server/0923-Fixup-NamespacedKey-handling.patch +++ b/patches/server/0922-Fixup-NamespacedKey-handling.patch @@ -18,10 +18,10 @@ index e34deaf398dc6722c3128bdd6b9bc16da2d33bf7..f028daa4f23a1f1868c9922991259739 public static NamespacedKey minecraftToBukkitKey(ResourceKey minecraft) { diff --git a/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java b/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java -index 1da61e0392ec1e15c0ab9d7d71b2b2b682d10130..c2824cc07b761958a0df4b110bdfc53bd853b9e7 100644 +index 9b78bfd187a1bd5f99af5690f194441904956c7d..bd16933a5341908b21e549f66080c33466ad1079 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java -@@ -120,6 +120,16 @@ public class CraftRegistry implements Registry { +@@ -122,6 +122,16 @@ public class CraftRegistry implements Registry { + ", this can happen if a plugin creates its own registry entry with out properly registering it."); } diff --git a/patches/server/0924-Expose-LootTable-of-DecoratedPot.patch b/patches/server/0923-Expose-LootTable-of-DecoratedPot.patch similarity index 100% rename from patches/server/0924-Expose-LootTable-of-DecoratedPot.patch rename to patches/server/0923-Expose-LootTable-of-DecoratedPot.patch diff --git a/patches/server/0925-Reduce-allocation-of-Vec3D-by-entity-tracker.patch b/patches/server/0924-Reduce-allocation-of-Vec3D-by-entity-tracker.patch similarity index 100% rename from patches/server/0925-Reduce-allocation-of-Vec3D-by-entity-tracker.patch rename to patches/server/0924-Reduce-allocation-of-Vec3D-by-entity-tracker.patch diff --git a/patches/server/0926-Add-PlayerTradeEvent-and-PlayerPurchaseEvent.patch b/patches/server/0925-Add-PlayerTradeEvent-and-PlayerPurchaseEvent.patch similarity index 97% rename from patches/server/0926-Add-PlayerTradeEvent-and-PlayerPurchaseEvent.patch rename to patches/server/0925-Add-PlayerTradeEvent-and-PlayerPurchaseEvent.patch index ace1ed689..95e1104a2 100644 --- a/patches/server/0926-Add-PlayerTradeEvent-and-PlayerPurchaseEvent.patch +++ b/patches/server/0925-Add-PlayerTradeEvent-and-PlayerPurchaseEvent.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Add PlayerTradeEvent and PlayerPurchaseEvent Co-authored-by: Alexander diff --git a/src/main/java/net/minecraft/world/entity/npc/AbstractVillager.java b/src/main/java/net/minecraft/world/entity/npc/AbstractVillager.java -index 6139361c0e733f981506abdd7101e5ca20eeb88f..49b35fab8ee98a384ee12d36bbe2ac813342f1d6 100644 +index 2a155d3611ca2370830ca763d40074df6641958f..d28ebcae036168dd65a5f3236d12ee416308c23f 100644 --- a/src/main/java/net/minecraft/world/entity/npc/AbstractVillager.java +++ b/src/main/java/net/minecraft/world/entity/npc/AbstractVillager.java -@@ -143,11 +143,24 @@ public abstract class AbstractVillager extends AgeableMob implements InventoryCa +@@ -141,11 +141,24 @@ public abstract class AbstractVillager extends AgeableMob implements InventoryCa @Override public void overrideXp(int experience) {} @@ -208,10 +208,10 @@ index 5a350948a4735902f5c612592bc9d100445a0c8a..716b30dcd7e63c66736c448dd136c9f7 void notifyTradeUpdated(ItemStack stack); diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMerchantCustom.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMerchantCustom.java -index adf22ce4f0bcd3bd57dc2030c6c92d3df96566e3..e33ddcd967a427abfda9e6692338da4996a81c6c 100644 +index ef47eb9a321a7b082413d3986d3d394afb899610..54debe9da0a26aea02c964fdc7efb372e07974c0 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMerchantCustom.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMerchantCustom.java -@@ -74,10 +74,25 @@ public class CraftMerchantCustom extends CraftMerchant { +@@ -76,10 +76,25 @@ public class CraftMerchantCustom implements CraftMerchant { return this.trades; } diff --git a/patches/server/0927-Add-ShulkerDuplicateEvent.patch b/patches/server/0926-Add-ShulkerDuplicateEvent.patch similarity index 100% rename from patches/server/0927-Add-ShulkerDuplicateEvent.patch rename to patches/server/0926-Add-ShulkerDuplicateEvent.patch diff --git a/patches/server/0928-Add-api-for-spawn-egg-texture-colors.patch b/patches/server/0927-Add-api-for-spawn-egg-texture-colors.patch similarity index 100% rename from patches/server/0928-Add-api-for-spawn-egg-texture-colors.patch rename to patches/server/0927-Add-api-for-spawn-egg-texture-colors.patch diff --git a/patches/server/0929-Add-Lifecycle-Event-system.patch b/patches/server/0928-Add-Lifecycle-Event-system.patch similarity index 99% rename from patches/server/0929-Add-Lifecycle-Event-system.patch rename to patches/server/0928-Add-Lifecycle-Event-system.patch index 4e40ae8cf..8cd7f2852 100644 --- a/patches/server/0929-Add-Lifecycle-Event-system.patch +++ b/patches/server/0928-Add-Lifecycle-Event-system.patch @@ -731,7 +731,7 @@ index 2e96308696e131f3f013469a395e5ddda2c5d529..65a66e484c1c39c5f41d97db52f31c67 } catch (Throwable e) { LOGGER.error("Failed to run bootstrapper for %s. This plugin will not be loaded.".formatted(provider.getSource()), e); diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 819ad0ff87de2b7f131d7c7bb5faa5f923613997..7ad17b9c3fa6b2865c8dbd824f84ae33a1dd1e9e 100644 +index 733bd5c4951426fc9471a18d4b71cb4fa1532ec2..33fbcd9fabfc42fdd457b9c7a41e4ce0281cd2c0 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -1047,6 +1047,11 @@ public final class CraftServer implements Server { diff --git a/patches/server/0930-ItemStack-Tooltip-API.patch b/patches/server/0929-ItemStack-Tooltip-API.patch similarity index 100% rename from patches/server/0930-ItemStack-Tooltip-API.patch rename to patches/server/0929-ItemStack-Tooltip-API.patch diff --git a/patches/server/0931-Add-getChunkSnapshot-includeLightData-parameter.patch b/patches/server/0930-Add-getChunkSnapshot-includeLightData-parameter.patch similarity index 100% rename from patches/server/0931-Add-getChunkSnapshot-includeLightData-parameter.patch rename to patches/server/0930-Add-getChunkSnapshot-includeLightData-parameter.patch diff --git a/patches/server/0932-Add-FluidState-API.patch b/patches/server/0931-Add-FluidState-API.patch similarity index 100% rename from patches/server/0932-Add-FluidState-API.patch rename to patches/server/0931-Add-FluidState-API.patch diff --git a/patches/server/0933-add-number-format-api.patch b/patches/server/0932-add-number-format-api.patch similarity index 100% rename from patches/server/0933-add-number-format-api.patch rename to patches/server/0932-add-number-format-api.patch diff --git a/patches/server/0934-improve-BanList-types.patch b/patches/server/0933-improve-BanList-types.patch similarity index 93% rename from patches/server/0934-improve-BanList-types.patch rename to patches/server/0933-improve-BanList-types.patch index 408fdc3fb..23a08cbe5 100644 --- a/patches/server/0934-improve-BanList-types.patch +++ b/patches/server/0933-improve-BanList-types.patch @@ -5,7 +5,7 @@ Subject: [PATCH] improve BanList types diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 7ad17b9c3fa6b2865c8dbd824f84ae33a1dd1e9e..121e9cf395f16ba8422f77a73f3f3fbe0ae9b225 100644 +index 33fbcd9fabfc42fdd457b9c7a41e4ce0281cd2c0..cd747daf186fa3a540db08232a57683492f0131f 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -2254,6 +2254,21 @@ public final class CraftServer implements Server { diff --git a/patches/server/0935-Expanded-Hopper-API.patch b/patches/server/0934-Expanded-Hopper-API.patch similarity index 100% rename from patches/server/0935-Expanded-Hopper-API.patch rename to patches/server/0934-Expanded-Hopper-API.patch diff --git a/patches/server/0936-Add-BlockBreakProgressUpdateEvent.patch b/patches/server/0935-Add-BlockBreakProgressUpdateEvent.patch similarity index 100% rename from patches/server/0936-Add-BlockBreakProgressUpdateEvent.patch rename to patches/server/0935-Add-BlockBreakProgressUpdateEvent.patch diff --git a/patches/server/0937-Deprecate-ItemStack-setType.patch b/patches/server/0936-Deprecate-ItemStack-setType.patch similarity index 100% rename from patches/server/0937-Deprecate-ItemStack-setType.patch rename to patches/server/0936-Deprecate-ItemStack-setType.patch diff --git a/patches/server/0938-Add-CartographyItemEvent.patch b/patches/server/0937-Add-CartographyItemEvent.patch similarity index 100% rename from patches/server/0938-Add-CartographyItemEvent.patch rename to patches/server/0937-Add-CartographyItemEvent.patch diff --git a/patches/server/0939-More-Raid-API.patch b/patches/server/0938-More-Raid-API.patch similarity index 100% rename from patches/server/0939-More-Raid-API.patch rename to patches/server/0938-More-Raid-API.patch diff --git a/patches/server/0940-Add-onboarding-message-for-initial-server-start.patch b/patches/server/0939-Add-onboarding-message-for-initial-server-start.patch similarity index 100% rename from patches/server/0940-Add-onboarding-message-for-initial-server-start.patch rename to patches/server/0939-Add-onboarding-message-for-initial-server-start.patch diff --git a/patches/server/0941-Configurable-max-block-fluid-ticks.patch b/patches/server/0940-Configurable-max-block-fluid-ticks.patch similarity index 100% rename from patches/server/0941-Configurable-max-block-fluid-ticks.patch rename to patches/server/0940-Configurable-max-block-fluid-ticks.patch diff --git a/patches/server/0942-Fix-bees-aging-inside-hives.patch b/patches/server/0941-Fix-bees-aging-inside-hives.patch similarity index 100% rename from patches/server/0942-Fix-bees-aging-inside-hives.patch rename to patches/server/0941-Fix-bees-aging-inside-hives.patch diff --git a/patches/server/0943-Disable-memory-reserve-allocating.patch b/patches/server/0942-Disable-memory-reserve-allocating.patch similarity index 100% rename from patches/server/0943-Disable-memory-reserve-allocating.patch rename to patches/server/0942-Disable-memory-reserve-allocating.patch diff --git a/patches/server/0944-Fire-EntityDamageByEntityEvent-for-unowned-wither-sk.patch b/patches/server/0943-Fire-EntityDamageByEntityEvent-for-unowned-wither-sk.patch similarity index 100% rename from patches/server/0944-Fire-EntityDamageByEntityEvent-for-unowned-wither-sk.patch rename to patches/server/0943-Fire-EntityDamageByEntityEvent-for-unowned-wither-sk.patch diff --git a/patches/server/0945-Fix-DamageSource-API.patch b/patches/server/0944-Fix-DamageSource-API.patch similarity index 99% rename from patches/server/0945-Fix-DamageSource-API.patch rename to patches/server/0944-Fix-DamageSource-API.patch index 234e78490..def13cd0b 100644 --- a/patches/server/0945-Fix-DamageSource-API.patch +++ b/patches/server/0944-Fix-DamageSource-API.patch @@ -220,7 +220,7 @@ index 4c6e15535fa40aad8cf1920f392589404f9ba79c..35eb95ef6fb6a0f7ea63351e90741c48 } } diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 4efd60ec678a8f291401e293862f6bfbf376a2b0..9f66fd2f248f0f63c729eb7bb902a5786dfa2cbd 100644 +index d4c809649ff84ac953c0c93fc7031a27d235b72c..4432592de42df9c5a1851ec7430a14afc8ec5647 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -1094,7 +1094,7 @@ public class CraftEventFactory { diff --git a/patches/server/0946-Fix-creation-of-invalid-block-entity-during-world-ge.patch b/patches/server/0945-Fix-creation-of-invalid-block-entity-during-world-ge.patch similarity index 100% rename from patches/server/0946-Fix-creation-of-invalid-block-entity-during-world-ge.patch rename to patches/server/0945-Fix-creation-of-invalid-block-entity-during-world-ge.patch diff --git a/patches/server/0947-Fix-possible-StackOverflowError-for-some-dispenses.patch b/patches/server/0946-Fix-possible-StackOverflowError-for-some-dispenses.patch similarity index 100% rename from patches/server/0947-Fix-possible-StackOverflowError-for-some-dispenses.patch rename to patches/server/0946-Fix-possible-StackOverflowError-for-some-dispenses.patch diff --git a/patches/server/0948-Improve-tag-parser-handling.patch b/patches/server/0947-Improve-tag-parser-handling.patch similarity index 100% rename from patches/server/0948-Improve-tag-parser-handling.patch rename to patches/server/0947-Improve-tag-parser-handling.patch diff --git a/patches/server/0949-Item-Mutation-Fixes.patch b/patches/server/0948-Item-Mutation-Fixes.patch similarity index 100% rename from patches/server/0949-Item-Mutation-Fixes.patch rename to patches/server/0948-Item-Mutation-Fixes.patch diff --git a/patches/server/0950-Per-world-ticks-per-spawn-settings.patch b/patches/server/0949-Per-world-ticks-per-spawn-settings.patch similarity index 100% rename from patches/server/0950-Per-world-ticks-per-spawn-settings.patch rename to patches/server/0949-Per-world-ticks-per-spawn-settings.patch diff --git a/patches/server/0951-Properly-track-the-changed-item-from-dispense-events.patch b/patches/server/0950-Properly-track-the-changed-item-from-dispense-events.patch similarity index 100% rename from patches/server/0951-Properly-track-the-changed-item-from-dispense-events.patch rename to patches/server/0950-Properly-track-the-changed-item-from-dispense-events.patch diff --git a/patches/server/0952-Protect-Bedrock-and-End-Portal-Frames-from-being-des.patch b/patches/server/0951-Protect-Bedrock-and-End-Portal-Frames-from-being-des.patch similarity index 100% rename from patches/server/0952-Protect-Bedrock-and-End-Portal-Frames-from-being-des.patch rename to patches/server/0951-Protect-Bedrock-and-End-Portal-Frames-from-being-des.patch diff --git a/patches/server/0953-Fix-tripwire-disarming-not-working-as-intended.patch b/patches/server/0952-Fix-tripwire-disarming-not-working-as-intended.patch similarity index 100% rename from patches/server/0953-Fix-tripwire-disarming-not-working-as-intended.patch rename to patches/server/0952-Fix-tripwire-disarming-not-working-as-intended.patch diff --git a/patches/server/0954-Add-config-for-mobs-immune-to-default-effects.patch b/patches/server/0953-Add-config-for-mobs-immune-to-default-effects.patch similarity index 100% rename from patches/server/0954-Add-config-for-mobs-immune-to-default-effects.patch rename to patches/server/0953-Add-config-for-mobs-immune-to-default-effects.patch diff --git a/patches/server/0955-Deep-clone-nbt-tags-in-PDC.patch b/patches/server/0954-Deep-clone-nbt-tags-in-PDC.patch similarity index 100% rename from patches/server/0955-Deep-clone-nbt-tags-in-PDC.patch rename to patches/server/0954-Deep-clone-nbt-tags-in-PDC.patch diff --git a/patches/server/0956-Support-old-UUID-format-for-NBT.patch b/patches/server/0955-Support-old-UUID-format-for-NBT.patch similarity index 100% rename from patches/server/0956-Support-old-UUID-format-for-NBT.patch rename to patches/server/0955-Support-old-UUID-format-for-NBT.patch diff --git a/patches/server/0957-Fix-shield-disable-inconsistency.patch b/patches/server/0956-Fix-shield-disable-inconsistency.patch similarity index 92% rename from patches/server/0957-Fix-shield-disable-inconsistency.patch rename to patches/server/0956-Fix-shield-disable-inconsistency.patch index 624805ae3..61614305d 100644 --- a/patches/server/0957-Fix-shield-disable-inconsistency.patch +++ b/patches/server/0956-Fix-shield-disable-inconsistency.patch @@ -8,7 +8,7 @@ it will not disable the shield if the attacker is holding an axe item. diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 474868d362d855423f74fd604c1050cf33ba27f3..5954476f7cbec585f142ee209e91d5b70bb7a8a6 100644 +index 94169703c5a8111df1ed550d57f59f4a3bb97ae1..6ff33a6d46daffd15310f21ec00d4861478b360f 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -2349,7 +2349,7 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/0958-Handle-Large-Packets-disconnecting-client.patch b/patches/server/0957-Handle-Large-Packets-disconnecting-client.patch similarity index 100% rename from patches/server/0958-Handle-Large-Packets-disconnecting-client.patch rename to patches/server/0957-Handle-Large-Packets-disconnecting-client.patch diff --git a/patches/server/0959-Fix-ItemFlags.patch b/patches/server/0958-Fix-ItemFlags.patch similarity index 100% rename from patches/server/0959-Fix-ItemFlags.patch rename to patches/server/0958-Fix-ItemFlags.patch diff --git a/patches/server/0961-Fix-helmet-damage-reduction-inconsistencies.patch b/patches/server/0959-Fix-helmet-damage-reduction-inconsistencies.patch similarity index 92% rename from patches/server/0961-Fix-helmet-damage-reduction-inconsistencies.patch rename to patches/server/0959-Fix-helmet-damage-reduction-inconsistencies.patch index a9182bdd0..daa60965a 100644 --- a/patches/server/0961-Fix-helmet-damage-reduction-inconsistencies.patch +++ b/patches/server/0959-Fix-helmet-damage-reduction-inconsistencies.patch @@ -7,7 +7,7 @@ Affect the falling stalactite damage type where the reduction is not applied like in Vanilla diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 9f66fd2f248f0f63c729eb7bb902a5786dfa2cbd..77ef27f9254235180a8596c6c8c4af750dc759d1 100644 +index 4432592de42df9c5a1851ec7430a14afc8ec5647..965ae1de419995a829a13f35c25a51c2e2bac135 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -1228,7 +1228,7 @@ public class CraftEventFactory { diff --git a/patches/server/0960-Fix-Player-setBlockUpdate.patch b/patches/server/0960-Fix-Player-setBlockUpdate.patch deleted file mode 100644 index 7986fb5a2..000000000 --- a/patches/server/0960-Fix-Player-setBlockUpdate.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Jake Potrebic -Date: Tue, 4 Jun 2024 19:48:03 -0700 -Subject: [PATCH] Fix Player#setBlockUpdate - -BlockEntity needs its Level set - -diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftBlockEntityState.java b/src/main/java/org/bukkit/craftbukkit/block/CraftBlockEntityState.java -index 397eb1a101bd60f49dbb2fa8eddf28f6f233167f..e28bc898786542f695017ff0a036676840eb79fe 100644 ---- a/src/main/java/org/bukkit/craftbukkit/block/CraftBlockEntityState.java -+++ b/src/main/java/org/bukkit/craftbukkit/block/CraftBlockEntityState.java -@@ -177,6 +177,7 @@ public abstract class CraftBlockEntityState extends Craft - @Nullable - public Packet getUpdatePacket(@NotNull Location location) { - T vanillaTileEntitiy = (T) BlockEntity.loadStatic(CraftLocation.toBlockPosition(location), this.getHandle(), this.getSnapshotNBT(), this.getRegistryAccess()); -+ vanillaTileEntitiy.setLevel(((org.bukkit.craftbukkit.CraftWorld) location.getWorld()).getHandle()); // Paper - set level. Required for accessing RegistryAccess - return ClientboundBlockEntityDataPacket.create(vanillaTileEntitiy); - } - -diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 20398155e5018140c7a014718a6aa9d82d624572..6d1fd0b76e18a268e79fd862a98a41b3dfe1fe68 100644 ---- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -1118,6 +1118,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { - public void sendBlockUpdate(@NotNull Location location, @NotNull TileState tileState) throws IllegalArgumentException { - Preconditions.checkArgument(location != null, "Location can not be null"); - Preconditions.checkArgument(tileState != null, "TileState can not be null"); -+ Preconditions.checkArgument(location.getWorld() != null, "Location must have a world"); // Paper - - if (this.getHandle().connection == null) return; - diff --git a/patches/server/0962-Revert-to-vanilla-handling-of-LivingEntity-actuallyH.patch b/patches/server/0960-Revert-to-vanilla-handling-of-LivingEntity-actuallyH.patch similarity index 96% rename from patches/server/0962-Revert-to-vanilla-handling-of-LivingEntity-actuallyH.patch rename to patches/server/0960-Revert-to-vanilla-handling-of-LivingEntity-actuallyH.patch index 97824d33b..2965a6612 100644 --- a/patches/server/0962-Revert-to-vanilla-handling-of-LivingEntity-actuallyH.patch +++ b/patches/server/0960-Revert-to-vanilla-handling-of-LivingEntity-actuallyH.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Revert to vanilla handling of LivingEntity#actuallyHurt diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 5954476f7cbec585f142ee209e91d5b70bb7a8a6..43f1ac121a234085bf168c075f82594c67f72b2c 100644 +index 6ff33a6d46daffd15310f21ec00d4861478b360f..b1e894e9a9cd87f7259302d15d5b5b0e2b32c4ea 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -1425,7 +1425,7 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/0963-improve-checking-handled-tags-in-itemmeta.patch b/patches/server/0961-improve-checking-handled-tags-in-itemmeta.patch similarity index 99% rename from patches/server/0963-improve-checking-handled-tags-in-itemmeta.patch rename to patches/server/0961-improve-checking-handled-tags-in-itemmeta.patch index 3bc62d037..e6c75df87 100644 --- a/patches/server/0963-improve-checking-handled-tags-in-itemmeta.patch +++ b/patches/server/0961-improve-checking-handled-tags-in-itemmeta.patch @@ -441,7 +441,7 @@ index 3ff0340c40e9dc9a6e690de15ccade7a0c4e8f02..3f6c5cbbf63631e4b72dc43558651ea9 getOrEmpty(tag, CraftMetaEntityTag.ENTITY_TAG).ifPresent((nbt) -> { this.entityTag = nbt.copyTag(); diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaFirework.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaFirework.java -index 8725cd736d255b070f9f8ce7cf47b21e2407fbdd..e9a9882d5030040fb3759c623e99d74f8e5292b2 100644 +index 4941e0afff8df5f10f06c715b54bf58eb86051c5..566d893a413fd04b99e83dc2da8fe958a48492a8 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaFirework.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaFirework.java @@ -60,8 +60,8 @@ class CraftMetaFirework extends CraftMetaItem implements FireworkMeta { @@ -729,10 +729,10 @@ index bcd6cc29e4e621805cbd923d747f652ced240c6d..967d8940aec0065bce496d5d7a8c73de getOrEmpty(tag, CraftMetaShield.BASE_COLOR).ifPresent((color) -> { this.banner = CraftMetaShield.getBlockState(DyeColor.getByWoolData((byte) color.getId())); diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaSkull.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaSkull.java -index d6e161374e0235031128a6ee86d1ffa875ea48aa..ab860f1179fa2618c8fbc30ac5f48ff78b8abb60 100644 +index 0b680f4d79e9d04b755309ac46969d7e43fd3c5f..213bc163daeb98d2d5cfaf02e18688c65c5d219c 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaSkull.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaSkull.java -@@ -49,8 +49,8 @@ class CraftMetaSkull extends CraftMetaItem implements SkullMeta { +@@ -48,8 +48,8 @@ class CraftMetaSkull extends CraftMetaItem implements SkullMeta { this.noteBlockSound = skullMeta.noteBlockSound; } @@ -741,8 +741,8 @@ index d6e161374e0235031128a6ee86d1ffa875ea48aa..ab860f1179fa2618c8fbc30ac5f48ff7 + CraftMetaSkull(DataComponentPatch tag, java.util.Set> extraHandledDcts) { // Paper + super(tag, extraHandledDcts); // Paper - getOrEmpty(tag, CraftMetaSkull.SKULL_PROFILE).ifPresent((resolvableProfile) -> { - this.setProfile(resolvableProfile.gameProfile()); + getOrEmpty(tag, CraftMetaSkull.SKULL_PROFILE).ifPresent(this::setProfile); + diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaSpawnEgg.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaSpawnEgg.java index 6c2c3b514be0dab47f3e44f65bdc6a3574e59b7c..8ddf091b3ff1262b6c97e8fe72e0a80db5e1037d 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaSpawnEgg.java diff --git a/patches/server/0964-General-ItemMeta-fixes.patch b/patches/server/0962-General-ItemMeta-fixes.patch similarity index 97% rename from patches/server/0964-General-ItemMeta-fixes.patch rename to patches/server/0962-General-ItemMeta-fixes.patch index 17b7102b0..c16ea28c5 100644 --- a/patches/server/0964-General-ItemMeta-fixes.patch +++ b/patches/server/0962-General-ItemMeta-fixes.patch @@ -12,7 +12,7 @@ public net/minecraft/world/level/block/entity/BlockEntity saveId(Lnet/minecraft/ Co-authored-by: GhastCraftHD diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index e22d6f787d73fda00bc0961bd3279da2a8ab56e3..17923ab1ca4d8e04fbbac0471f88a856bbb92d10 100644 +index e9a9c89bd6a4ce7cb30c2fcf79a537fc18204aeb..58786dd7b51d17c1b602756c4c44840ab75ad0a7 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java @@ -1275,6 +1275,11 @@ public final class ItemStack implements DataComponentHolder { @@ -44,11 +44,11 @@ index 41f43d7d12a47563360f48a793e63db8cf92ac69..a1d7ae987327382d9566860b991dc361 } diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftBlockEntityState.java b/src/main/java/org/bukkit/craftbukkit/block/CraftBlockEntityState.java -index e28bc898786542f695017ff0a036676840eb79fe..cee3fe00cc662f095e7d726b5f1a913cd8199210 100644 +index f9eb60d5a70da9a4d485288ab03d80829cf171a9..440b4c13121e3ac2bab937a83d20cc3fbf69bda1 100644 --- a/src/main/java/org/bukkit/craftbukkit/block/CraftBlockEntityState.java +++ b/src/main/java/org/bukkit/craftbukkit/block/CraftBlockEntityState.java -@@ -135,6 +135,19 @@ public abstract class CraftBlockEntityState extends Craft - return nbt; +@@ -143,6 +143,19 @@ public abstract class CraftBlockEntityState extends Craft + return this.snapshot.getUpdateTag(this.getRegistryAccess()); } + // Paper start - properly save blockentity itemstacks @@ -68,7 +68,7 @@ index e28bc898786542f695017ff0a036676840eb79fe..cee3fe00cc662f095e7d726b5f1a913c protected void load(T tileEntity) { if (tileEntity != null && tileEntity != this.snapshot) { diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java -index 6a449bfc765bf427d82df4a90bc60471b5de2fd3..69b7eb7eff112b59b22f1d349831b9ee14c01943 100644 +index 6a449bfc765bf427d82df4a90bc60471b5de2fd3..aef5c0d1be9c4aa62d9b7c5cacbb42066a802729 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java @@ -279,7 +279,9 @@ public final class CraftItemStack extends ItemStack { @@ -89,8 +89,8 @@ index 6a449bfc765bf427d82df4a90bc60471b5de2fd3..69b7eb7eff112b59b22f1d349831b9ee + // Paper start - support updating profile after resolving it + final CraftMetaItem.Applicator tag = new CraftMetaItem.Applicator() { + @Override -+ void skullCallback(final com.mojang.authlib.GameProfile gameProfile) { -+ itemStack.set(DataComponents.PROFILE, new net.minecraft.world.item.component.ResolvableProfile(gameProfile)); ++ void skullCallback(final net.minecraft.world.item.component.ResolvableProfile profile) { ++ itemStack.set(DataComponents.PROFILE, profile); + } + }; + // Paper end - support updating profile after resolving it @@ -105,8 +105,8 @@ index 6a449bfc765bf427d82df4a90bc60471b5de2fd3..69b7eb7eff112b59b22f1d349831b9ee + // Paper start - support updating profile after resolving it + CraftMetaItem.Applicator tag = new CraftMetaItem.Applicator() { + @Override -+ void skullCallback(final com.mojang.authlib.GameProfile gameProfile) { -+ item.set(DataComponents.PROFILE, new net.minecraft.world.item.component.ResolvableProfile(gameProfile)); ++ void skullCallback(final net.minecraft.world.item.component.ResolvableProfile resolvableProfile) { ++ item.set(DataComponents.PROFILE, resolvableProfile); + } + }; + // Paper end - support updating profile after resolving it @@ -854,7 +854,7 @@ index 3f6c5cbbf63631e4b72dc43558651ea94f31ca78..da474a5b963d8e6769d120e9091e60ed return true; } diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaFirework.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaFirework.java -index e9a9882d5030040fb3759c623e99d74f8e5292b2..b4dd2bd0fac4dbc010190188ea27c5f1d630cd02 100644 +index 566d893a413fd04b99e83dc2da8fe958a48492a8..a944803771d514572f94b4e98a6d4435a009c078 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaFirework.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaFirework.java @@ -55,7 +55,7 @@ class CraftMetaFirework extends CraftMetaItem implements FireworkMeta { @@ -923,7 +923,7 @@ index e9a9882d5030040fb3759c623e99d74f8e5292b2..b4dd2bd0fac4dbc010190188ea27c5f1 effects.add((FireworkEffect) obj); } } -@@ -215,10 +219,10 @@ class CraftMetaFirework extends CraftMetaItem implements FireworkMeta { +@@ -215,7 +219,7 @@ class CraftMetaFirework extends CraftMetaItem implements FireworkMeta { } boolean isFireworkEmpty() { @@ -931,12 +931,8 @@ index e9a9882d5030040fb3759c623e99d74f8e5292b2..b4dd2bd0fac4dbc010190188ea27c5f1 + return !(this.effects != null || this.hasPower()); // Paper - empty effects list should stay on the item } -- boolean hasPower() { -+ public boolean hasPower() { // Paper - add hasPower to API - return this.power != null; - } - -@@ -231,7 +235,7 @@ class CraftMetaFirework extends CraftMetaItem implements FireworkMeta { + @Override +@@ -232,7 +236,7 @@ class CraftMetaFirework extends CraftMetaItem implements FireworkMeta { if (meta instanceof CraftMetaFirework that) { return (Objects.equals(this.power, that.power)) @@ -945,7 +941,7 @@ index e9a9882d5030040fb3759c623e99d74f8e5292b2..b4dd2bd0fac4dbc010190188ea27c5f1 } return true; -@@ -249,7 +253,7 @@ class CraftMetaFirework extends CraftMetaItem implements FireworkMeta { +@@ -250,7 +254,7 @@ class CraftMetaFirework extends CraftMetaItem implements FireworkMeta { if (this.hasPower()) { hash = 61 * hash + this.power; } @@ -954,7 +950,7 @@ index e9a9882d5030040fb3759c623e99d74f8e5292b2..b4dd2bd0fac4dbc010190188ea27c5f1 hash = 61 * hash + 13 * this.effects.hashCode(); } return hash != original ? CraftMetaFirework.class.hashCode() ^ hash : hash; -@@ -259,7 +263,7 @@ class CraftMetaFirework extends CraftMetaItem implements FireworkMeta { +@@ -260,7 +264,7 @@ class CraftMetaFirework extends CraftMetaItem implements FireworkMeta { Builder serialize(Builder builder) { super.serialize(builder); @@ -963,7 +959,7 @@ index e9a9882d5030040fb3759c623e99d74f8e5292b2..b4dd2bd0fac4dbc010190188ea27c5f1 builder.put(CraftMetaFirework.EXPLOSIONS.BUKKIT, ImmutableList.copyOf(this.effects)); } -@@ -284,6 +288,7 @@ class CraftMetaFirework extends CraftMetaItem implements FireworkMeta { +@@ -285,6 +289,7 @@ class CraftMetaFirework extends CraftMetaItem implements FireworkMeta { @Override public void addEffect(FireworkEffect effect) { Preconditions.checkArgument(effect != null, "FireworkEffect cannot be null"); @@ -971,7 +967,7 @@ index e9a9882d5030040fb3759c623e99d74f8e5292b2..b4dd2bd0fac4dbc010190188ea27c5f1 if (this.effects == null) { this.effects = new ArrayList(); } -@@ -293,6 +298,10 @@ class CraftMetaFirework extends CraftMetaItem implements FireworkMeta { +@@ -294,6 +299,10 @@ class CraftMetaFirework extends CraftMetaItem implements FireworkMeta { @Override public void addEffects(FireworkEffect... effects) { Preconditions.checkArgument(effects != null, "effects cannot be null"); @@ -982,7 +978,7 @@ index e9a9882d5030040fb3759c623e99d74f8e5292b2..b4dd2bd0fac4dbc010190188ea27c5f1 if (effects.length == 0) { return; } -@@ -311,7 +320,7 @@ class CraftMetaFirework extends CraftMetaItem implements FireworkMeta { +@@ -312,7 +321,7 @@ class CraftMetaFirework extends CraftMetaItem implements FireworkMeta { @Override public void addEffects(Iterable effects) { Preconditions.checkArgument(effects != null, "effects cannot be null"); @@ -990,18 +986,9 @@ index e9a9882d5030040fb3759c623e99d74f8e5292b2..b4dd2bd0fac4dbc010190188ea27c5f1 + this.safelyAddEffects(effects, true); // Paper - limit firework effects } - @Override -@@ -340,7 +349,7 @@ class CraftMetaFirework extends CraftMetaItem implements FireworkMeta { - - @Override - public int getPower() { -- return this.hasPower() ? this.power : 1; -+ return this.hasPower() ? this.power : 0; // Paper - 0 is correct - } - @Override diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java -index bee2f2f5675b8aaeb2a04ada1f6dba9aa9a14ed3..67181b215312f1f572d6ac5afd289c6540b12829 100644 +index bee2f2f5675b8aaeb2a04ada1f6dba9aa9a14ed3..beeed762e5ba49c317c5f214af17c44174b0c943 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java @@ -182,9 +182,10 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { @@ -1013,7 +1000,7 @@ index bee2f2f5675b8aaeb2a04ada1f6dba9aa9a14ed3..67181b215312f1f572d6ac5afd289c65 - private final DataComponentPatch.Builder builder = DataComponentPatch.builder(); + final DataComponentPatch.Builder builder = DataComponentPatch.builder(); // Paper - private -> package-private -+ void skullCallback(com.mojang.authlib.GameProfile gameProfile) {} // Paper - support updating profile after resolving it ++ void skullCallback(net.minecraft.world.item.component.ResolvableProfile resolvableProfile) {} // Paper - support updating profile after resolving it Applicator put(ItemMetaKeyType key, T value) { this.builder.set(key.TYPE, value); @@ -1887,17 +1874,17 @@ index 967d8940aec0065bce496d5d7a8c73de5733bd2c..e229ca6acb6dbc3185f326f6653b3d66 } diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaSkull.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaSkull.java -index ab860f1179fa2618c8fbc30ac5f48ff78b8abb60..7de2ed297d0b2bf8adf2058e75a9b594ec2197bd 100644 +index 302906467b12189e21633369c005736863f46dd5..5a4e5b8736ad2e2084e757e9d2034044e177d8f0 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaSkull.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaSkull.java -@@ -117,10 +117,10 @@ class CraftMetaSkull extends CraftMetaItem implements SkullMeta { +@@ -112,10 +112,10 @@ class CraftMetaSkull extends CraftMetaItem implements SkullMeta { // Fill in textures PlayerProfile ownerProfile = new CraftPlayerProfile(this.profile); // getOwnerProfile may return null if (ownerProfile.getTextures().isEmpty()) { - ownerProfile.update().thenAccept((filledProfile) -> { + ownerProfile.update().thenAcceptAsync((filledProfile) -> { // Paper - run on main thread this.setOwnerProfile(filledProfile); -- tag.put(CraftMetaSkull.SKULL_PROFILE, new ResolvableProfile(this.profile)); +- tag.put(CraftMetaSkull.SKULL_PROFILE, this.profile); - }); + tag.skullCallback(this.profile); // Paper - actually set profile on itemstack + }, ((org.bukkit.craftbukkit.CraftServer) org.bukkit.Bukkit.getServer()).getServer()); // Paper - run on main thread @@ -2008,7 +1995,7 @@ index 92cad73219e11dc5922630769f9dd3a329ea6da1..bde61de7eda72b2e24ddef56ff93a0b4 FoodProperties.PossibleEffect newEffect = new net.minecraft.world.food.FoodProperties.PossibleEffect(CraftPotionUtil.fromBukkit(effect), probability); diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/components/CraftToolComponent.java b/src/main/java/org/bukkit/craftbukkit/inventory/components/CraftToolComponent.java -index 4d7889ccd1c70db537402a9bbab42e40c3bb0d65..73be17186c87019868fdd7f9e0fdcdadeef79570 100644 +index 6c477913406a0dded8ca00295b8f4928e31404ae..2750c46c535d5b10afcaca109fc89d73d6485fd0 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/components/CraftToolComponent.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/components/CraftToolComponent.java @@ -108,6 +108,7 @@ public final class CraftToolComponent implements ToolComponent { diff --git a/patches/server/0965-Expose-hasColor-to-leather-armor.patch b/patches/server/0963-Expose-hasColor-to-leather-armor.patch similarity index 100% rename from patches/server/0965-Expose-hasColor-to-leather-armor.patch rename to patches/server/0963-Expose-hasColor-to-leather-armor.patch diff --git a/patches/server/0966-Added-API-to-get-player-ha-proxy-address.patch b/patches/server/0964-Added-API-to-get-player-ha-proxy-address.patch similarity index 97% rename from patches/server/0966-Added-API-to-get-player-ha-proxy-address.patch rename to patches/server/0964-Added-API-to-get-player-ha-proxy-address.patch index b6dcd8397..3f8c3f63b 100644 --- a/patches/server/0966-Added-API-to-get-player-ha-proxy-address.patch +++ b/patches/server/0964-Added-API-to-get-player-ha-proxy-address.patch @@ -35,7 +35,7 @@ index 96355e1da8feb6687ea0069dda4a82fcd7e25e8a..1f696644b958538e9f5d568a2e4bba69 } else { super.channelRead(ctx, msg); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 6d1fd0b76e18a268e79fd862a98a41b3dfe1fe68..63b8e0e95e960d3a5e2f321896346b9c69f1bcc4 100644 +index 6db4d21ee4dc97820943d3fd2aa55054cac95f50..5f12c91ea598b4b133bf41532a9864645ebf6cea 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -265,7 +265,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0967-More-Chest-Block-API.patch b/patches/server/0965-More-Chest-Block-API.patch similarity index 100% rename from patches/server/0967-More-Chest-Block-API.patch rename to patches/server/0965-More-Chest-Block-API.patch diff --git a/patches/server/0968-Print-data-component-type-on-encoding-error.patch b/patches/server/0966-Print-data-component-type-on-encoding-error.patch similarity index 100% rename from patches/server/0968-Print-data-component-type-on-encoding-error.patch rename to patches/server/0966-Print-data-component-type-on-encoding-error.patch diff --git a/patches/server/0969-Brigadier-based-command-API.patch b/patches/server/0967-Brigadier-based-command-API.patch similarity index 99% rename from patches/server/0969-Brigadier-based-command-API.patch rename to patches/server/0967-Brigadier-based-command-API.patch index 5572d1d74..8f0836b78 100644 --- a/patches/server/0969-Brigadier-based-command-API.patch +++ b/patches/server/0967-Brigadier-based-command-API.patch @@ -2406,7 +2406,7 @@ index e0c46e548a34c963750c9411dfd3c0946d67a7c7..5215783353021583e7a726d281e4d173 // CraftBukkit end diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 121e9cf395f16ba8422f77a73f3f3fbe0ae9b225..d8b842bfd1507ace84943ff1f9ddc6ea153e54db 100644 +index cd747daf186fa3a540db08232a57683492f0131f..df15ce8d1da2737e339880d3d2f6731e0b92ca7f 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -272,11 +272,11 @@ public final class CraftServer implements Server { diff --git a/patches/server/0970-Fix-issues-with-Recipe-API.patch b/patches/server/0968-Fix-issues-with-Recipe-API.patch similarity index 100% rename from patches/server/0970-Fix-issues-with-Recipe-API.patch rename to patches/server/0968-Fix-issues-with-Recipe-API.patch diff --git a/patches/server/0971-Fix-equipment-slot-and-group-API.patch b/patches/server/0969-Fix-equipment-slot-and-group-API.patch similarity index 96% rename from patches/server/0971-Fix-equipment-slot-and-group-API.patch rename to patches/server/0969-Fix-equipment-slot-and-group-API.patch index 7e3f35d33..e84bebe10 100644 --- a/patches/server/0971-Fix-equipment-slot-and-group-API.patch +++ b/patches/server/0969-Fix-equipment-slot-and-group-API.patch @@ -10,10 +10,10 @@ Adds the following: Co-authored-by: SoSeDiK diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index de1c0c610931471c580266f0d0e0fd881b1e7d3d..d2bb0831394c03b620b2cbd8306cb82b621f34f7 100644 +index 6c44aaef8f09b2a10183dba751557ac5c6233a87..a54cf98661cc678277855f21735e98fafd018ded 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -@@ -1182,4 +1182,11 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { +@@ -1187,4 +1187,11 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { this.getHandle().setYBodyRot(bodyYaw); } // Paper end - body yaw API @@ -52,7 +52,7 @@ index 9d74577af071954e1e37201a96368c1360076209..eafa54c870c3e2aef30c3f9f96f51660 throw new IllegalArgumentException("Not implemented. This is a bug"); } diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java -index 67181b215312f1f572d6ac5afd289c6540b12829..d5c45cc09b9d60c1650507ad6fedb27246291063 100644 +index beeed762e5ba49c317c5f214af17c44174b0c943..042bfdd14c9ff4cc8ed3421f73565f0f03b11bcb 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java @@ -1448,7 +1448,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { diff --git a/patches/server/0972-Allow-Bukkit-plugin-to-use-Paper-PluginLoader-API.patch b/patches/server/0970-Allow-Bukkit-plugin-to-use-Paper-PluginLoader-API.patch similarity index 100% rename from patches/server/0972-Allow-Bukkit-plugin-to-use-Paper-PluginLoader-API.patch rename to patches/server/0970-Allow-Bukkit-plugin-to-use-Paper-PluginLoader-API.patch diff --git a/patches/server/0973-Prevent-sending-oversized-item-data-in-equipment-and.patch b/patches/server/0971-Prevent-sending-oversized-item-data-in-equipment-and.patch similarity index 99% rename from patches/server/0973-Prevent-sending-oversized-item-data-in-equipment-and.patch rename to patches/server/0971-Prevent-sending-oversized-item-data-in-equipment-and.patch index 493ba5347..121b75eca 100644 --- a/patches/server/0973-Prevent-sending-oversized-item-data-in-equipment-and.patch +++ b/patches/server/0971-Prevent-sending-oversized-item-data-in-equipment-and.patch @@ -222,7 +222,7 @@ index 5215783353021583e7a726d281e4d1734398f073..0fe4c3ff5dd855aea58292c16ba9a2f5 ServerGamePacketListenerImpl.this.player.containerMenu.sendAllDataToRemote(); // Paper - fix slot desync - always refresh player inventory diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 43f1ac121a234085bf168c075f82594c67f72b2c..0613ba9968968513549402f94e3b61dddd8c6beb 100644 +index b1e894e9a9cd87f7259302d15d5b5b0e2b32c4ea..7b6d067eb8b22a8e0a82a2969c92ba243230733a 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -3353,7 +3353,7 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/0974-Prevent-NPE-if-hooked-entity-was-cleared.patch b/patches/server/0972-Prevent-NPE-if-hooked-entity-was-cleared.patch similarity index 100% rename from patches/server/0974-Prevent-NPE-if-hooked-entity-was-cleared.patch rename to patches/server/0972-Prevent-NPE-if-hooked-entity-was-cleared.patch diff --git a/patches/server/0975-Fix-cancelling-BlockPlaceEvent-calling-onRemove.patch b/patches/server/0973-Fix-cancelling-BlockPlaceEvent-calling-onRemove.patch similarity index 97% rename from patches/server/0975-Fix-cancelling-BlockPlaceEvent-calling-onRemove.patch rename to patches/server/0973-Fix-cancelling-BlockPlaceEvent-calling-onRemove.patch index fa5579fda..35a252aae 100644 --- a/patches/server/0975-Fix-cancelling-BlockPlaceEvent-calling-onRemove.patch +++ b/patches/server/0973-Fix-cancelling-BlockPlaceEvent-calling-onRemove.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Fix cancelling BlockPlaceEvent calling onRemove diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index 17923ab1ca4d8e04fbbac0471f88a856bbb92d10..b21204f4b6fb98f53e41e18f3f8b200c48d94c66 100644 +index dc74f690afcf12a1e3410f4504d3f78303394ea7..66047f876aedbcc33b86b5cfe2ace588523eb810 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java @@ -494,9 +494,11 @@ public final class ItemStack implements DataComponentHolder { diff --git a/patches/server/0976-Add-missing-fishing-event-state.patch b/patches/server/0974-Add-missing-fishing-event-state.patch similarity index 100% rename from patches/server/0976-Add-missing-fishing-event-state.patch rename to patches/server/0974-Add-missing-fishing-event-state.patch diff --git a/patches/server/0977-Deprecate-InvAction-HOTBAR_MOVE_AND_READD.patch b/patches/server/0975-Deprecate-InvAction-HOTBAR_MOVE_AND_READD.patch similarity index 100% rename from patches/server/0977-Deprecate-InvAction-HOTBAR_MOVE_AND_READD.patch rename to patches/server/0975-Deprecate-InvAction-HOTBAR_MOVE_AND_READD.patch diff --git a/patches/server/0978-Fix-sending-disconnect-packet-in-phases-where-it-doe.patch b/patches/server/0976-Fix-sending-disconnect-packet-in-phases-where-it-doe.patch similarity index 100% rename from patches/server/0978-Fix-sending-disconnect-packet-in-phases-where-it-doe.patch rename to patches/server/0976-Fix-sending-disconnect-packet-in-phases-where-it-doe.patch diff --git a/patches/server/0979-Adopt-MaterialRerouting.patch b/patches/server/0977-Adopt-MaterialRerouting.patch similarity index 100% rename from patches/server/0979-Adopt-MaterialRerouting.patch rename to patches/server/0977-Adopt-MaterialRerouting.patch diff --git a/patches/server/0980-Suspicious-Effect-Entry-API.patch b/patches/server/0978-Suspicious-Effect-Entry-API.patch similarity index 100% rename from patches/server/0980-Suspicious-Effect-Entry-API.patch rename to patches/server/0978-Suspicious-Effect-Entry-API.patch diff --git a/patches/server/0981-check-if-itemstack-is-stackable-first.patch b/patches/server/0979-check-if-itemstack-is-stackable-first.patch similarity index 100% rename from patches/server/0981-check-if-itemstack-is-stackable-first.patch rename to patches/server/0979-check-if-itemstack-is-stackable-first.patch diff --git a/patches/server/0982-Fix-removing-recipes-from-RecipeIterator.patch b/patches/server/0980-Fix-removing-recipes-from-RecipeIterator.patch similarity index 100% rename from patches/server/0982-Fix-removing-recipes-from-RecipeIterator.patch rename to patches/server/0980-Fix-removing-recipes-from-RecipeIterator.patch diff --git a/patches/server/0983-Configurable-damage-tick-when-blocking-with-shield.patch b/patches/server/0981-Configurable-damage-tick-when-blocking-with-shield.patch similarity index 92% rename from patches/server/0983-Configurable-damage-tick-when-blocking-with-shield.patch rename to patches/server/0981-Configurable-damage-tick-when-blocking-with-shield.patch index 24d7eefdb..7f58a8291 100644 --- a/patches/server/0983-Configurable-damage-tick-when-blocking-with-shield.patch +++ b/patches/server/0981-Configurable-damage-tick-when-blocking-with-shield.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Configurable damage tick when blocking with shield diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 0613ba9968968513549402f94e3b61dddd8c6beb..51c6f1e9f4b1c7eb7896c7f42c18cfd18a4f67da 100644 +index 7b6d067eb8b22a8e0a82a2969c92ba243230733a..5f1c585c819d25319a4fefd30abde3de7620cf6d 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -2411,7 +2411,7 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/0984-Properly-remove-the-experimental-smithing-inventory-.patch b/patches/server/0982-Properly-remove-the-experimental-smithing-inventory-.patch similarity index 100% rename from patches/server/0984-Properly-remove-the-experimental-smithing-inventory-.patch rename to patches/server/0982-Properly-remove-the-experimental-smithing-inventory-.patch diff --git a/patches/server/0985-Moonrise-optimisation-patches.patch b/patches/server/0983-Moonrise-optimisation-patches.patch similarity index 99% rename from patches/server/0985-Moonrise-optimisation-patches.patch rename to patches/server/0983-Moonrise-optimisation-patches.patch index c30296978..96ac31910 100644 --- a/patches/server/0985-Moonrise-optimisation-patches.patch +++ b/patches/server/0983-Moonrise-optimisation-patches.patch @@ -32731,7 +32731,7 @@ index 69c7fe5bf5b914276a9f7a0e57ce668e569d91f9..33322b57b4c6922f4daad0f584733f0f @Override diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index d8b842bfd1507ace84943ff1f9ddc6ea153e54db..266b720ffe2a684dcf54456e3a198f90baf96ba3 100644 +index df15ce8d1da2737e339880d3d2f6731e0b92ca7f..b5644700878a3eda50a56cd2292c6ceb5d43f34e 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -1428,7 +1428,7 @@ public final class CraftServer implements Server { @@ -32864,10 +32864,10 @@ index 50b84939eee044ddadca046079286a72de5c8e04..15e075fc3a9b18e62e04f41fcadbe62e // Paper start - implement pointers diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 63b8e0e95e960d3a5e2f321896346b9c69f1bcc4..1def2a09427de70646802fd876a5805489a3d129 100644 +index 5f12c91ea598b4b133bf41532a9864645ebf6cea..e02fa642f11809607e30e22b51c65373edd70842 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -3497,7 +3497,9 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -3496,7 +3496,9 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @Override public void setViewDistance(final int viewDistance) { @@ -32878,7 +32878,7 @@ index 63b8e0e95e960d3a5e2f321896346b9c69f1bcc4..1def2a09427de70646802fd876a58054 } @Override -@@ -3507,7 +3509,9 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -3506,7 +3508,9 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @Override public void setSimulationDistance(final int simulationDistance) { @@ -32889,7 +32889,7 @@ index 63b8e0e95e960d3a5e2f321896346b9c69f1bcc4..1def2a09427de70646802fd876a58054 } @Override -@@ -3517,6 +3521,8 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -3516,6 +3520,8 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @Override public void setSendViewDistance(final int viewDistance) { diff --git a/patches/server/0986-Rewrite-dataconverter-system.patch b/patches/server/0984-Rewrite-dataconverter-system.patch similarity index 100% rename from patches/server/0986-Rewrite-dataconverter-system.patch rename to patches/server/0984-Rewrite-dataconverter-system.patch diff --git a/patches/server/0987-disable-forced-empty-world-ticks.patch b/patches/server/0985-disable-forced-empty-world-ticks.patch similarity index 100% rename from patches/server/0987-disable-forced-empty-world-ticks.patch rename to patches/server/0985-disable-forced-empty-world-ticks.patch diff --git a/patches/server/0988-Optimize-isInWorldBounds-and-getBlockState-for-inlin.patch b/patches/server/0986-Optimize-isInWorldBounds-and-getBlockState-for-inlin.patch similarity index 100% rename from patches/server/0988-Optimize-isInWorldBounds-and-getBlockState-for-inlin.patch rename to patches/server/0986-Optimize-isInWorldBounds-and-getBlockState-for-inlin.patch diff --git a/patches/server/0989-Improve-Maps-in-item-frames-performance-and-bug-fixe.patch b/patches/server/0987-Improve-Maps-in-item-frames-performance-and-bug-fixe.patch similarity index 100% rename from patches/server/0989-Improve-Maps-in-item-frames-performance-and-bug-fixe.patch rename to patches/server/0987-Improve-Maps-in-item-frames-performance-and-bug-fixe.patch diff --git a/patches/server/0990-Strip-raytracing-for-EntityLiving-hasLineOfSight.patch b/patches/server/0988-Strip-raytracing-for-EntityLiving-hasLineOfSight.patch similarity index 98% rename from patches/server/0990-Strip-raytracing-for-EntityLiving-hasLineOfSight.patch rename to patches/server/0988-Strip-raytracing-for-EntityLiving-hasLineOfSight.patch index 505082cbe..761c57c8f 100644 --- a/patches/server/0990-Strip-raytracing-for-EntityLiving-hasLineOfSight.patch +++ b/patches/server/0988-Strip-raytracing-for-EntityLiving-hasLineOfSight.patch @@ -26,7 +26,7 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 51c6f1e9f4b1c7eb7896c7f42c18cfd18a4f67da..f749ad127afabbf43b871b29ce6c19956686e9ee 100644 +index 5f1c585c819d25319a4fefd30abde3de7620cf6d..340c4452c09a98bc0220e6fe68dc65afc946986b 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -3774,7 +3774,7 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/0991-Optimize-Network-Manager-and-add-advanced-packet-sup.patch b/patches/server/0989-Optimize-Network-Manager-and-add-advanced-packet-sup.patch similarity index 100% rename from patches/server/0991-Optimize-Network-Manager-and-add-advanced-packet-sup.patch rename to patches/server/0989-Optimize-Network-Manager-and-add-advanced-packet-sup.patch diff --git a/patches/server/0992-Allow-Saving-of-Oversized-Chunks.patch b/patches/server/0990-Allow-Saving-of-Oversized-Chunks.patch similarity index 100% rename from patches/server/0992-Allow-Saving-of-Oversized-Chunks.patch rename to patches/server/0990-Allow-Saving-of-Oversized-Chunks.patch diff --git a/patches/server/0993-Flat-bedrock-generator-settings.patch b/patches/server/0991-Flat-bedrock-generator-settings.patch similarity index 100% rename from patches/server/0993-Flat-bedrock-generator-settings.patch rename to patches/server/0991-Flat-bedrock-generator-settings.patch diff --git a/patches/server/0994-Entity-Activation-Range-2.0.patch b/patches/server/0992-Entity-Activation-Range-2.0.patch similarity index 100% rename from patches/server/0994-Entity-Activation-Range-2.0.patch rename to patches/server/0992-Entity-Activation-Range-2.0.patch diff --git a/patches/server/0995-Optional-per-player-mob-spawns.patch b/patches/server/0993-Optional-per-player-mob-spawns.patch similarity index 100% rename from patches/server/0995-Optional-per-player-mob-spawns.patch rename to patches/server/0993-Optional-per-player-mob-spawns.patch diff --git a/patches/server/0996-Anti-Xray.patch b/patches/server/0994-Anti-Xray.patch similarity index 99% rename from patches/server/0996-Anti-Xray.patch rename to patches/server/0994-Anti-Xray.patch index 7e3f9656a..c7253f369 100644 --- a/patches/server/0996-Anti-Xray.patch +++ b/patches/server/0994-Anti-Xray.patch @@ -1155,7 +1155,7 @@ index 32634e45ac8433648e49e47e20081e15ad41ff15..dafa2cf7d3c49fc5bdcd68d2a9528127 if (io.papermc.paper.event.packet.PlayerChunkLoadEvent.getHandlerList().getRegisteredListeners().length > 0) { new io.papermc.paper.event.packet.PlayerChunkLoadEvent(new org.bukkit.craftbukkit.CraftChunk(chunk), handler.getPlayer().getBukkitEntity()).callEvent(); diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 4b597ed9a71908ecec3b6da5b6a4a735cf22498b..96eea87534b6e28a56c9eea0f30bfb41793440e7 100644 +index c9d72ab365dcfc2482764463b116451187684b3c..db0a5c6258fa2b9a5d960f82f6b1f3bc2b386bc9 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -414,7 +414,7 @@ public abstract class PlayerList { @@ -1574,7 +1574,7 @@ index 33322b57b4c6922f4daad0f584733f0f24083911..45e262308aebafa377a2353661acdd12 private static final byte[] EMPTY_LIGHT = new byte[2048]; diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 266b720ffe2a684dcf54456e3a198f90baf96ba3..05001bb637d55aaf36359b37a42ef33e4557b9f2 100644 +index b5644700878a3eda50a56cd2292c6ceb5d43f34e..5ef080406d8954ecaa65cf60569cc05dbad649ea 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -2686,7 +2686,7 @@ public final class CraftServer implements Server { diff --git a/patches/server/0997-Eigencraft-redstone-implementation.patch b/patches/server/0995-Eigencraft-redstone-implementation.patch similarity index 100% rename from patches/server/0997-Eigencraft-redstone-implementation.patch rename to patches/server/0995-Eigencraft-redstone-implementation.patch diff --git a/patches/server/0998-Add-Alternate-Current-redstone-implementation.patch b/patches/server/0996-Add-Alternate-Current-redstone-implementation.patch similarity index 100% rename from patches/server/0998-Add-Alternate-Current-redstone-implementation.patch rename to patches/server/0996-Add-Alternate-Current-redstone-implementation.patch diff --git a/patches/server/0999-Improve-cancelling-PreCreatureSpawnEvent-with-per-pl.patch b/patches/server/0997-Improve-cancelling-PreCreatureSpawnEvent-with-per-pl.patch similarity index 100% rename from patches/server/0999-Improve-cancelling-PreCreatureSpawnEvent-with-per-pl.patch rename to patches/server/0997-Improve-cancelling-PreCreatureSpawnEvent-with-per-pl.patch diff --git a/patches/server/1000-Use-Velocity-compression-and-cipher-natives.patch b/patches/server/0998-Use-Velocity-compression-and-cipher-natives.patch similarity index 99% rename from patches/server/1000-Use-Velocity-compression-and-cipher-natives.patch rename to patches/server/0998-Use-Velocity-compression-and-cipher-natives.patch index 290a54a80..bfac334a5 100644 --- a/patches/server/1000-Use-Velocity-compression-and-cipher-natives.patch +++ b/patches/server/0998-Use-Velocity-compression-and-cipher-natives.patch @@ -352,10 +352,10 @@ index 2929d9a2efa9669781b6773161db7c5f968c2544..8aff5129f85ab5729b3da2e465871be6 protected void initChannel(Channel channel) { try { diff --git a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java -index 0fc30ce511f449d2a3ddab28c86f7e388223ece1..b0f7a378f19b9837c060c891002cd5db756cdae1 100644 +index 35faa10f3b82504ae9d3f923fc04c5a99c1a624a..40638b439966619e9c70a18a32abd95b2178fe9f 100644 --- a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java -@@ -282,12 +282,14 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, +@@ -287,12 +287,14 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, } SecretKey secretkey = packet.getSecretKey(privatekey); diff --git a/patches/server/1001-Optimize-Collision-to-not-load-chunks.patch b/patches/server/0999-Optimize-Collision-to-not-load-chunks.patch similarity index 98% rename from patches/server/1001-Optimize-Collision-to-not-load-chunks.patch rename to patches/server/0999-Optimize-Collision-to-not-load-chunks.patch index c37176cd3..be9c95fd3 100644 --- a/patches/server/1001-Optimize-Collision-to-not-load-chunks.patch +++ b/patches/server/0999-Optimize-Collision-to-not-load-chunks.patch @@ -14,7 +14,7 @@ movement will load only the chunk the player enters anyways and avoids loading massive amounts of surrounding chunks due to large AABB lookups. diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 59f09e8d08453ef25b7f9f49db0aa7513014779c..cad21e40aafc9c34de10007d881135657ed3d910 100644 +index db0a5c6258fa2b9a5d960f82f6b1f3bc2b386bc9..3a90dd1289d393426151d4457edaf99731cc34db 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -869,6 +869,7 @@ public abstract class PlayerList { diff --git a/patches/server/1002-Optimize-GoalSelector-Goal.Flag-Set-operations.patch b/patches/server/1000-Optimize-GoalSelector-Goal.Flag-Set-operations.patch similarity index 100% rename from patches/server/1002-Optimize-GoalSelector-Goal.Flag-Set-operations.patch rename to patches/server/1000-Optimize-GoalSelector-Goal.Flag-Set-operations.patch diff --git a/patches/server/1003-Optimize-Hoppers.patch b/patches/server/1001-Optimize-Hoppers.patch similarity index 99% rename from patches/server/1003-Optimize-Hoppers.patch rename to patches/server/1001-Optimize-Hoppers.patch index 7dfa38282..5737f0444 100644 --- a/patches/server/1003-Optimize-Hoppers.patch +++ b/patches/server/1001-Optimize-Hoppers.patch @@ -62,7 +62,7 @@ index 4a4ce372dd105d07f58d7d93d856cb3969969806..fb3dcce4e1888f96fdd260740d9d9559 this.profiler.push(() -> { String s = String.valueOf(worldserver); diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index b21204f4b6fb98f53e41e18f3f8b200c48d94c66..c133a52f96a783e81eac15621655ca1e3f6b6c25 100644 +index 66047f876aedbcc33b86b5cfe2ace588523eb810..5367ece16352523cd7d3f432a137bbed68f82638 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java @@ -809,10 +809,16 @@ public final class ItemStack implements DataComponentHolder { diff --git a/patches/server/1004-Entity-load-save-limit-per-chunk.patch b/patches/server/1002-Entity-load-save-limit-per-chunk.patch similarity index 100% rename from patches/server/1004-Entity-load-save-limit-per-chunk.patch rename to patches/server/1002-Entity-load-save-limit-per-chunk.patch diff --git a/patches/server/1005-Optimize-Voxel-Shape-Merging.patch b/patches/server/1003-Optimize-Voxel-Shape-Merging.patch similarity index 100% rename from patches/server/1005-Optimize-Voxel-Shape-Merging.patch rename to patches/server/1003-Optimize-Voxel-Shape-Merging.patch diff --git a/patches/server/1006-Optimize-Bit-Operations-by-inlining.patch b/patches/server/1004-Optimize-Bit-Operations-by-inlining.patch similarity index 100% rename from patches/server/1006-Optimize-Bit-Operations-by-inlining.patch rename to patches/server/1004-Optimize-Bit-Operations-by-inlining.patch diff --git a/patches/server/1007-Remove-streams-from-hot-code.patch b/patches/server/1005-Remove-streams-from-hot-code.patch similarity index 100% rename from patches/server/1007-Remove-streams-from-hot-code.patch rename to patches/server/1005-Remove-streams-from-hot-code.patch diff --git a/patches/server/1008-Optimize-Pathfinder-Remove-Streams-Optimized-collect.patch b/patches/server/1006-Optimize-Pathfinder-Remove-Streams-Optimized-collect.patch similarity index 100% rename from patches/server/1008-Optimize-Pathfinder-Remove-Streams-Optimized-collect.patch rename to patches/server/1006-Optimize-Pathfinder-Remove-Streams-Optimized-collect.patch diff --git a/patches/server/1009-Custom-table-implementation-for-blockstate-state-loo.patch b/patches/server/1007-Custom-table-implementation-for-blockstate-state-loo.patch similarity index 100% rename from patches/server/1009-Custom-table-implementation-for-blockstate-state-loo.patch rename to patches/server/1007-Custom-table-implementation-for-blockstate-state-loo.patch diff --git a/patches/server/1010-Fix-entity-type-tags-suggestions-in-selectors.patch b/patches/server/1008-Fix-entity-type-tags-suggestions-in-selectors.patch similarity index 100% rename from patches/server/1010-Fix-entity-type-tags-suggestions-in-selectors.patch rename to patches/server/1008-Fix-entity-type-tags-suggestions-in-selectors.patch diff --git a/patches/server/1011-Handle-Oversized-block-entities-in-chunks.patch b/patches/server/1009-Handle-Oversized-block-entities-in-chunks.patch similarity index 100% rename from patches/server/1011-Handle-Oversized-block-entities-in-chunks.patch rename to patches/server/1009-Handle-Oversized-block-entities-in-chunks.patch diff --git a/patches/server/1012-API-for-checking-sent-chunks.patch b/patches/server/1010-API-for-checking-sent-chunks.patch similarity index 94% rename from patches/server/1012-API-for-checking-sent-chunks.patch rename to patches/server/1010-API-for-checking-sent-chunks.patch index 4b57b7987..1ff508b72 100644 --- a/patches/server/1012-API-for-checking-sent-chunks.patch +++ b/patches/server/1010-API-for-checking-sent-chunks.patch @@ -20,10 +20,10 @@ index 852d75a73dae7448cbe1e2f5e164b235efa8a969..a608f57ebca98eda88ad749d0aad0216 } } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 1def2a09427de70646802fd876a5805489a3d129..a0d5082590ee03060f0dbb4770d196efc316c328 100644 +index e02fa642f11809607e30e22b51c65373edd70842..ad740739437be632fc7fedec488a7d0c49534688 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -3484,6 +3484,35 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -3483,6 +3483,35 @@ public class CraftPlayer extends CraftHumanEntity implements Player { } // Paper end diff --git a/patches/server/1013-Check-distance-in-entity-interactions.patch b/patches/server/1011-Check-distance-in-entity-interactions.patch similarity index 97% rename from patches/server/1013-Check-distance-in-entity-interactions.patch rename to patches/server/1011-Check-distance-in-entity-interactions.patch index d6e268091..95e8e99b5 100644 --- a/patches/server/1013-Check-distance-in-entity-interactions.patch +++ b/patches/server/1011-Check-distance-in-entity-interactions.patch @@ -17,7 +17,7 @@ index 42d7ecfab6f72517904451d9df3f0404b176fdb2..0e38a641d8e537750166b56c57aca4a9 }; diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index f749ad127afabbf43b871b29ce6c19956686e9ee..0eea726a703e7d5b128f39b31929963aa27d82cc 100644 +index 340c4452c09a98bc0220e6fe68dc65afc946986b..05dae689ada8d96009e81aabf95a626bae90ecd3 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -1437,7 +1437,7 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/1014-Configurable-Sand-Duping.patch b/patches/server/1012-Configurable-Sand-Duping.patch similarity index 100% rename from patches/server/1014-Configurable-Sand-Duping.patch rename to patches/server/1012-Configurable-Sand-Duping.patch diff --git a/patches/server/1015-Optimise-general-POI-access.patch b/patches/server/1013-Optimise-general-POI-access.patch similarity index 100% rename from patches/server/1015-Optimise-general-POI-access.patch rename to patches/server/1013-Optimise-general-POI-access.patch diff --git a/patches/server/1016-Improve-performance-of-mass-crafts.patch b/patches/server/1014-Improve-performance-of-mass-crafts.patch similarity index 100% rename from patches/server/1016-Improve-performance-of-mass-crafts.patch rename to patches/server/1014-Improve-performance-of-mass-crafts.patch diff --git a/patches/server/1017-Properly-resend-entities.patch b/patches/server/1015-Properly-resend-entities.patch similarity index 82% rename from patches/server/1017-Properly-resend-entities.patch rename to patches/server/1015-Properly-resend-entities.patch index 3745ddb21..956f16576 100644 --- a/patches/server/1017-Properly-resend-entities.patch +++ b/patches/server/1015-Properly-resend-entities.patch @@ -102,7 +102,7 @@ index 0034483685ba626e5883b857de96ffd36e57e150..4c04eb531b6989f7e618d201ecaa8429 } diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 24ff10c4ed69deed2ce9ba25835575419165e2af..83759ce35c66e45d04eaa494bd8bc95e51e9836a 100644 +index 3a90dd1289d393426151d4457edaf99731cc34db..ec058eb6a10500831f173dcb47576c32c7516318 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -393,7 +393,7 @@ public abstract class PlayerList { @@ -114,6 +114,25 @@ index 24ff10c4ed69deed2ce9ba25835575419165e2af..83759ce35c66e45d04eaa494bd8bc95e this.sendLevelInfo(player, worldserver1); +@@ -948,12 +948,17 @@ public abstract class PlayerList { + } + + public void sendActiveEffects(LivingEntity entity, ServerGamePacketListenerImpl networkHandler) { ++ // Paper start - collect packets ++ this.sendActiveEffects(entity, networkHandler::send); ++ } ++ public void sendActiveEffects(LivingEntity entity, java.util.function.Consumer> packetConsumer) { ++ // Paper end - collect packets + Iterator iterator = entity.getActiveEffects().iterator(); + + while (iterator.hasNext()) { + MobEffectInstance mobeffect = (MobEffectInstance) iterator.next(); + +- networkHandler.send(new ClientboundUpdateMobEffectPacket(entity.getId(), mobeffect, false)); ++ packetConsumer.accept(new ClientboundUpdateMobEffectPacket(entity.getId(), mobeffect, false)); // Paper - collect packets + } + + } diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java index e541a77381b03bd4dc648fc50aef77c304157fc0..34b67d7551c0ce354bc7bdb6a3581100c983ac47 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java @@ -167,7 +186,7 @@ index e541a77381b03bd4dc648fc50aef77c304157fc0..34b67d7551c0ce354bc7bdb6a3581100 public boolean equals(Object object) { return object instanceof Entity ? ((Entity) object).id == this.id : false; diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 0eea726a703e7d5b128f39b31929963aa27d82cc..53e4ce13f0ce1a7609fdc82f0ae3f3dabef38c54 100644 +index 05dae689ada8d96009e81aabf95a626bae90ecd3..3b15995efc65a351da8dac009b9698494771fefb 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -3879,6 +3879,11 @@ public abstract class LivingEntity extends Entity implements Attackable { @@ -196,6 +215,27 @@ index b586116d8cca1585f9c9e618ed4d0cb2ef2747be..acf38ef6d8de8b15cf2b09eb7bda390c return Optional.of(InteractionResult.FAIL); } entity.playSound(((Bucketable) entity).getPickupSound(), 1.0F, 1.0F); +diff --git a/src/main/java/net/minecraft/world/item/SuspiciousStewItem.java b/src/main/java/net/minecraft/world/item/SuspiciousStewItem.java +index 5b448006debecab983167d15fac59fc2a04805df..9523db353df026f33d7e859788612b97542bd001 100644 +--- a/src/main/java/net/minecraft/world/item/SuspiciousStewItem.java ++++ b/src/main/java/net/minecraft/world/item/SuspiciousStewItem.java +@@ -58,10 +58,14 @@ public class SuspiciousStewItem extends Item { + public void cancelUsingItem(net.minecraft.server.level.ServerPlayer entityplayer, ItemStack itemstack) { + SuspiciousStewEffects suspicioussteweffects = (SuspiciousStewEffects) itemstack.getOrDefault(DataComponents.SUSPICIOUS_STEW_EFFECTS, SuspiciousStewEffects.EMPTY); + ++ final List> packets = new java.util.ArrayList<>(); // Paper - bundlize packets + for (SuspiciousStewEffects.Entry suspicioussteweffects_a : suspicioussteweffects.effects()) { +- entityplayer.connection.send(new net.minecraft.network.protocol.game.ClientboundRemoveMobEffectPacket(entityplayer.getId(), suspicioussteweffects_a.effect())); ++ packets.add(new net.minecraft.network.protocol.game.ClientboundRemoveMobEffectPacket(entityplayer.getId(), suspicioussteweffects_a.effect())); // Paper - bundlize packets + } +- entityplayer.server.getPlayerList().sendActivePlayerEffects(entityplayer); ++ // Paper start - bundlize packets ++ entityplayer.server.getPlayerList().sendActiveEffects(entityplayer, packets::add); ++ entityplayer.connection.send(new net.minecraft.network.protocol.game.ClientboundBundlePacket(packets)); ++ // Paper end - bundlize packets + } + // CraftBukkit end + } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java index 9ca1fee03bfa557f1df7388c6043c9ec6d02a79a..cd789c235acf740ec29c30b180e7fbe1a140caa9 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java diff --git a/patches/server/1018-Registry-Modification-API.patch b/patches/server/1016-Registry-Modification-API.patch similarity index 99% rename from patches/server/1018-Registry-Modification-API.patch rename to patches/server/1016-Registry-Modification-API.patch index 8a2f27959..3b36d1ffd 100644 --- a/patches/server/1018-Registry-Modification-API.patch +++ b/patches/server/1016-Registry-Modification-API.patch @@ -9,7 +9,7 @@ public net.minecraft.resources.RegistryOps lookupProvider public net.minecraft.resources.RegistryOps$HolderLookupAdapter diff --git a/src/main/java/io/papermc/paper/registry/PaperRegistries.java b/src/main/java/io/papermc/paper/registry/PaperRegistries.java -index 675f5d03478907e3d8284cbea191f01c1eb15769..32ade3ed8533b127e8f5c1cc8b3466249e5444a3 100644 +index 70e2c3b5cac9a0dfb043de218df20dc1ab2cc070..38222dca2497cec5b104b21429a9ec3aaf05d99e 100644 --- a/src/main/java/io/papermc/paper/registry/PaperRegistries.java +++ b/src/main/java/io/papermc/paper/registry/PaperRegistries.java @@ -2,6 +2,7 @@ package io.papermc.paper.registry; @@ -20,7 +20,7 @@ index 675f5d03478907e3d8284cbea191f01c1eb15769..32ade3ed8533b127e8f5c1cc8b346624 import java.util.Collections; import java.util.IdentityHashMap; import java.util.List; -@@ -56,6 +57,7 @@ import org.checkerframework.framework.qual.DefaultQualifier; +@@ -58,6 +59,7 @@ import org.checkerframework.framework.qual.DefaultQualifier; import static io.papermc.paper.registry.entry.RegistryEntry.apiOnly; import static io.papermc.paper.registry.entry.RegistryEntry.entry; @@ -28,7 +28,7 @@ index 675f5d03478907e3d8284cbea191f01c1eb15769..32ade3ed8533b127e8f5c1cc8b346624 @DefaultQualifier(NonNull.class) public final class PaperRegistries { -@@ -138,6 +140,15 @@ public final class PaperRegistries { +@@ -141,6 +143,15 @@ public final class PaperRegistries { return ResourceKey.create((ResourceKey>) PaperRegistries.registryToNms(typedKey.registryKey()), PaperAdventure.asVanilla(typedKey.key())); } @@ -1312,10 +1312,10 @@ index 397bdacab9517354875ebc0bc68d35059b3c318b..908431652a0fea79b5a0cee1efd0c7a7 return writableRegistry; }, diff --git a/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java b/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java -index c2824cc07b761958a0df4b110bdfc53bd853b9e7..cacbb35d365c66881f2a42d099bb88c494b584ee 100644 +index bd16933a5341908b21e549f66080c33466ad1079..90046c85ce1b9901de7476761da156141249300a 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java -@@ -165,11 +165,11 @@ public class CraftRegistry implements Registry { +@@ -167,11 +167,11 @@ public class CraftRegistry implements Registry { private final Map cache = new HashMap<>(); private final Map byValue = new java.util.IdentityHashMap<>(); // Paper - improve Registry private final net.minecraft.core.Registry minecraftRegistry; @@ -1329,7 +1329,7 @@ index c2824cc07b761958a0df4b110bdfc53bd853b9e7..cacbb35d365c66881f2a42d099bb88c4 this.bukkitClass = bukkitClass; this.minecraftRegistry = minecraftRegistry; this.minecraftToBukkit = minecraftToBukkit; -@@ -242,4 +242,17 @@ public class CraftRegistry implements Registry { +@@ -244,4 +244,17 @@ public class CraftRegistry implements Registry { return this.byValue.get(value); } // Paper end - improve Registry diff --git a/patches/server/1019-Add-registry-entry-and-builders.patch b/patches/server/1017-Add-registry-entry-and-builders.patch similarity index 99% rename from patches/server/1019-Add-registry-entry-and-builders.patch rename to patches/server/1017-Add-registry-entry-and-builders.patch index 912559488..a37a06a16 100644 --- a/patches/server/1019-Add-registry-entry-and-builders.patch +++ b/patches/server/1017-Add-registry-entry-and-builders.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add registry entry and builders diff --git a/src/main/java/io/papermc/paper/registry/PaperRegistries.java b/src/main/java/io/papermc/paper/registry/PaperRegistries.java -index 32ade3ed8533b127e8f5c1cc8b3466249e5444a3..6ec9d9b9acf557aa2ebf39d38a14225b0205fae1 100644 +index 38222dca2497cec5b104b21429a9ec3aaf05d99e..98b096339fe48b2fc8169ae0376e05d59236fc9a 100644 --- a/src/main/java/io/papermc/paper/registry/PaperRegistries.java +++ b/src/main/java/io/papermc/paper/registry/PaperRegistries.java @@ -1,6 +1,8 @@ @@ -17,7 +17,7 @@ index 32ade3ed8533b127e8f5c1cc8b3466249e5444a3..6ec9d9b9acf557aa2ebf39d38a14225b import io.papermc.paper.registry.entry.RegistryEntry; import io.papermc.paper.registry.tag.TagKey; import java.util.Collections; -@@ -68,7 +70,7 @@ public final class PaperRegistries { +@@ -70,7 +72,7 @@ public final class PaperRegistries { static { REGISTRY_ENTRIES = List.of( // built-ins @@ -26,7 +26,7 @@ index 32ade3ed8533b127e8f5c1cc8b3466249e5444a3..6ec9d9b9acf557aa2ebf39d38a14225b entry(Registries.INSTRUMENT, RegistryKey.INSTRUMENT, MusicInstrument.class, CraftMusicInstrument::new), entry(Registries.MOB_EFFECT, RegistryKey.MOB_EFFECT, PotionEffectType.class, CraftPotionEffectType::new), entry(Registries.STRUCTURE_TYPE, RegistryKey.STRUCTURE_TYPE, StructureType.class, CraftStructureType::new), -@@ -86,7 +88,7 @@ public final class PaperRegistries { +@@ -89,7 +91,7 @@ public final class PaperRegistries { entry(Registries.TRIM_PATTERN, RegistryKey.TRIM_PATTERN, TrimPattern.class, CraftTrimPattern::new).delayed(), entry(Registries.DAMAGE_TYPE, RegistryKey.DAMAGE_TYPE, DamageType.class, CraftDamageType::new).delayed(), entry(Registries.WOLF_VARIANT, RegistryKey.WOLF_VARIANT, Wolf.Variant.class, CraftWolf.CraftVariant::new).delayed(), diff --git a/patches/server/1020-Improved-Watchdog-Support.patch b/patches/server/1018-Improved-Watchdog-Support.patch similarity index 99% rename from patches/server/1020-Improved-Watchdog-Support.patch rename to patches/server/1018-Improved-Watchdog-Support.patch index 798fa8624..5d035a4ad 100644 --- a/patches/server/1020-Improved-Watchdog-Support.patch +++ b/patches/server/1018-Improved-Watchdog-Support.patch @@ -304,7 +304,7 @@ index 7d2896918ff5fed37e5de5a22c37b0c7f32634a8..d43b98bdfcb00603737a309c0fb7793d } diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 83759ce35c66e45d04eaa494bd8bc95e51e9836a..eb94c0a962de4dc389eb309d264b6e1c6c7229aa 100644 +index cbf7b11215da18a1585efbf1a8aafa34bdc525ab..1a6630360ff6549538ed186cefc28cd99ca472a9 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -604,7 +604,7 @@ public abstract class PlayerList { diff --git a/patches/server/1021-Proxy-ItemStack-to-CraftItemStack.patch b/patches/server/1019-Proxy-ItemStack-to-CraftItemStack.patch similarity index 99% rename from patches/server/1021-Proxy-ItemStack-to-CraftItemStack.patch rename to patches/server/1019-Proxy-ItemStack-to-CraftItemStack.patch index 51d86f8f5..0e609e40f 100644 --- a/patches/server/1021-Proxy-ItemStack-to-CraftItemStack.patch +++ b/patches/server/1019-Proxy-ItemStack-to-CraftItemStack.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Proxy ItemStack to CraftItemStack diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java -index 69b7eb7eff112b59b22f1d349831b9ee14c01943..f4c7b0e2db55ad9cdf09da80f6756f941315fb30 100644 +index aef5c0d1be9c4aa62d9b7c5cacbb42066a802729..db0fe1b755f59eafca6e57917429fb7889889c3a 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java @@ -26,15 +26,57 @@ import org.jetbrains.annotations.ApiStatus; diff --git a/patches/server/1022-Make-a-PDC-view-accessible-directly-from-ItemStack.patch b/patches/server/1020-Make-a-PDC-view-accessible-directly-from-ItemStack.patch similarity index 99% rename from patches/server/1022-Make-a-PDC-view-accessible-directly-from-ItemStack.patch rename to patches/server/1020-Make-a-PDC-view-accessible-directly-from-ItemStack.patch index 430f84e5a..31fdc957f 100644 --- a/patches/server/1022-Make-a-PDC-view-accessible-directly-from-ItemStack.patch +++ b/patches/server/1020-Make-a-PDC-view-accessible-directly-from-ItemStack.patch @@ -97,7 +97,7 @@ index 0000000000000000000000000000000000000000..fac401280d3f3689b00e16c19155ca75 + } +} diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java -index f4c7b0e2db55ad9cdf09da80f6756f941315fb30..40fb5b5e00f6bc82e67d318b8b3d1e7606973f52 100644 +index db0fe1b755f59eafca6e57917429fb7889889c3a..454d1ad710159a47f2112f77ea4b6c87241caf4e 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java @@ -484,4 +484,63 @@ public final class CraftItemStack extends ItemStack { diff --git a/patches/server/1023-Prioritize-Minecraft-commands-in-function-parsing-an.patch b/patches/server/1021-Prioritize-Minecraft-commands-in-function-parsing-an.patch similarity index 100% rename from patches/server/1023-Prioritize-Minecraft-commands-in-function-parsing-an.patch rename to patches/server/1021-Prioritize-Minecraft-commands-in-function-parsing-an.patch diff --git a/patches/server/1024-optimize-dirt-and-snow-spreading.patch b/patches/server/1022-optimize-dirt-and-snow-spreading.patch similarity index 100% rename from patches/server/1024-optimize-dirt-and-snow-spreading.patch rename to patches/server/1022-optimize-dirt-and-snow-spreading.patch diff --git a/patches/server/1025-Fix-NPE-for-Jukebox-setRecord.patch b/patches/server/1023-Fix-NPE-for-Jukebox-setRecord.patch similarity index 100% rename from patches/server/1025-Fix-NPE-for-Jukebox-setRecord.patch rename to patches/server/1023-Fix-NPE-for-Jukebox-setRecord.patch diff --git a/patches/server/1026-Fix-CraftWorld-isChunkGenerated.patch b/patches/server/1024-Fix-CraftWorld-isChunkGenerated.patch similarity index 100% rename from patches/server/1026-Fix-CraftWorld-isChunkGenerated.patch rename to patches/server/1024-Fix-CraftWorld-isChunkGenerated.patch diff --git a/patches/server/1027-fix-horse-inventories.patch b/patches/server/1025-fix-horse-inventories.patch similarity index 100% rename from patches/server/1027-fix-horse-inventories.patch rename to patches/server/1025-fix-horse-inventories.patch diff --git a/patches/server/1028-Only-call-EntityDamageEvents-before-actuallyHurt.patch b/patches/server/1026-Only-call-EntityDamageEvents-before-actuallyHurt.patch similarity index 97% rename from patches/server/1028-Only-call-EntityDamageEvents-before-actuallyHurt.patch rename to patches/server/1026-Only-call-EntityDamageEvents-before-actuallyHurt.patch index f6b8cc3f6..e1393a817 100644 --- a/patches/server/1028-Only-call-EntityDamageEvents-before-actuallyHurt.patch +++ b/patches/server/1026-Only-call-EntityDamageEvents-before-actuallyHurt.patch @@ -12,7 +12,7 @@ This patch moves the invocation directly before the #actuallyHurt calls, respective invulnerable timings. diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 53e4ce13f0ce1a7609fdc82f0ae3f3dabef38c54..8276f4efd7a799b6e8b6e8c28e2565833c889647 100644 +index 3b15995efc65a351da8dac009b9698494771fefb..5079775ce8f86fb061e616190513f56ff086e409 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -1459,12 +1459,7 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/1029-Fix-entity-tracker-desync-when-new-players-are-added.patch b/patches/server/1027-Fix-entity-tracker-desync-when-new-players-are-added.patch similarity index 100% rename from patches/server/1029-Fix-entity-tracker-desync-when-new-players-are-added.patch rename to patches/server/1027-Fix-entity-tracker-desync-when-new-players-are-added.patch diff --git a/patches/server/1030-Lag-compensation-ticks.patch b/patches/server/1028-Lag-compensation-ticks.patch similarity index 97% rename from patches/server/1030-Lag-compensation-ticks.patch rename to patches/server/1028-Lag-compensation-ticks.patch index cea51f3b3..ba2961563 100644 --- a/patches/server/1030-Lag-compensation-ticks.patch +++ b/patches/server/1028-Lag-compensation-ticks.patch @@ -63,7 +63,7 @@ index 24b1715397ba8e6f5e9841a030d0e3d964356f89..cc01ead133cc6859ca5d7a1d0ac3c129 if (this.hasDelayedDestroy) { diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 8276f4efd7a799b6e8b6e8c28e2565833c889647..ccd9dff20a60f019e0c320acfb526b8bf3e5f806 100644 +index 5079775ce8f86fb061e616190513f56ff086e409..13c93281f6b81e88f2f54befb8e6a3e4bdabf53d 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -3900,6 +3900,10 @@ public abstract class LivingEntity extends Entity implements Attackable { @@ -115,7 +115,7 @@ index 8276f4efd7a799b6e8b6e8c28e2565833c889647..ccd9dff20a60f019e0c320acfb526b8b } } -@@ -4129,7 +4144,10 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -4132,7 +4147,10 @@ public abstract class LivingEntity extends Entity implements Attackable { } this.useItem = ItemStack.EMPTY; diff --git a/patches/server/1031-Detail-more-information-in-watchdog-dumps.patch b/patches/server/1029-Detail-more-information-in-watchdog-dumps.patch similarity index 100% rename from patches/server/1031-Detail-more-information-in-watchdog-dumps.patch rename to patches/server/1029-Detail-more-information-in-watchdog-dumps.patch diff --git a/patches/server/1032-Write-SavedData-IO-async.patch b/patches/server/1030-Write-SavedData-IO-async.patch similarity index 100% rename from patches/server/1032-Write-SavedData-IO-async.patch rename to patches/server/1030-Write-SavedData-IO-async.patch diff --git a/patches/server/1034-Add-ItemType-getItemRarity.patch b/patches/server/1031-Add-ItemType-getItemRarity.patch similarity index 100% rename from patches/server/1034-Add-ItemType-getItemRarity.patch rename to patches/server/1031-Add-ItemType-getItemRarity.patch diff --git a/patches/server/1035-Incremental-chunk-and-player-saving.patch b/patches/server/1032-Incremental-chunk-and-player-saving.patch similarity index 98% rename from patches/server/1035-Incremental-chunk-and-player-saving.patch rename to patches/server/1032-Incremental-chunk-and-player-saving.patch index 667fed509..171e0f1fe 100644 --- a/patches/server/1035-Incremental-chunk-and-player-saving.patch +++ b/patches/server/1032-Incremental-chunk-and-player-saving.patch @@ -108,7 +108,7 @@ index 8dc3ba983fd4c61e463867be8d224aa90424215a..6c280abdef5f80b668d6090f9d35283a private static final int NEUTRAL_MOB_DEATH_NOTIFICATION_RADII_Y = 10; private static final int FLY_STAT_RECORDING_SPEED = 25; diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 0184b807cc23719e91a1b1fdf1788e97e505346a..8d0e2bb3ed6651d4fb0dce02bbad36915a04f8ee 100644 +index 0cfaf31273bbec7640eb3a2b16a8d2c816b0ed61..c13922d2fb1c15f895b14d4cb6d5379b59ea1ef8 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -569,6 +569,7 @@ public abstract class PlayerList { @@ -119,7 +119,7 @@ index 0184b807cc23719e91a1b1fdf1788e97e505346a..8d0e2bb3ed6651d4fb0dce02bbad3691 this.playerIo.save(player); ServerStatsCounter serverstatisticmanager = (ServerStatsCounter) player.getStats(); // CraftBukkit -@@ -1187,10 +1188,22 @@ public abstract class PlayerList { +@@ -1192,10 +1193,22 @@ public abstract class PlayerList { } public void saveAll() { diff --git a/patches/server/1036-Attempt-to-recalculate-regionfile-header-if-it-is-co.patch b/patches/server/1033-Attempt-to-recalculate-regionfile-header-if-it-is-co.patch similarity index 100% rename from patches/server/1036-Attempt-to-recalculate-regionfile-header-if-it-is-co.patch rename to patches/server/1033-Attempt-to-recalculate-regionfile-header-if-it-is-co.patch diff --git a/patches/server/1033-Correctly-call-PlayerItemBreakEvent.patch b/patches/server/1033-Correctly-call-PlayerItemBreakEvent.patch deleted file mode 100644 index 378457e6e..000000000 --- a/patches/server/1033-Correctly-call-PlayerItemBreakEvent.patch +++ /dev/null @@ -1,34 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Bjarne Koll -Date: Fri, 12 Jul 2024 19:09:44 +0200 -Subject: [PATCH] Correctly call PlayerItemBreakEvent - -The minecraft 1.21 update changed the invocation order in -ItemStack#hurtAndBreak, now first shrinking the itemstack to a count of -zero and then invoking the break callback. - -This leads to spigots logic no longer firing at all. This patch now -correctly executes on count of zero and temporarily bumps the count to -one before passing it to event handlers to maintain compatibility with -the event contracts. - -This fix was chosen over invoking the callback prior to shrinking the -stack to not disrupt potential new vanilla changes that might depend on -this behaviour. - -diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index c133a52f96a783e81eac15621655ca1e3f6b6c25..b6a2f3e4f22f36e75a1630bd456c2f471edbb398 100644 ---- a/src/main/java/net/minecraft/world/item/ItemStack.java -+++ b/src/main/java/net/minecraft/world/item/ItemStack.java -@@ -731,8 +731,10 @@ public final class ItemStack implements DataComponentHolder { - - this.hurtAndBreak(amount, worldserver, entity, (item) -> { // Paper - Add EntityDamageItemEvent - // CraftBukkit start - Check for item breaking -- if (this.count == 1 && entity instanceof net.minecraft.world.entity.player.Player) { -+ if (this.count == 0 && entity instanceof net.minecraft.world.entity.player.Player) { // Paper - correctly call item break event - run if count reached 0 -+ this.setCount(1); // Paper - correctly call item break event - grow to count 1 - org.bukkit.craftbukkit.event.CraftEventFactory.callPlayerItemBreakEvent((net.minecraft.world.entity.player.Player) entity, this); -+ this.setCount(0); // Paper - correctly call item break event - reset to count 0 - } - // CraftBukkit end - if (slot != null) entity.onEquippedItemBroken(item, slot); // Paper - itemstack damage API - do not process entity related callbacks when damaging from API diff --git a/patches/server/1037-Bundle-spark.patch b/patches/server/1034-Bundle-spark.patch similarity index 99% rename from patches/server/1037-Bundle-spark.patch rename to patches/server/1034-Bundle-spark.patch index bf1e8ef66..755da7191 100644 --- a/patches/server/1037-Bundle-spark.patch +++ b/patches/server/1034-Bundle-spark.patch @@ -334,7 +334,7 @@ index d43b98bdfcb00603737a309c0fb7793d42289b8c..dd56c8e041116ef3602a9f89c998c820 com.destroystokyo.paper.VersionHistoryManager.INSTANCE.getClass(); // Paper - load version history now diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 05001bb637d55aaf36359b37a42ef33e4557b9f2..1b36e94617d4e777c419660936460d5cf8a4b3e8 100644 +index 5ef080406d8954ecaa65cf60569cc05dbad649ea..b7af2d4300facf41a025c8ca322bf6541949b3ab 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -309,6 +309,7 @@ public final class CraftServer implements Server { diff --git a/patches/server/1038-Add-plugin-info-at-startup.patch b/patches/server/1035-Add-plugin-info-at-startup.patch similarity index 100% rename from patches/server/1038-Add-plugin-info-at-startup.patch rename to patches/server/1035-Add-plugin-info-at-startup.patch diff --git a/patches/server/1039-Make-interaction-leniency-distance-configurable.patch b/patches/server/1036-Make-interaction-leniency-distance-configurable.patch similarity index 100% rename from patches/server/1039-Make-interaction-leniency-distance-configurable.patch rename to patches/server/1036-Make-interaction-leniency-distance-configurable.patch diff --git a/patches/server/1040-Fix-PickupStatus-getting-reset.patch b/patches/server/1037-Fix-PickupStatus-getting-reset.patch similarity index 95% rename from patches/server/1040-Fix-PickupStatus-getting-reset.patch rename to patches/server/1037-Fix-PickupStatus-getting-reset.patch index 2a772419c..a952f8a68 100644 --- a/patches/server/1040-Fix-PickupStatus-getting-reset.patch +++ b/patches/server/1037-Fix-PickupStatus-getting-reset.patch @@ -24,10 +24,10 @@ index ddf47dab1ab92c45e3eea09239d418a9798ed59e..9ca29b3d4bf8bca5f51f3644e12fcbec byte b0 = 0; diff --git a/src/main/java/net/minecraft/world/entity/projectile/Projectile.java b/src/main/java/net/minecraft/world/entity/projectile/Projectile.java -index 4b71538d5e921af89c4b13200484d4767e4dd6f9..de64de5d1328d3e0826c9990eb7c7eca5088cb9c 100644 +index f2bdd95a6ae77400742d87bcae35c09fb8b047ba..10ade433c083851d9ea4797c6ec618db122229f9 100644 --- a/src/main/java/net/minecraft/world/entity/projectile/Projectile.java +++ b/src/main/java/net/minecraft/world/entity/projectile/Projectile.java -@@ -243,7 +243,13 @@ public abstract class Projectile extends Entity implements TraceableEntity { +@@ -240,7 +240,13 @@ public abstract class Projectile extends Entity implements TraceableEntity { public boolean deflect(ProjectileDeflection deflection, @Nullable Entity deflector, @Nullable Entity owner, boolean fromAttack) { if (!this.level().isClientSide) { deflection.deflect(this, deflector, this.random); diff --git a/patches/server/1041-Check-for-block-type-in-SculkSensorBlock-canActivate.patch b/patches/server/1038-Check-for-block-type-in-SculkSensorBlock-canActivate.patch similarity index 100% rename from patches/server/1041-Check-for-block-type-in-SculkSensorBlock-canActivate.patch rename to patches/server/1038-Check-for-block-type-in-SculkSensorBlock-canActivate.patch diff --git a/patches/server/1042-Add-API-for-CanPlaceOn-and-CanDestroy-NBT-values.patch b/patches/server/1039-Add-API-for-CanPlaceOn-and-CanDestroy-NBT-values.patch similarity index 98% rename from patches/server/1042-Add-API-for-CanPlaceOn-and-CanDestroy-NBT-values.patch rename to patches/server/1039-Add-API-for-CanPlaceOn-and-CanDestroy-NBT-values.patch index 3ff8343ca..8347a4c5c 100644 --- a/patches/server/1042-Add-API-for-CanPlaceOn-and-CanDestroy-NBT-values.patch +++ b/patches/server/1039-Add-API-for-CanPlaceOn-and-CanDestroy-NBT-values.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add API for CanPlaceOn and CanDestroy NBT values diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java -index d5c45cc09b9d60c1650507ad6fedb27246291063..5c45946f54e4b16440c15a9165ef85be43e53c84 100644 +index 042bfdd14c9ff4cc8ed3421f73565f0f03b11bcb..e0414b0a48a95f1f5e718070dd0e5f955052a898 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java @@ -2183,4 +2183,117 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { diff --git a/patches/server/1043-Configuration-for-horizontal-only-item-merging.patch b/patches/server/1040-Configuration-for-horizontal-only-item-merging.patch similarity index 100% rename from patches/server/1043-Configuration-for-horizontal-only-item-merging.patch rename to patches/server/1040-Configuration-for-horizontal-only-item-merging.patch diff --git a/patches/server/1044-Optimise-collision-checking-in-player-move-packet-ha.patch b/patches/server/1041-Optimise-collision-checking-in-player-move-packet-ha.patch similarity index 100% rename from patches/server/1044-Optimise-collision-checking-in-player-move-packet-ha.patch rename to patches/server/1041-Optimise-collision-checking-in-player-move-packet-ha.patch diff --git a/patches/server/1045-Add-skipping-world-symlink-scan.patch b/patches/server/1042-Add-skipping-world-symlink-scan.patch similarity index 100% rename from patches/server/1045-Add-skipping-world-symlink-scan.patch rename to patches/server/1042-Add-skipping-world-symlink-scan.patch diff --git a/patches/server/1046-Add-even-more-Enchantment-API.patch b/patches/server/1043-Add-even-more-Enchantment-API.patch similarity index 100% rename from patches/server/1046-Add-even-more-Enchantment-API.patch rename to patches/server/1043-Add-even-more-Enchantment-API.patch diff --git a/patches/server/1047-Leashable-API.patch b/patches/server/1044-Leashable-API.patch similarity index 98% rename from patches/server/1047-Leashable-API.patch rename to patches/server/1044-Leashable-API.patch index b93323b96..ed84c7886 100644 --- a/patches/server/1047-Leashable-API.patch +++ b/patches/server/1044-Leashable-API.patch @@ -74,7 +74,7 @@ index e33b1b6fd50a4eea57500cc00dba20d6edcab75d..01a9660de65688b7c1a4f9dafcb65077 public CraftBoat(CraftServer server, net.minecraft.world.entity.vehicle.Boat entity) { super(server, entity); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index d2bb0831394c03b620b2cbd8306cb82b621f34f7..beb6ad312028adb14053e3f019a4fcf6c9149373 100644 +index a54cf98661cc678277855f21735e98fafd018ded..a46fbd2a5e31dd9aa7fcf0867c91ec8d28990861 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java @@ -753,43 +753,17 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { diff --git a/patches/server/1048-Fix-CraftBukkit-drag-system.patch b/patches/server/1045-Fix-CraftBukkit-drag-system.patch similarity index 100% rename from patches/server/1048-Fix-CraftBukkit-drag-system.patch rename to patches/server/1045-Fix-CraftBukkit-drag-system.patch diff --git a/patches/server/1049-Fix-SculkBloomEvent-firing-for-block-entity-loading.patch b/patches/server/1046-Fix-SculkBloomEvent-firing-for-block-entity-loading.patch similarity index 100% rename from patches/server/1049-Fix-SculkBloomEvent-firing-for-block-entity-loading.patch rename to patches/server/1046-Fix-SculkBloomEvent-firing-for-block-entity-loading.patch diff --git a/patches/server/1050-Remove-set-damage-lootable-item-function-from-compas.patch b/patches/server/1047-Remove-set-damage-lootable-item-function-from-compas.patch similarity index 100% rename from patches/server/1050-Remove-set-damage-lootable-item-function-from-compas.patch rename to patches/server/1047-Remove-set-damage-lootable-item-function-from-compas.patch diff --git a/patches/server/1051-Properly-destroy-placed-blocks-on-the-end-platform.patch b/patches/server/1048-Properly-destroy-placed-blocks-on-the-end-platform.patch similarity index 100% rename from patches/server/1051-Properly-destroy-placed-blocks-on-the-end-platform.patch rename to patches/server/1048-Properly-destroy-placed-blocks-on-the-end-platform.patch diff --git a/patches/server/1052-Add-enchantment-seed-update-API.patch b/patches/server/1049-Add-enchantment-seed-update-API.patch similarity index 100% rename from patches/server/1052-Add-enchantment-seed-update-API.patch rename to patches/server/1049-Add-enchantment-seed-update-API.patch diff --git a/patches/server/1053-Fix-synchronise-sending-chat-to-client-with-updating.patch b/patches/server/1050-Fix-synchronise-sending-chat-to-client-with-updating.patch similarity index 100% rename from patches/server/1053-Fix-synchronise-sending-chat-to-client-with-updating.patch rename to patches/server/1050-Fix-synchronise-sending-chat-to-client-with-updating.patch diff --git a/patches/server/1054-Fix-InventoryOpenEvent-cancellation.patch b/patches/server/1051-Fix-InventoryOpenEvent-cancellation.patch similarity index 99% rename from patches/server/1054-Fix-InventoryOpenEvent-cancellation.patch rename to patches/server/1051-Fix-InventoryOpenEvent-cancellation.patch index 4e5e1eb19..e63dbfd2a 100644 --- a/patches/server/1054-Fix-InventoryOpenEvent-cancellation.patch +++ b/patches/server/1051-Fix-InventoryOpenEvent-cancellation.patch @@ -304,7 +304,7 @@ index 8dd9d92c4730ec9a1cea197817e28e60f70ae3a9..d2f5228e2b0848ca79a7fe6ea79095c2 @Override diff --git a/src/main/java/net/minecraft/world/level/block/ShulkerBoxBlock.java b/src/main/java/net/minecraft/world/level/block/ShulkerBoxBlock.java -index 01154357fb536533f5d01f3f8495218fa3716ea2..0f111736ad4664be69e7256922af33a3a58092a1 100644 +index 6323c96d9b0cd14f89609b38da37d7fcc12d211b..6b2c3afa04a3564e435633b521d918ed795f9f65 100644 --- a/src/main/java/net/minecraft/world/level/block/ShulkerBoxBlock.java +++ b/src/main/java/net/minecraft/world/level/block/ShulkerBoxBlock.java @@ -106,8 +106,7 @@ public class ShulkerBoxBlock extends BaseEntityBlock { diff --git a/patches/server/1055-Fire-BlockExpEvent-on-grindstone-use.patch b/patches/server/1052-Fire-BlockExpEvent-on-grindstone-use.patch similarity index 100% rename from patches/server/1055-Fire-BlockExpEvent-on-grindstone-use.patch rename to patches/server/1052-Fire-BlockExpEvent-on-grindstone-use.patch diff --git a/patches/server/1056-Check-dead-flag-in-isAlive.patch b/patches/server/1053-Check-dead-flag-in-isAlive.patch similarity index 93% rename from patches/server/1056-Check-dead-flag-in-isAlive.patch rename to patches/server/1053-Check-dead-flag-in-isAlive.patch index c7bca0ad1..e00e21c5b 100644 --- a/patches/server/1056-Check-dead-flag-in-isAlive.patch +++ b/patches/server/1053-Check-dead-flag-in-isAlive.patch @@ -15,7 +15,7 @@ Also, even if the plugin is responsibly checking !isDead() before modifying heal I am currently unable to replicate, these "revived" entities can still appear diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index ccd9dff20a60f019e0c320acfb526b8bf3e5f806..9c9e2377f44b1f1bbd8bb0e8bc963a80f4f9ee68 100644 +index 13c93281f6b81e88f2f54befb8e6a3e4bdabf53d..30f4f1254fc295442d72d50479e8af635f2fe983 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -2096,7 +2096,7 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/1057-Add-FeatureFlag-API.patch b/patches/server/1054-Add-FeatureFlag-API.patch similarity index 100% rename from patches/server/1057-Add-FeatureFlag-API.patch rename to patches/server/1054-Add-FeatureFlag-API.patch diff --git a/patches/server/1058-Tag-Lifecycle-Events.patch b/patches/server/1055-Tag-Lifecycle-Events.patch similarity index 100% rename from patches/server/1058-Tag-Lifecycle-Events.patch rename to patches/server/1055-Tag-Lifecycle-Events.patch diff --git a/patches/server/1059-Item-serialization-as-json.patch b/patches/server/1056-Item-serialization-as-json.patch similarity index 100% rename from patches/server/1059-Item-serialization-as-json.patch rename to patches/server/1056-Item-serialization-as-json.patch diff --git a/work/Bukkit b/work/Bukkit index 4068c6aa9..1fc1020ad 160000 --- a/work/Bukkit +++ b/work/Bukkit @@ -1 +1 @@ -Subproject commit 4068c6aa92024936b8d21a56d83048784d700864 +Subproject commit 1fc1020ad0d91a1cf6bfaae6f0441c24be701fbf diff --git a/work/CraftBukkit b/work/CraftBukkit index 7548afcf2..bbb30e7a8 160000 --- a/work/CraftBukkit +++ b/work/CraftBukkit @@ -1 +1 @@ -Subproject commit 7548afcf2470885065171982aa1c813196e98b09 +Subproject commit bbb30e7a853eb15c00dfea1bd46715101c777c8b diff --git a/work/Spigot b/work/Spigot index ca581228b..a759b629c 160000 --- a/work/Spigot +++ b/work/Spigot @@ -1 +1 @@ -Subproject commit ca581228b6f5c2b4ee8236f604d5ea288f970c24 +Subproject commit a759b629cbf86401aab56b8c3f21a635e9e76c15