diff --git a/patches/api/0001-Convert-project-to-Gradle.patch b/patches/api/0001-Convert-project-to-Gradle.patch index a21ac3b54..3596bd55a 100644 --- a/patches/api/0001-Convert-project-to-Gradle.patch +++ b/patches/api/0001-Convert-project-to-Gradle.patch @@ -27,10 +27,10 @@ index 11038da2e071699d6561a331565db0c8d7850d0e..317acfec5894101294a55abff6181943 +/.factorypath diff --git a/build.gradle.kts b/build.gradle.kts new file mode 100644 -index 0000000000000000000000000000000000000000..363001c4a677e27ed98cb16c9789b47783fae725 +index 0000000000000000000000000000000000000000..4b7f005519d8856fc35a94401636ae8d9bf41f10 --- /dev/null +++ b/build.gradle.kts -@@ -0,0 +1,82 @@ +@@ -0,0 +1,83 @@ +plugins { + `java-library` + `maven-publish` @@ -101,6 +101,7 @@ index 0000000000000000000000000000000000000000..363001c4a677e27ed98cb16c9789b477 + "https://javadoc.io/doc/org.jetbrains/annotations-java5/23.0.0/", + "https://javadoc.io/doc/net.md-5/bungeecord-chat/1.16-R0.4/", + ) ++ options.tags("apiNote:a:API Note:") + + // workaround for https://github.com/gradle/gradle/issues/4046 + inputs.dir("src/main/javadoc").withPropertyName("javadoc-sourceset") @@ -115,10 +116,10 @@ index 0000000000000000000000000000000000000000..363001c4a677e27ed98cb16c9789b477 +} diff --git a/pom.xml b/pom.xml deleted file mode 100644 -index 95228f3264ca4857fa69b51ca9235a21761b7649..0000000000000000000000000000000000000000 +index e324c7b4a615d74c5c5c66ce539a28c21eab9f1e..0000000000000000000000000000000000000000 --- a/pom.xml +++ /dev/null -@@ -1,263 +0,0 @@ +@@ -1,270 +0,0 @@ - - @@ -319,6 +320,13 @@ index 95228f3264ca4857fa69b51ca9235a21761b7649..00000000000000000000000000000000 - https://javadoc.io/doc/org.jetbrains/annotations-java5/23.0.0/ - https://javadoc.io/doc/net.md-5/bungeecord-chat/1.16-R0.4/ - +- +- +- apiNote +- a +- API Note: +- +- - - - diff --git a/patches/api/0002-Build-system-changes.patch b/patches/api/0002-Build-system-changes.patch index e4eb007c8..f85202498 100644 --- a/patches/api/0002-Build-system-changes.patch +++ b/patches/api/0002-Build-system-changes.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Build system changes diff --git a/build.gradle.kts b/build.gradle.kts -index 363001c4a677e27ed98cb16c9789b47783fae725..140e5edaf2db8fe00c8ecb32a7be42f89da6c1a7 100644 +index 4b7f005519d8856fc35a94401636ae8d9bf41f10..bb6e3afe8e8bc1a3b598b085286ffcdaf3574072 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -15,15 +15,27 @@ dependencies { @@ -45,8 +45,8 @@ index 363001c4a677e27ed98cb16c9789b47783fae725..140e5edaf2db8fe00c8ecb32a7be42f8 + "https://javadoc.io/doc/org.jetbrains/annotations/23.0.0/", // Paper - we don't want Java 5 annotations "https://javadoc.io/doc/net.md-5/bungeecord-chat/1.16-R0.4/", ) - -@@ -80,3 +92,14 @@ tasks.withType { + options.tags("apiNote:a:API Note:") +@@ -81,3 +93,14 @@ tasks.withType { } } } diff --git a/patches/api/0005-Adventure.patch b/patches/api/0005-Adventure.patch index 4dc21384e..766cc9904 100644 --- a/patches/api/0005-Adventure.patch +++ b/patches/api/0005-Adventure.patch @@ -7,7 +7,7 @@ Co-authored-by: zml Co-authored-by: Jake Potrebic diff --git a/build.gradle.kts b/build.gradle.kts -index 05ac285c0bafa853f820d75c43858836b9bac0c4..81b9ca9c7b93e5eaf4118d69208feeab1bbfdce2 100644 +index 5fccd83117c2c153951d102756acfd4862b8c51b..b0e446dde0ccdb61fe58f1c00e3e2d958336c35c 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -8,11 +8,24 @@ java { @@ -50,7 +50,7 @@ index 05ac285c0bafa853f820d75c43858836b9bac0c4..81b9ca9c7b93e5eaf4118d69208feeab // Paper end compileOnly("org.apache.maven:maven-resolver-provider:3.8.5") -@@ -80,9 +100,24 @@ tasks.withType { +@@ -80,10 +100,25 @@ tasks.withType { "https://guava.dev/releases/31.1-jre/api/docs/", "https://javadoc.io/doc/org.yaml/snakeyaml/1.33/", "https://javadoc.io/doc/org.jetbrains/annotations/23.0.0/", // Paper - we don't want Java 5 annotations @@ -64,6 +64,7 @@ index 05ac285c0bafa853f820d75c43858836b9bac0c4..81b9ca9c7b93e5eaf4118d69208feeab + "https://jd.advntr.dev/text-serializer-plain/$adventureVersion/", + // Paper end ) + options.tags("apiNote:a:API Note:") + inputs.files(apiAndDocs).ignoreEmptyDirectories().withPropertyName(apiAndDocs.name + "-configuration") + doFirst { @@ -1364,10 +1365,10 @@ index 52dd3148ae2a3480982593dc627ef7eede52bc5a..0a333c1439b3623d38029b88ce6d5ff1 throw new UnsupportedOperationException("Not supported yet."); } diff --git a/src/main/java/org/bukkit/Sound.java b/src/main/java/org/bukkit/Sound.java -index 5676389bb85607112194fd9a6741ab88254d18bb..5035c525ab40ebdde3da7fe85f5bdf6a26f6cfc0 100644 +index 4dda5091739ece442a66d983670ad432b6042867..762b0d9ba22a1012ebe5ea77b6aef909fddc0403 100644 --- a/src/main/java/org/bukkit/Sound.java +++ b/src/main/java/org/bukkit/Sound.java -@@ -10,7 +10,7 @@ import org.jetbrains.annotations.NotNull; +@@ -11,7 +11,7 @@ import org.jetbrains.annotations.NotNull; * guarantee values will not be removed from this Enum. As such, you should not * depend on the ordinal values of this class. */ @@ -1376,7 +1377,7 @@ index 5676389bb85607112194fd9a6741ab88254d18bb..5035c525ab40ebdde3da7fe85f5bdf6a AMBIENT_BASALT_DELTAS_ADDITIONS("ambient.basalt_deltas.additions"), AMBIENT_BASALT_DELTAS_LOOP("ambient.basalt_deltas.loop"), -@@ -1478,4 +1478,11 @@ public enum Sound implements Keyed { +@@ -1640,4 +1640,11 @@ public enum Sound implements Keyed { public NamespacedKey getKey() { return key; } @@ -1961,10 +1962,10 @@ index 9566e4306ada5e82dede0f002aa06da12c44996b..4d5f0837bd0e02a30c943d8969fb6b13 + // Paper end } diff --git a/src/main/java/org/bukkit/entity/Entity.java b/src/main/java/org/bukkit/entity/Entity.java -index 281518d6e1f67722134e22d89b71106aae0c4397..d5be25c62b2eb90f8e171646b460fef04cf2a470 100644 +index f3afe67f0832cb828d25be3654518ff73a80b0e1..598abaa82c634178043a29f6caa6ac5221659d06 100644 --- a/src/main/java/org/bukkit/entity/Entity.java +++ b/src/main/java/org/bukkit/entity/Entity.java -@@ -26,7 +26,7 @@ import org.jetbrains.annotations.Nullable; +@@ -27,7 +27,7 @@ import org.jetbrains.annotations.Nullable; /** * Represents a base entity in the world */ @@ -1973,7 +1974,7 @@ index 281518d6e1f67722134e22d89b71106aae0c4397..d5be25c62b2eb90f8e171646b460fef0 /** * Gets the entity's current position -@@ -709,4 +709,20 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent +@@ -710,4 +710,20 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent @Override Spigot spigot(); // Spigot end @@ -1995,10 +1996,10 @@ index 281518d6e1f67722134e22d89b71106aae0c4397..d5be25c62b2eb90f8e171646b460fef0 + // Paper end } diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index f2aeb6dba58ae2e0936ae2fad1cfd8d6198befe7..1fa1ad73ba424c8ae7a0646bc076e13a3a7f3e6f 100644 +index 1d702d2bfd61fc44f351a90e03e4b2593e470630..743559d4cc248331578e0c2d2a026e7a270cb713 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java -@@ -39,7 +39,28 @@ import org.jetbrains.annotations.Nullable; +@@ -40,7 +40,28 @@ import org.jetbrains.annotations.Nullable; /** * Represents a player, connected or not */ @@ -2028,7 +2029,7 @@ index f2aeb6dba58ae2e0936ae2fad1cfd8d6198befe7..1fa1ad73ba424c8ae7a0646bc076e13a /** * {@inheritDoc} -@@ -56,7 +77,9 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -57,7 +78,9 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM * places defined by plugins. * * @return the friendly name @@ -2038,7 +2039,7 @@ index f2aeb6dba58ae2e0936ae2fad1cfd8d6198befe7..1fa1ad73ba424c8ae7a0646bc076e13a @NotNull public String getDisplayName(); -@@ -68,15 +91,50 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -69,15 +92,50 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM * places defined by plugins. * * @param name The new display name. @@ -2089,7 +2090,7 @@ index f2aeb6dba58ae2e0936ae2fad1cfd8d6198befe7..1fa1ad73ba424c8ae7a0646bc076e13a public String getPlayerListName(); /** -@@ -85,14 +143,18 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -86,14 +144,18 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM * If the value is null, the name will be identical to {@link #getName()}. * * @param name new player list name @@ -2108,7 +2109,7 @@ index f2aeb6dba58ae2e0936ae2fad1cfd8d6198befe7..1fa1ad73ba424c8ae7a0646bc076e13a @Nullable public String getPlayerListHeader(); -@@ -100,7 +162,9 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -101,7 +163,9 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM * Gets the currently displayed player list footer for this player. * * @return player list header or null @@ -2118,7 +2119,7 @@ index f2aeb6dba58ae2e0936ae2fad1cfd8d6198befe7..1fa1ad73ba424c8ae7a0646bc076e13a @Nullable public String getPlayerListFooter(); -@@ -108,14 +172,18 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -109,14 +173,18 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM * Sets the currently displayed player list header for this player. * * @param header player list header, null for empty @@ -2137,7 +2138,7 @@ index f2aeb6dba58ae2e0936ae2fad1cfd8d6198befe7..1fa1ad73ba424c8ae7a0646bc076e13a public void setPlayerListFooter(@Nullable String footer); /** -@@ -124,7 +192,9 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -125,7 +193,9 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM * * @param header player list header, null for empty * @param footer player list footer, null for empty @@ -2147,7 +2148,7 @@ index f2aeb6dba58ae2e0936ae2fad1cfd8d6198befe7..1fa1ad73ba424c8ae7a0646bc076e13a public void setPlayerListHeaderFooter(@Nullable String header, @Nullable String footer); /** -@@ -162,9 +232,25 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -163,9 +233,25 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM * Kicks player with custom kick message. * * @param message kick message @@ -2173,7 +2174,7 @@ index f2aeb6dba58ae2e0936ae2fad1cfd8d6198befe7..1fa1ad73ba424c8ae7a0646bc076e13a /** * Says a message (or runs a command). * -@@ -606,6 +692,90 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -607,6 +693,90 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM */ public void sendEquipmentChange(@NotNull LivingEntity entity, @NotNull Map items); @@ -2264,7 +2265,7 @@ index f2aeb6dba58ae2e0936ae2fad1cfd8d6198befe7..1fa1ad73ba424c8ae7a0646bc076e13a /** * Send a sign change. This fakes a sign change packet for a user at * a certain location. This will not actually change the world in any way. -@@ -620,7 +790,9 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -621,7 +791,9 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM * @param lines the new text on the sign or null to clear it * @throws IllegalArgumentException if location is null * @throws IllegalArgumentException if lines is non-null and has a length less than 4 @@ -2274,7 +2275,7 @@ index f2aeb6dba58ae2e0936ae2fad1cfd8d6198befe7..1fa1ad73ba424c8ae7a0646bc076e13a public void sendSignChange(@NotNull Location loc, @Nullable String[] lines) throws IllegalArgumentException; /** -@@ -639,7 +811,9 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -640,7 +812,9 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM * @throws IllegalArgumentException if location is null * @throws IllegalArgumentException if dyeColor is null * @throws IllegalArgumentException if lines is non-null and has a length less than 4 @@ -2284,7 +2285,7 @@ index f2aeb6dba58ae2e0936ae2fad1cfd8d6198befe7..1fa1ad73ba424c8ae7a0646bc076e13a public void sendSignChange(@NotNull Location loc, @Nullable String[] lines, @NotNull DyeColor dyeColor) throws IllegalArgumentException; /** -@@ -659,7 +833,9 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -660,7 +834,9 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM * @throws IllegalArgumentException if location is null * @throws IllegalArgumentException if dyeColor is null * @throws IllegalArgumentException if lines is non-null and has a length less than 4 @@ -2294,7 +2295,7 @@ index f2aeb6dba58ae2e0936ae2fad1cfd8d6198befe7..1fa1ad73ba424c8ae7a0646bc076e13a public void sendSignChange(@NotNull Location loc, @Nullable String[] lines, @NotNull DyeColor dyeColor, boolean hasGlowingText) throws IllegalArgumentException; /** -@@ -1132,6 +1308,7 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -1133,6 +1309,7 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM * pack correctly. * * @@ -2302,7 +2303,7 @@ index f2aeb6dba58ae2e0936ae2fad1cfd8d6198befe7..1fa1ad73ba424c8ae7a0646bc076e13a * @param url The URL from which the client will download the resource * pack. The string must contain only US-ASCII characters and should * be encoded as per RFC 1738. -@@ -1188,8 +1365,10 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -1189,8 +1366,10 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM * @throws IllegalArgumentException Thrown if the hash is not 20 bytes * long. */ @@ -2313,7 +2314,7 @@ index f2aeb6dba58ae2e0936ae2fad1cfd8d6198befe7..1fa1ad73ba424c8ae7a0646bc076e13a /** * Request that the player's client download and switch resource packs. *

-@@ -1225,6 +1404,54 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -1226,6 +1405,54 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM * @param hash The sha1 hash sum of the resource pack file which is used * to apply a cached version of the pack directly without downloading * if it is available. Hast to be 20 bytes long! @@ -2368,7 +2369,7 @@ index f2aeb6dba58ae2e0936ae2fad1cfd8d6198befe7..1fa1ad73ba424c8ae7a0646bc076e13a * @param force If true, the client will be disconnected from the server * when it declines to use the resource pack. * @throws IllegalArgumentException Thrown if the URL is null. -@@ -1279,8 +1506,57 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -1280,8 +1507,57 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM * @throws IllegalArgumentException Thrown if the hash is not 20 bytes * long. */ @@ -2426,7 +2427,7 @@ index f2aeb6dba58ae2e0936ae2fad1cfd8d6198befe7..1fa1ad73ba424c8ae7a0646bc076e13a /** * Gets the Scoreboard displayed to this player * -@@ -1396,7 +1672,7 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -1397,7 +1673,7 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM * * @param title Title text * @param subtitle Subtitle text @@ -2435,7 +2436,7 @@ index f2aeb6dba58ae2e0936ae2fad1cfd8d6198befe7..1fa1ad73ba424c8ae7a0646bc076e13a */ @Deprecated public void sendTitle(@Nullable String title, @Nullable String subtitle); -@@ -1415,7 +1691,9 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -1416,7 +1692,9 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM * @param fadeIn time in ticks for titles to fade in. Defaults to 10. * @param stay time in ticks for titles to stay. Defaults to 70. * @param fadeOut time in ticks for titles to fade out. Defaults to 20. @@ -2445,7 +2446,7 @@ index f2aeb6dba58ae2e0936ae2fad1cfd8d6198befe7..1fa1ad73ba424c8ae7a0646bc076e13a public void sendTitle(@Nullable String title, @Nullable String subtitle, int fadeIn, int stay, int fadeOut); /** -@@ -1642,6 +1920,14 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -1643,6 +1921,14 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM */ public int getClientViewDistance(); @@ -2460,7 +2461,7 @@ index f2aeb6dba58ae2e0936ae2fad1cfd8d6198befe7..1fa1ad73ba424c8ae7a0646bc076e13a /** * Gets the player's estimated ping in milliseconds. * -@@ -1667,8 +1953,10 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -1668,8 +1954,10 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM * they wish. * * @return the player's locale @@ -2471,7 +2472,7 @@ index f2aeb6dba58ae2e0936ae2fad1cfd8d6198befe7..1fa1ad73ba424c8ae7a0646bc076e13a public String getLocale(); /** -@@ -1710,6 +1998,14 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -1711,6 +1999,14 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM */ public boolean isAllowingServerListings(); @@ -2486,7 +2487,7 @@ index f2aeb6dba58ae2e0936ae2fad1cfd8d6198befe7..1fa1ad73ba424c8ae7a0646bc076e13a // Spigot start public class Spigot extends Entity.Spigot { -@@ -1764,11 +2060,13 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -1765,11 +2061,13 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM throw new UnsupportedOperationException("Not supported yet."); } @@ -2500,7 +2501,7 @@ index f2aeb6dba58ae2e0936ae2fad1cfd8d6198befe7..1fa1ad73ba424c8ae7a0646bc076e13a @Override public void sendMessage(@NotNull net.md_5.bungee.api.chat.BaseComponent... components) { throw new UnsupportedOperationException("Not supported yet."); -@@ -1779,7 +2077,9 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -1780,7 +2078,9 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM * * @param position the screen position * @param component the components to send @@ -2510,7 +2511,7 @@ index f2aeb6dba58ae2e0936ae2fad1cfd8d6198befe7..1fa1ad73ba424c8ae7a0646bc076e13a public void sendMessage(@NotNull net.md_5.bungee.api.ChatMessageType position, @NotNull net.md_5.bungee.api.chat.BaseComponent component) { throw new UnsupportedOperationException("Not supported yet."); } -@@ -1789,7 +2089,9 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -1790,7 +2090,9 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM * * @param position the screen position * @param components the components to send @@ -2520,7 +2521,7 @@ index f2aeb6dba58ae2e0936ae2fad1cfd8d6198befe7..1fa1ad73ba424c8ae7a0646bc076e13a public void sendMessage(@NotNull net.md_5.bungee.api.ChatMessageType position, @NotNull net.md_5.bungee.api.chat.BaseComponent... components) { throw new UnsupportedOperationException("Not supported yet."); } -@@ -1800,7 +2102,9 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -1801,7 +2103,9 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM * @param position the screen position * @param sender the sender of the message * @param component the components to send @@ -2530,7 +2531,7 @@ index f2aeb6dba58ae2e0936ae2fad1cfd8d6198befe7..1fa1ad73ba424c8ae7a0646bc076e13a public void sendMessage(@NotNull net.md_5.bungee.api.ChatMessageType position, @Nullable java.util.UUID sender, @NotNull net.md_5.bungee.api.chat.BaseComponent component) { throw new UnsupportedOperationException("Not supported yet."); } -@@ -1811,7 +2115,9 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -1812,7 +2116,9 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM * @param position the screen position * @param sender the sender of the message * @param components the components to send @@ -2821,10 +2822,10 @@ index 3c2ea8fec3a748cab7f5ad9100d12bd8213ec6c9..a803bfea5400b3578bb4cf3261874e87 * 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 629c1bf79ca3577c51d17ef8c9d36f84b1a2c360..2186507089384cb9805057c7cc1795fba7de1df3 100644 +index 3eb3a2cb67d9aa54180ab310524770189ad37c99..b821fa535b23fe5af5884e536b1708460076ee40 100644 --- a/src/main/java/org/bukkit/event/inventory/InventoryType.java +++ b/src/main/java/org/bukkit/event/inventory/InventoryType.java -@@ -155,6 +155,18 @@ public enum InventoryType { +@@ -156,6 +156,18 @@ public enum InventoryType { private final String title; private final boolean isCreatable; @@ -2843,7 +2844,7 @@ index 629c1bf79ca3577c51d17ef8c9d36f84b1a2c360..2186507089384cb9805057c7cc1795fb private InventoryType(int defaultSize, /*@NotNull*/ String defaultTitle) { this(defaultSize, defaultTitle, true); } -@@ -163,6 +175,7 @@ public enum InventoryType { +@@ -164,6 +176,7 @@ public enum InventoryType { size = defaultSize; title = defaultTitle; this.isCreatable = isCreatable; @@ -2851,7 +2852,7 @@ index 629c1bf79ca3577c51d17ef8c9d36f84b1a2c360..2186507089384cb9805057c7cc1795fb } public int getDefaultSize() { -@@ -170,6 +183,7 @@ public enum InventoryType { +@@ -171,6 +184,7 @@ public enum InventoryType { } @NotNull diff --git a/patches/api/0010-Timings-v2.patch b/patches/api/0010-Timings-v2.patch index 4920f2d9f..9ab2d9170 100644 --- a/patches/api/0010-Timings-v2.patch +++ b/patches/api/0010-Timings-v2.patch @@ -3455,10 +3455,10 @@ index 516d7fc7812aac343782861d0d567f54aa578c2a..00000000000000000000000000000000 - // Spigot end -} diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index 1fa1ad73ba424c8ae7a0646bc076e13a3a7f3e6f..96ad56d682d0872f057b52ec87a620408845a473 100644 +index 743559d4cc248331578e0c2d2a026e7a270cb713..74608db3d7631cd1b434a2543fc278fbc097d090 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java -@@ -2120,7 +2120,14 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -2121,7 +2121,14 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM @Deprecated // Paper public void sendMessage(@NotNull net.md_5.bungee.api.ChatMessageType position, @Nullable java.util.UUID sender, @NotNull net.md_5.bungee.api.chat.BaseComponent... components) { throw new UnsupportedOperationException("Not supported yet."); @@ -3474,7 +3474,7 @@ index 1fa1ad73ba424c8ae7a0646bc076e13a3a7f3e6f..96ad56d682d0872f057b52ec87a62040 @NotNull diff --git a/src/main/java/org/bukkit/plugin/SimplePluginManager.java b/src/main/java/org/bukkit/plugin/SimplePluginManager.java -index f64a90241ce7f73e111e6b5ac6ff87cd93583c0e..f13dcbe448111b24b36105d25527ba87ccc9334e 100644 +index 77f9ebbe675cf1b6a17e98d98e7666711998eb4e..63389474a2b3f0e283b42e7004aa6a94904a3d17 100644 --- a/src/main/java/org/bukkit/plugin/SimplePluginManager.java +++ b/src/main/java/org/bukkit/plugin/SimplePluginManager.java @@ -368,7 +368,6 @@ public final class SimplePluginManager implements PluginManager { diff --git a/patches/api/0012-Player-affects-spawning-API.patch b/patches/api/0012-Player-affects-spawning-API.patch index d28fe5c96..c9b35cad8 100644 --- a/patches/api/0012-Player-affects-spawning-API.patch +++ b/patches/api/0012-Player-affects-spawning-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Player affects spawning API diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index 96ad56d682d0872f057b52ec87a620408845a473..acac8f4e4656e4485213936092fd6982a5c2e9e0 100644 +index 74608db3d7631cd1b434a2543fc278fbc097d090..475d0c44e91dd4afbebaa1089fa3d26b0efaddb9 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java -@@ -1959,6 +1959,22 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -1960,6 +1960,22 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM @Deprecated // Paper public String getLocale(); diff --git a/patches/api/0015-Entity-Origin-API.patch b/patches/api/0015-Entity-Origin-API.patch index a832f7333..a1242ccf3 100644 --- a/patches/api/0015-Entity-Origin-API.patch +++ b/patches/api/0015-Entity-Origin-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Entity Origin API diff --git a/src/main/java/org/bukkit/entity/Entity.java b/src/main/java/org/bukkit/entity/Entity.java -index 0a539af95e1bd331cec241403a15e4e6dbf6d996..1b0b365905d4e7f77d3f792797816eeb35d31c69 100644 +index 598abaa82c634178043a29f6caa6ac5221659d06..70a32f89c16439c575d8928332cfed64d1d6ab7e 100644 --- a/src/main/java/org/bukkit/entity/Entity.java +++ b/src/main/java/org/bukkit/entity/Entity.java -@@ -724,5 +724,15 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent +@@ -725,5 +725,15 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent default net.kyori.adventure.text.event.HoverEvent asHoverEvent(final @NotNull java.util.function.UnaryOperator op) { return net.kyori.adventure.text.event.HoverEvent.showEntity(op.apply(net.kyori.adventure.text.event.HoverEvent.ShowEntity.of(this.getType().getKey(), this.getUniqueId(), this.customName()))); } diff --git a/patches/api/0017-Add-view-distance-API.patch b/patches/api/0017-Add-view-distance-API.patch index 402ed777c..bf865e91b 100644 --- a/patches/api/0017-Add-view-distance-API.patch +++ b/patches/api/0017-Add-view-distance-API.patch @@ -75,10 +75,10 @@ index 2e26ed8492669de22cf9b652edc1e83d8eaa6e2a..1675aceb9f4ce21782ef85fab9881736 public class Spigot { diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index acac8f4e4656e4485213936092fd6982a5c2e9e0..41b44ca3ccea7885e24d134b3748eb93fa95664b 100644 +index 475d0c44e91dd4afbebaa1089fa3d26b0efaddb9..f9875ea45251f51ff4ffef9f1a0d75ba652e4d1f 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java -@@ -1973,6 +1973,78 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -1974,6 +1974,78 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM * @param affects Whether the player can affect mob spawning */ public void setAffectsSpawning(boolean affects); diff --git a/patches/api/0021-Graduate-bungeecord-chat-API-from-spigot-subclasses.patch b/patches/api/0021-Graduate-bungeecord-chat-API-from-spigot-subclasses.patch index 26b0e5a5b..08bbbb0cc 100644 --- a/patches/api/0021-Graduate-bungeecord-chat-API-from-spigot-subclasses.patch +++ b/patches/api/0021-Graduate-bungeecord-chat-API-from-spigot-subclasses.patch @@ -76,10 +76,10 @@ index 866559ab7cd3f351266fb41dce26a210a7702ff8..74e5f26c32e6e0c84c604b9704bfe672 * Gets the name of the update folder. The update folder is used to safely * update plugins at the right moment on a plugin load. diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index 41b44ca3ccea7885e24d134b3748eb93fa95664b..963c7a56538ecf4a3505339728c45c6382b94d22 100644 +index f9875ea45251f51ff4ffef9f1a0d75ba652e4d1f..97d80bd49a3e76c265e45795d13d813125c521f9 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java -@@ -846,6 +846,42 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -847,6 +847,42 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM */ public void sendMap(@NotNull MapView map); diff --git a/patches/api/0025-Player-Tab-List-and-Title-APIs.patch b/patches/api/0025-Player-Tab-List-and-Title-APIs.patch index 955a043d6..ecf0b157f 100644 --- a/patches/api/0025-Player-Tab-List-and-Title-APIs.patch +++ b/patches/api/0025-Player-Tab-List-and-Title-APIs.patch @@ -432,10 +432,10 @@ index 0000000000000000000000000000000000000000..9e90c3df567a65b48a0b9341f784eb90 + } +} diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index 963c7a56538ecf4a3505339728c45c6382b94d22..f6f635ef60d56da619f9fbe3b568f9378fff4a01 100644 +index 97d80bd49a3e76c265e45795d13d813125c521f9..1dbc823ecf98a952d4c0addc4ada8fa31e1fa86b 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java -@@ -880,6 +880,131 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -881,6 +881,131 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM public default void sendMessage(net.md_5.bungee.api.ChatMessageType position, net.md_5.bungee.api.chat.BaseComponent... components) { spigot().sendMessage(position, components); } diff --git a/patches/api/0027-Complete-resource-pack-API.patch b/patches/api/0027-Complete-resource-pack-API.patch index 4219ab15b..6599d2a15 100644 --- a/patches/api/0027-Complete-resource-pack-API.patch +++ b/patches/api/0027-Complete-resource-pack-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Complete resource pack API diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index f6f635ef60d56da619f9fbe3b568f9378fff4a01..a22001436e7f5f1b80a900b667a536db15ac6305 100644 +index 1dbc823ecf98a952d4c0addc4ada8fa31e1fa86b..e2a80794ae9bec17a9e00575fe71f13a9e4e1121 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java -@@ -1437,7 +1437,9 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -1438,7 +1438,9 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM * @throws IllegalArgumentException Thrown if the URL is null. * @throws IllegalArgumentException Thrown if the URL is too long. The * length restriction is an implementation specific arbitrary value. @@ -18,7 +18,7 @@ index f6f635ef60d56da619f9fbe3b568f9378fff4a01..a22001436e7f5f1b80a900b667a536db public void setResourcePack(@NotNull String url); /** -@@ -2253,6 +2255,124 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -2254,6 +2256,124 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM default net.kyori.adventure.text.event.HoverEvent asHoverEvent(final @NotNull java.util.function.UnaryOperator op) { return net.kyori.adventure.text.event.HoverEvent.showEntity(op.apply(net.kyori.adventure.text.event.HoverEvent.ShowEntity.of(this.getType().getKey(), this.getUniqueId(), this.displayName()))); } diff --git a/patches/api/0046-Add-String-based-Action-Bar-API.patch b/patches/api/0046-Add-String-based-Action-Bar-API.patch index 8ed51fb71..bf97c4136 100644 --- a/patches/api/0046-Add-String-based-Action-Bar-API.patch +++ b/patches/api/0046-Add-String-based-Action-Bar-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add String based Action Bar API diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index a22001436e7f5f1b80a900b667a536db15ac6305..492a00552c7de43141d18e4b1a3da0915bac6a89 100644 +index e2a80794ae9bec17a9e00575fe71f13a9e4e1121..11e45ffb88cab06ac988915f771e87100047eadf 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java -@@ -847,6 +847,39 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -848,6 +848,39 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM public void sendMap(@NotNull MapView map); // Paper start @@ -48,7 +48,7 @@ index a22001436e7f5f1b80a900b667a536db15ac6305..492a00552c7de43141d18e4b1a3da091 /** * Sends the component to the player * -@@ -874,9 +907,11 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -875,9 +908,11 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM /** * Sends an array of components as a single message to the specified screen position of this player * diff --git a/patches/api/0055-Fix-upstream-javadocs.patch b/patches/api/0055-Fix-upstream-javadocs.patch index 82a193d72..0d5a11f8a 100644 --- a/patches/api/0055-Fix-upstream-javadocs.patch +++ b/patches/api/0055-Fix-upstream-javadocs.patch @@ -414,10 +414,10 @@ index ae9eaaa8e38e1d9dfc459926c7fc51ddb89de84a..b2ec535bb1b0ce0c114ddd7638b90218 @Override public int getConversionTime(); diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index 492a00552c7de43141d18e4b1a3da0915bac6a89..a54ae581e45d35535881c0f20b25c8011a7745c2 100644 +index 11e45ffb88cab06ac988915f771e87100047eadf..044f6c5c1b64ba97e25d075f4df2aa943dfd3557 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java -@@ -310,15 +310,15 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -311,15 +311,15 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM /** * Saves the players current location, health, inventory, motion, and @@ -437,7 +437,7 @@ index 492a00552c7de43141d18e4b1a3da0915bac6a89..a54ae581e45d35535881c0f20b25c801 *

* Note: This will overwrite the players current inventory, health, * motion, etc, with the state from the saved dat file. -@@ -553,7 +553,7 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -554,7 +554,7 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM /** * Plays an effect to just this player. * @@ -446,7 +446,7 @@ index 492a00552c7de43141d18e4b1a3da0915bac6a89..a54ae581e45d35535881c0f20b25c801 * @param loc the location to play the effect at * @param effect the {@link Effect} * @param data a data bit needed for some effects -@@ -864,7 +864,7 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -865,7 +865,7 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM * * Use supplied alternative character to the section symbol to represent legacy color codes. * @@ -455,7 +455,7 @@ index 492a00552c7de43141d18e4b1a3da0915bac6a89..a54ae581e45d35535881c0f20b25c801 * @param message The message to send * @deprecated use {@link #sendActionBar(net.kyori.adventure.text.Component)} */ -@@ -1307,7 +1307,7 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -1308,7 +1308,7 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM /** * Allows this player to see a player that was previously hidden. If @@ -464,7 +464,7 @@ index 492a00552c7de43141d18e4b1a3da0915bac6a89..a54ae581e45d35535881c0f20b25c801 * remain hidden until the other plugin calls this method too. * * @param plugin Plugin that wants to show the player -@@ -1336,7 +1336,7 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -1337,7 +1337,7 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM /** * Allows this player to see an entity that was previously hidden. If @@ -962,18 +962,18 @@ index d5b50a4a954fed35d37f03f1a277cc173ca106df..c69904f3ee7f3a41d6cebcd401abf838 /** * Sets the entities armor to the provided array of ItemStacks diff --git a/src/main/java/org/bukkit/inventory/ItemFlag.java b/src/main/java/org/bukkit/inventory/ItemFlag.java -index 42fcc31147934fd4ed6484b0729e938e7ae2f8e2..4e637420b9a39b822be19367a16da93f236549b3 100644 +index 0a1c39a2a007342f02459b3f5515dbec012b2a61..69a66073bcaa10967b8736cbf35182b912c17d11 100644 --- a/src/main/java/org/bukkit/inventory/ItemFlag.java +++ b/src/main/java/org/bukkit/inventory/ItemFlag.java -@@ -35,7 +35,7 @@ public enum ItemFlag { +@@ -38,7 +38,7 @@ public enum ItemFlag { */ HIDE_DYE, /** - * Setting to show/hide armor trim from leather armor. + * Setting to show/hide armor trim from armor. */ - HIDE_ARMOR_TRIM; - } + @MinecraftExperimental + @ApiStatus.Experimental diff --git a/src/main/java/org/bukkit/inventory/PlayerInventory.java b/src/main/java/org/bukkit/inventory/PlayerInventory.java index 62fbd7f6d8195bebcab7f704a0a485a1bbeca26c..5461f7fa75f5a065bb333b4a113640b5fe1e3825 100644 --- a/src/main/java/org/bukkit/inventory/PlayerInventory.java diff --git a/patches/api/0062-Entity-fromMobSpawner.patch b/patches/api/0062-Entity-fromMobSpawner.patch index 5589904f6..d9b896f6c 100644 --- a/patches/api/0062-Entity-fromMobSpawner.patch +++ b/patches/api/0062-Entity-fromMobSpawner.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Entity#fromMobSpawner() diff --git a/src/main/java/org/bukkit/entity/Entity.java b/src/main/java/org/bukkit/entity/Entity.java -index 1b0b365905d4e7f77d3f792797816eeb35d31c69..c10e19e06f0c4e33b2c5a4a1446b151f818e92db 100644 +index 70a32f89c16439c575d8928332cfed64d1d6ab7e..b1dc148301012ba708333d620c8bdf0062140c8b 100644 --- a/src/main/java/org/bukkit/entity/Entity.java +++ b/src/main/java/org/bukkit/entity/Entity.java -@@ -734,5 +734,12 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent +@@ -735,5 +735,12 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent */ @Nullable Location getOrigin(); diff --git a/patches/api/0076-Expose-client-protocol-version-and-virtual-host.patch b/patches/api/0076-Expose-client-protocol-version-and-virtual-host.patch index 4bd060d2b..509c5e749 100644 --- a/patches/api/0076-Expose-client-protocol-version-and-virtual-host.patch +++ b/patches/api/0076-Expose-client-protocol-version-and-virtual-host.patch @@ -57,10 +57,10 @@ index 0000000000000000000000000000000000000000..7b2af1bd72dfbcf4e962a982940fc49b + +} diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index 1017db005f8c7a095911f5dd0dbe37d9fc239c95..2f2cce2a8b4b26fbe85da10f55f7313112b05435 100644 +index 044f6c5c1b64ba97e25d075f4df2aa943dfd3557..71b8600f05615a422c8b10505be8f09e30b32ac5 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java -@@ -39,7 +39,7 @@ import org.jetbrains.annotations.Nullable; +@@ -40,7 +40,7 @@ import org.jetbrains.annotations.Nullable; /** * Represents a player, connected or not */ diff --git a/patches/api/0080-Ability-to-apply-mending-to-XP-API.patch b/patches/api/0080-Ability-to-apply-mending-to-XP-API.patch index d1369bc81..4bd744853 100644 --- a/patches/api/0080-Ability-to-apply-mending-to-XP-API.patch +++ b/patches/api/0080-Ability-to-apply-mending-to-XP-API.patch @@ -10,10 +10,10 @@ of giving the player experience points. Both an API To standalone mend, and apply mending logic to .giveExp has been added. diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index b55df11a0beb8e3b0e6255a7c0f1f73486cf83d7..43d7947e470096980b3384c42f1b1933f224ecfa 100644 +index 71b8600f05615a422c8b10505be8f09e30b32ac5..c111ab6d5a39ad9430d5bc6cb5c68e9c236504c9 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java -@@ -1171,12 +1171,33 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -1172,12 +1172,33 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM */ public void resetPlayerWeather(); diff --git a/patches/api/0083-Add-setPlayerProfile-API-for-Skulls.patch b/patches/api/0083-Add-setPlayerProfile-API-for-Skulls.patch index 7f444fd34..2e21f259d 100644 --- a/patches/api/0083-Add-setPlayerProfile-API-for-Skulls.patch +++ b/patches/api/0083-Add-setPlayerProfile-API-for-Skulls.patch @@ -7,10 +7,10 @@ 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/block/Skull.java b/src/main/java/org/bukkit/block/Skull.java -index 8d4093a413ca14a1c4c24a2a1b74c1d574943ffa..c7502a3913cf14e66559c21489d6f2205f3eb06a 100644 +index fab2ca9f6c7738795cfedbb6d0d2206f13e9da8a..33ae32155d12ecd58a2a6434dba229043d4e2132 100644 --- a/src/main/java/org/bukkit/block/Skull.java +++ b/src/main/java/org/bukkit/block/Skull.java -@@ -63,6 +63,20 @@ public interface Skull extends TileState { +@@ -65,6 +65,20 @@ public interface Skull extends TileState { */ public void setOwningPlayer(@NotNull OfflinePlayer player); @@ -31,7 +31,7 @@ index 8d4093a413ca14a1c4c24a2a1b74c1d574943ffa..c7502a3913cf14e66559c21489d6f220 /** * Gets the profile of the player who owns the skull. This player profile * may appear as the texture depending on skull type. -@@ -70,6 +84,7 @@ public interface Skull extends TileState { +@@ -72,6 +86,7 @@ public interface Skull extends TileState { * @return the profile of the owning player */ @Nullable @@ -39,7 +39,7 @@ index 8d4093a413ca14a1c4c24a2a1b74c1d574943ffa..c7502a3913cf14e66559c21489d6f220 PlayerProfile getOwnerProfile(); /** -@@ -84,6 +99,7 @@ public interface Skull extends TileState { +@@ -86,6 +101,7 @@ public interface Skull extends TileState { * @throws IllegalArgumentException if the profile does not contain the * necessary information */ @@ -48,10 +48,10 @@ index 8d4093a413ca14a1c4c24a2a1b74c1d574943ffa..c7502a3913cf14e66559c21489d6f220 /** diff --git a/src/main/java/org/bukkit/inventory/meta/SkullMeta.java b/src/main/java/org/bukkit/inventory/meta/SkullMeta.java -index 5a18a66a0b7877ec0c1859f78cce659db4b8541a..862640b4611458dfbcd3be797eacd120fc8d1f9f 100644 +index 461cdecc3e8f45b63f17963031b16943309909e2..1808e1315c72f983817426420eb22434c6a65024 100644 --- a/src/main/java/org/bukkit/inventory/meta/SkullMeta.java +++ b/src/main/java/org/bukkit/inventory/meta/SkullMeta.java -@@ -38,6 +38,20 @@ public interface SkullMeta extends ItemMeta { +@@ -40,6 +40,20 @@ public interface SkullMeta extends ItemMeta { @Deprecated boolean setOwner(@Nullable String owner); @@ -72,7 +72,7 @@ index 5a18a66a0b7877ec0c1859f78cce659db4b8541a..862640b4611458dfbcd3be797eacd120 /** * Gets the owner of the skull. * -@@ -64,6 +78,7 @@ public interface SkullMeta extends ItemMeta { +@@ -66,6 +80,7 @@ public interface SkullMeta extends ItemMeta { * @return the profile of the owning player */ @Nullable @@ -80,7 +80,7 @@ index 5a18a66a0b7877ec0c1859f78cce659db4b8541a..862640b4611458dfbcd3be797eacd120 PlayerProfile getOwnerProfile(); /** -@@ -78,6 +93,7 @@ public interface SkullMeta extends ItemMeta { +@@ -80,6 +95,7 @@ public interface SkullMeta extends ItemMeta { * @throws IllegalArgumentException if the profile does not contain the * necessary information */ diff --git a/patches/api/0091-Player.setPlayerProfile-API.patch b/patches/api/0091-Player.setPlayerProfile-API.patch index 57883869d..bbc770f80 100644 --- a/patches/api/0091-Player.setPlayerProfile-API.patch +++ b/patches/api/0091-Player.setPlayerProfile-API.patch @@ -93,10 +93,10 @@ index d769ad908c3454fa9088a42f32250bbdf8f9fa7e..2eaf31f1053787b39184dfa8ac6df87d /** diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index 43d7947e470096980b3384c42f1b1933f224ecfa..de29e26fe8981e09534ebcedc683625d881b7e54 100644 +index c111ab6d5a39ad9430d5bc6cb5c68e9c236504c9..6240b4059cd0847fdb0f1a630c6d7aa6cb43bfbf 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java -@@ -2429,6 +2429,20 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -2430,6 +2430,20 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM * was {@link org.bukkit.event.player.PlayerResourcePackStatusEvent.Status#SUCCESSFULLY_LOADED} */ boolean hasResourcePack(); diff --git a/patches/api/0094-Add-openSign-method-to-HumanEntity.patch b/patches/api/0094-Add-openSign-method-to-HumanEntity.patch index cb3f505eb..b446ffd80 100644 --- a/patches/api/0094-Add-openSign-method-to-HumanEntity.patch +++ b/patches/api/0094-Add-openSign-method-to-HumanEntity.patch @@ -24,10 +24,10 @@ index abdca9fe5acc90f167219eb769ece66c35682bb1..9715a9d36187e2eecfeab1a05087d27c /** * Make the entity drop the item in their hand. diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index de29e26fe8981e09534ebcedc683625d881b7e54..ac8551641309413aa2c871e94cbcb8438c0e9206 100644 +index 6240b4059cd0847fdb0f1a630c6d7aa6cb43bfbf..fdc13706ac54ccba2eae2cc6240dbb67dcea3328 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java -@@ -2284,7 +2284,7 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -2285,7 +2285,7 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM /** * Open a Sign for editing by the Player. * diff --git a/patches/api/0095-Add-Ban-Methods-to-Player-Objects.patch b/patches/api/0095-Add-Ban-Methods-to-Player-Objects.patch index cccc0a41c..51145b368 100644 --- a/patches/api/0095-Add-Ban-Methods-to-Player-Objects.patch +++ b/patches/api/0095-Add-Ban-Methods-to-Player-Objects.patch @@ -74,10 +74,10 @@ index 3ba8ff1a41ac9fd96fd4dec5cbe0f714fef93022..b39ed4eb2e7d9e40805e201d77973877 /** * Checks if this player is whitelisted or not diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index ac8551641309413aa2c871e94cbcb8438c0e9206..2b0565eb6ff222bd51ad8d98622ac7d9e5314aac 100644 +index fdc13706ac54ccba2eae2cc6240dbb67dcea3328..50e95f585ce516f9f9bc511d864f181fa3f7f5ac 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java -@@ -847,6 +847,162 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -848,6 +848,162 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM public void sendMap(@NotNull MapView map); // Paper start diff --git a/patches/api/0100-Expand-World.spawnParticle-API-and-add-Builder.patch b/patches/api/0100-Expand-World.spawnParticle-API-and-add-Builder.patch index 33d288256..af9c478f4 100644 --- a/patches/api/0100-Expand-World.spawnParticle-API-and-add-Builder.patch +++ b/patches/api/0100-Expand-World.spawnParticle-API-and-add-Builder.patch @@ -500,10 +500,10 @@ index 0000000000000000000000000000000000000000..f45b8cfd1611345e8d81ecb8297a586f + } +} diff --git a/src/main/java/org/bukkit/Particle.java b/src/main/java/org/bukkit/Particle.java -index 0ca7955003eea0556a04a54056152ec27d93a9ee..93244e6d940891f1297d4a26a80ba155af306071 100644 +index 7336edb91e7095cce381318220496b51962afbe9..0125890a258ee58a43990285b341f8a62a5c281b 100644 --- a/src/main/java/org/bukkit/Particle.java +++ b/src/main/java/org/bukkit/Particle.java -@@ -163,6 +163,17 @@ public enum Particle { +@@ -170,6 +170,17 @@ public enum Particle { return dataType; } diff --git a/patches/api/0121-Entity-getChunk-API.patch b/patches/api/0121-Entity-getChunk-API.patch index 31b028b90..6b018f801 100644 --- a/patches/api/0121-Entity-getChunk-API.patch +++ b/patches/api/0121-Entity-getChunk-API.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Entity#getChunk API Get the chunk the entity is currently registered to diff --git a/src/main/java/org/bukkit/entity/Entity.java b/src/main/java/org/bukkit/entity/Entity.java -index c10e19e06f0c4e33b2c5a4a1446b151f818e92db..13e0316b2446c1d10b2ff3582b948265de21bfef 100644 +index b1dc148301012ba708333d620c8bdf0062140c8b..5f703c8847a94c8fd356abe2a0cd45e6af6efcec 100644 --- a/src/main/java/org/bukkit/entity/Entity.java +++ b/src/main/java/org/bukkit/entity/Entity.java @@ -3,6 +3,7 @@ package org.bukkit.entity; @@ -17,7 +17,7 @@ index c10e19e06f0c4e33b2c5a4a1446b151f818e92db..13e0316b2446c1d10b2ff3582b948265 import org.bukkit.EntityEffect; import org.bukkit.Location; import org.bukkit.Nameable; -@@ -741,5 +742,16 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent +@@ -742,5 +743,16 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent * @return True if entity spawned from a mob spawner */ boolean fromMobSpawner(); diff --git a/patches/api/0142-Async-Chunks-API.patch b/patches/api/0142-Async-Chunks-API.patch index c18753b9c..497d51171 100644 --- a/patches/api/0142-Async-Chunks-API.patch +++ b/patches/api/0142-Async-Chunks-API.patch @@ -495,10 +495,10 @@ index fbfe1e0923eddefbb378c3e150f0bb08802fa812..4031b2c3b7d6870f649e76f47a72e31a /** diff --git a/src/main/java/org/bukkit/entity/Entity.java b/src/main/java/org/bukkit/entity/Entity.java -index 17fd1322fcd76ac899f3db1d7fdd7fbdabe2209e..cd489dddec0b1ab50947a523c467ce3825961549 100644 +index 5f703c8847a94c8fd356abe2a0cd45e6af6efcec..9eca441d6702752938813a1c97724edf13134171 100644 --- a/src/main/java/org/bukkit/entity/Entity.java +++ b/src/main/java/org/bukkit/entity/Entity.java -@@ -164,6 +164,33 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent +@@ -165,6 +165,33 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent */ public boolean teleport(@NotNull Entity destination, @NotNull TeleportCause cause); diff --git a/patches/api/0144-Expose-attack-cooldown-methods-for-Player.patch b/patches/api/0144-Expose-attack-cooldown-methods-for-Player.patch index 0f070b2fe..0a1754ce3 100644 --- a/patches/api/0144-Expose-attack-cooldown-methods-for-Player.patch +++ b/patches/api/0144-Expose-attack-cooldown-methods-for-Player.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Expose attack cooldown methods for Player diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index 2b0565eb6ff222bd51ad8d98622ac7d9e5314aac..fe0cfc15c6b8525ebf1419b23aaecb47313cb796 100644 +index 50e95f585ce516f9f9bc511d864f181fa3f7f5ac..e0d2f9e6d785b7785fc59db8814c5278962a3f06 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java -@@ -2599,6 +2599,26 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -2600,6 +2600,26 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM * @param profile The new profile to use */ void setPlayerProfile(@NotNull com.destroystokyo.paper.profile.PlayerProfile profile); diff --git a/patches/api/0152-Material-API-additions.patch b/patches/api/0152-Material-API-additions.patch index 78dcc836e..7a452665d 100644 --- a/patches/api/0152-Material-API-additions.patch +++ b/patches/api/0152-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 bef8b78665c7304c88c068a7367c0d1bed3f2045..b96bae74f0c9619609590737d9b856292cb56691 100644 +index 0d04591db6e2e0b08b06904c16ef41b59decd952..fb23fce97a1930b968b76fa9ff4fbbb452768096 100644 --- a/src/main/java/org/bukkit/Material.java +++ b/src/main/java/org/bukkit/Material.java -@@ -115,6 +115,7 @@ import org.jetbrains.annotations.Nullable; +@@ -116,6 +116,7 @@ import org.jetbrains.annotations.Nullable; /** * An enum of all material IDs accepted by the official server and client */ @@ -16,7 +16,7 @@ index bef8b78665c7304c88c068a7367c0d1bed3f2045..b96bae74f0c9619609590737d9b85629 public enum Material implements Keyed, Translatable { // AIR(9648, 0), -@@ -4389,6 +4390,22 @@ public enum Material implements Keyed, Translatable { +@@ -4548,6 +4549,22 @@ public enum Material implements Keyed, Translatable { } } diff --git a/patches/api/0153-Add-Material-Tags.patch b/patches/api/0153-Add-Material-Tags.patch index 4d29499ad..d0b8b83dc 100644 --- a/patches/api/0153-Add-Material-Tags.patch +++ b/patches/api/0153-Add-Material-Tags.patch @@ -1119,10 +1119,10 @@ index 0000000000000000000000000000000000000000..d7eb49a05c3f0cacf285f8995433c5d5 + .ensureSize("WATER_BASED", 11).lock(); +} diff --git a/src/main/java/org/bukkit/Tag.java b/src/main/java/org/bukkit/Tag.java -index 3ba1efc150d050a2f3bd3b4a7b35b73b557ff607..ef96155a6625cdfd9ebe75957fd2d3fa408039c5 100644 +index 2d25228016fc9a9a1ba87f58865ec8ee65115461..28e5691e265b94eb9855f87d05f84e8ff963c566 100644 --- a/src/main/java/org/bukkit/Tag.java +++ b/src/main/java/org/bukkit/Tag.java -@@ -11,6 +11,10 @@ import org.jetbrains.annotations.NotNull; +@@ -12,6 +12,10 @@ import org.jetbrains.annotations.NotNull; * Note that whilst all tags defined within this interface must be present in * implementations, their existence is not guaranteed across future versions. * diff --git a/patches/api/0171-Entity-getEntitySpawnReason.patch b/patches/api/0171-Entity-getEntitySpawnReason.patch index f14999e52..71c620fbe 100644 --- a/patches/api/0171-Entity-getEntitySpawnReason.patch +++ b/patches/api/0171-Entity-getEntitySpawnReason.patch @@ -12,10 +12,10 @@ or DEFAULT since data was not stored. Co-authored-by: Aurora diff --git a/src/main/java/org/bukkit/entity/Entity.java b/src/main/java/org/bukkit/entity/Entity.java -index cd489dddec0b1ab50947a523c467ce3825961549..b541674b1d7061be9e8e7545a5050c7ee0ca4c66 100644 +index 9eca441d6702752938813a1c97724edf13134171..9d3c3dedb4f71b9fc35cb5da6e38c77c7c673ad6 100644 --- a/src/main/java/org/bukkit/entity/Entity.java +++ b/src/main/java/org/bukkit/entity/Entity.java -@@ -780,5 +780,11 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent +@@ -781,5 +781,11 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent // TODO remove impl here return getLocation().getChunk(); } diff --git a/patches/api/0172-Fix-Spigot-annotation-mistakes.patch b/patches/api/0172-Fix-Spigot-annotation-mistakes.patch index 61017e80f..c2b85a59f 100644 --- a/patches/api/0172-Fix-Spigot-annotation-mistakes.patch +++ b/patches/api/0172-Fix-Spigot-annotation-mistakes.patch @@ -79,10 +79,10 @@ index 20978b269a7757a561d6b872cc77898b44bbd272..2b9a117804a8ca54b47e51e23359bd6e 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 92b6563712b1622bbf2a987f7ddc4b460b3ead0e..c154e94acda00924f81368f2aad1933726596b17 100644 +index fb23fce97a1930b968b76fa9ff4fbbb452768096..20cc192e89562e1455ec3eacc15593c4eed89907 100644 --- a/src/main/java/org/bukkit/Material.java +++ b/src/main/java/org/bukkit/Material.java -@@ -4419,11 +4419,11 @@ public enum Material implements Keyed, Translatable { +@@ -4578,11 +4578,11 @@ public enum Material implements Keyed, Translatable { } /** @@ -96,7 +96,7 @@ index 92b6563712b1622bbf2a987f7ddc4b460b3ead0e..c154e94acda00924f81368f2aad19337 public boolean isLegacy() { return legacy; } -@@ -4494,8 +4494,10 @@ public enum Material implements Keyed, Translatable { +@@ -4653,8 +4653,10 @@ public enum Material implements Keyed, Translatable { * Gets the MaterialData class associated with this Material * * @return MaterialData associated with this Material @@ -145,10 +145,10 @@ index f43209cf7b752c26718c303ca8c3e1c7d9912ad3..f0094e6fb05e526736629ad3181c8d2c /** diff --git a/src/main/java/org/bukkit/Registry.java b/src/main/java/org/bukkit/Registry.java -index ea80520c19cd3dd6aa25665c748d96fd4a3f6e40..ff1fcdaccbca81602278a0b52670f7b895ba22b7 100644 +index 3e5d6fd08bcc66593d7669104705436f6dfb20fc..4a3c42f9c480c53f935d09bcc3656259c755661d 100644 --- a/src/main/java/org/bukkit/Registry.java +++ b/src/main/java/org/bukkit/Registry.java -@@ -229,8 +229,11 @@ public interface Registry extends Iterable { +@@ -248,8 +248,11 @@ public interface Registry extends Iterable { * * @param input non-null input * @return registered object or null if does not exist @@ -200,17 +200,17 @@ index 20f9384c30f46e11631a7f79c48915bf55762858..291abd48c3c8af0807bce312c18d8cf2 /** diff --git a/src/main/java/org/bukkit/UndefinedNullability.java b/src/main/java/org/bukkit/UndefinedNullability.java -index f465ea001c190e10eb99db818559d302e5512e99..567f560d145dea6fc7240699175496156c468a6d 100644 +index 4d4265c237179470e1fd017721a8dd595f114013..3babc9df26276300392d3f92ee6e317c33643b0b 100644 --- a/src/main/java/org/bukkit/UndefinedNullability.java +++ b/src/main/java/org/bukkit/UndefinedNullability.java -@@ -13,6 +13,7 @@ import java.lang.annotation.RetentionPolicy; +@@ -14,6 +14,7 @@ import org.jetbrains.annotations.ApiStatus; * suggests a bad API design. */ @Retention(RetentionPolicy.CLASS) +@java.lang.annotation.Documented // Paper + @ApiStatus.Internal @Deprecated public @interface UndefinedNullability { - diff --git a/src/main/java/org/bukkit/Vibration.java b/src/main/java/org/bukkit/Vibration.java index e455eb21abf121dc6ff10ff8a13dd06f67096a8f..bbc01e7c192ae6689c301670047ff114306c57cb 100644 --- a/src/main/java/org/bukkit/Vibration.java @@ -369,43 +369,6 @@ index 95c79c5fa0c4e30201f887da6467ce5f81c8a255..7f9c4d4b430a3f0276461346ff2621ba + @Deprecated // Paper public MaterialData getDisplayBlock(); - /** -diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index fe0cfc15c6b8525ebf1419b23aaecb47313cb796..dcb2a41cb29efe3630a071cb77f088b2f99e5ca0 100644 ---- a/src/main/java/org/bukkit/entity/Player.java -+++ b/src/main/java/org/bukkit/entity/Player.java -@@ -1506,9 +1506,8 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM - * - * @param plugin Plugin that wants to hide the entity - * @param entity Entity to hide -- * @deprecated draft API - */ -- @Deprecated -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - public void hideEntity(@NotNull Plugin plugin, @NotNull Entity entity); - - /** -@@ -1518,9 +1517,8 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM - * - * @param plugin Plugin that wants to show the entity - * @param entity Entity to show -- * @deprecated draft API - */ -- @Deprecated -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - public void showEntity(@NotNull Plugin plugin, @NotNull Entity entity); - - /** -@@ -1529,9 +1527,8 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM - * @param entity Entity to check - * @return True if the provided entity is not being hidden from this - * player -- * @deprecated draft API - */ -- @Deprecated -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - public boolean canSee(@NotNull Entity entity); - /** diff --git a/src/main/java/org/bukkit/entity/Projectile.java b/src/main/java/org/bukkit/entity/Projectile.java index c854860c13912f9a8707eb825cca23763d1323a6..a523fca4baab447181ef91df67fa69b24e010149 100644 @@ -495,21 +458,6 @@ index e1123295b9511a2c610a1baf7195638f7f3e64c4..273ae8e5da0a858d3b82d1b0f5992318 @Override public void setCancelled(boolean cancel) { this.cancel = cancel; -diff --git a/src/main/java/org/bukkit/event/player/PlayerHideEntityEvent.java b/src/main/java/org/bukkit/event/player/PlayerHideEntityEvent.java -index d8a73cd22268e90eb438f522b9019f826f343275..78869fdb9cf4c541dff7d67b51866914987abf18 100644 ---- a/src/main/java/org/bukkit/event/player/PlayerHideEntityEvent.java -+++ b/src/main/java/org/bukkit/event/player/PlayerHideEntityEvent.java -@@ -15,9 +15,8 @@ import org.jetbrains.annotations.NotNull; - * This event is called regardless of if the entity was within tracking range. - * - * @see Player#hideEntity(org.bukkit.plugin.Plugin, org.bukkit.entity.Entity) -- * @deprecated draft API - */ --@Deprecated -+@org.jetbrains.annotations.ApiStatus.Experimental // Paper - @Warning(false) - public class PlayerHideEntityEvent extends PlayerEvent { - diff --git a/src/main/java/org/bukkit/event/player/PlayerMoveEvent.java b/src/main/java/org/bukkit/event/player/PlayerMoveEvent.java index 1b2267f4e8ebded198773ec80e2bff2c861c7084..1a58734d919fae247eeb85dd785fd59990856505 100644 --- a/src/main/java/org/bukkit/event/player/PlayerMoveEvent.java @@ -523,21 +471,6 @@ index 1b2267f4e8ebded198773ec80e2bff2c861c7084..1a58734d919fae247eeb85dd785fd599 public Location getTo() { return to; } -diff --git a/src/main/java/org/bukkit/event/player/PlayerShowEntityEvent.java b/src/main/java/org/bukkit/event/player/PlayerShowEntityEvent.java -index 5408a8c123942a56ef11597ae6cdb77e14f741e3..29bb84145be18ef9162abdfc8820f2b3f7fd0db5 100644 ---- a/src/main/java/org/bukkit/event/player/PlayerShowEntityEvent.java -+++ b/src/main/java/org/bukkit/event/player/PlayerShowEntityEvent.java -@@ -16,9 +16,8 @@ import org.jetbrains.annotations.NotNull; - * range. - * - * @see Player#showEntity(org.bukkit.plugin.Plugin, org.bukkit.entity.Entity) -- * @deprecated draft API - */ --@Deprecated -+@org.jetbrains.annotations.ApiStatus.Experimental // Paper - @Warning(false) - public class PlayerShowEntityEvent extends PlayerEvent { - diff --git a/src/main/java/org/bukkit/event/vehicle/VehicleEntityCollisionEvent.java b/src/main/java/org/bukkit/event/vehicle/VehicleEntityCollisionEvent.java index 6bafc62e2235a6b783cbf96f4dabeeaf02bd5178..50c762d777ac90a05772501a28cacff8fd3f5126 100644 --- a/src/main/java/org/bukkit/event/vehicle/VehicleEntityCollisionEvent.java diff --git a/patches/api/0189-Add-Player-Client-Options-API.patch b/patches/api/0189-Add-Player-Client-Options-API.patch index 90649d923..082446289 100644 --- a/patches/api/0189-Add-Player-Client-Options-API.patch +++ b/patches/api/0189-Add-Player-Client-Options-API.patch @@ -229,10 +229,10 @@ index 0000000000000000000000000000000000000000..cf67dc7d465223710adbf2b798109f52 + } +} diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index dcb2a41cb29efe3630a071cb77f088b2f99e5ca0..b42cdfd64b22b6d66f6030fb6b59c4c781a56a43 100644 +index e0d2f9e6d785b7785fc59db8814c5278962a3f06..e258aba2abcd2bacf6fb5fd7e2a04740c054cbc4 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java -@@ -2616,6 +2616,12 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -2620,6 +2620,12 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM * Reset the cooldown counter to 0, effectively starting the cooldown period. */ void resetCooldown(); diff --git a/patches/api/0192-Add-item-slot-convenience-methods.patch b/patches/api/0192-Add-item-slot-convenience-methods.patch index abad4883e..d456638d2 100644 --- a/patches/api/0192-Add-item-slot-convenience-methods.patch +++ b/patches/api/0192-Add-item-slot-convenience-methods.patch @@ -178,10 +178,10 @@ index 4a0c43acc2714e095973eb78536041bb1a179ddc..acf2244f77133df53eb5f862c8e713c8 + // Paper end } diff --git a/src/main/java/org/bukkit/inventory/SmithingInventory.java b/src/main/java/org/bukkit/inventory/SmithingInventory.java -index 96d526b7b153e56c9a97de42ce3270b6638510e4..a41ca6bd2672db2810dd70c4925b84a4f081af05 100644 +index 8f7749d10b68b6fe3c29f2e38dd1f7b9a6b45d8c..7808d30ae194d5ec043e630c277916a66d452a69 100644 --- a/src/main/java/org/bukkit/inventory/SmithingInventory.java +++ b/src/main/java/org/bukkit/inventory/SmithingInventory.java -@@ -30,4 +30,44 @@ public interface SmithingInventory extends Inventory { +@@ -35,4 +35,44 @@ public interface SmithingInventory extends Inventory { */ @Nullable Recipe getRecipe(); diff --git a/patches/api/0204-Add-entity-liquid-API.patch b/patches/api/0204-Add-entity-liquid-API.patch index c9c084142..6b08eaece 100644 --- a/patches/api/0204-Add-entity-liquid-API.patch +++ b/patches/api/0204-Add-entity-liquid-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add entity liquid API diff --git a/src/main/java/org/bukkit/entity/Entity.java b/src/main/java/org/bukkit/entity/Entity.java -index 84e201c1695e9a97354f84156d82c47f9b722281..3eb1cc7556ef0e8f3cc3d270c22ba293ac50c6c8 100644 +index 9d3c3dedb4f71b9fc35cb5da6e38c77c7c673ad6..e2caf7d0f8c0754617a2d7dfa065fd46e74d3f52 100644 --- a/src/main/java/org/bukkit/entity/Entity.java +++ b/src/main/java/org/bukkit/entity/Entity.java -@@ -786,5 +786,40 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent +@@ -787,5 +787,40 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent */ @NotNull org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason getEntitySpawnReason(); diff --git a/patches/api/0206-Brand-support.patch b/patches/api/0206-Brand-support.patch index 37639b73b..e64c5e7d7 100644 --- a/patches/api/0206-Brand-support.patch +++ b/patches/api/0206-Brand-support.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Brand support diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index b42cdfd64b22b6d66f6030fb6b59c4c781a56a43..b7afdf6c202b7d20b718bb5ef40b0d569c7c2a78 100644 +index e258aba2abcd2bacf6fb5fd7e2a04740c054cbc4..b51107775775e308ae0aee87f0636eb33bf0f452 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java -@@ -2748,6 +2748,16 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -2752,6 +2752,16 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM // Paper end } diff --git a/patches/api/0212-Add-methods-to-get-translation-keys.patch b/patches/api/0212-Add-methods-to-get-translation-keys.patch index 7018b3ebb..2de0b4ca6 100644 --- a/patches/api/0212-Add-methods-to-get-translation-keys.patch +++ b/patches/api/0212-Add-methods-to-get-translation-keys.patch @@ -144,10 +144,10 @@ index 753bfcec441533071120d925c83789ef53afa176..c6bc84a8755b2fe5d7d8d3ec857700ec + // Paper end } diff --git a/src/main/java/org/bukkit/Material.java b/src/main/java/org/bukkit/Material.java -index c154e94acda00924f81368f2aad1933726596b17..9117bbfb5208231752cfa757c0d088bc270d43b9 100644 +index 20cc192e89562e1455ec3eacc15593c4eed89907..3da281e454f1f242c57e0174917084557f9c85df 100644 --- a/src/main/java/org/bukkit/Material.java +++ b/src/main/java/org/bukkit/Material.java -@@ -116,7 +116,7 @@ import org.jetbrains.annotations.Nullable; +@@ -117,7 +117,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 c154e94acda00924f81368f2aad1933726596b17..9117bbfb5208231752cfa757c0d088bc // AIR(9648, 0), STONE(22948), -@@ -4404,6 +4404,15 @@ public enum Material implements Keyed, Translatable { +@@ -4563,6 +4563,15 @@ public enum Material implements Keyed, Translatable { } return false; } @@ -172,7 +172,7 @@ index c154e94acda00924f81368f2aad1933726596b17..9117bbfb5208231752cfa757c0d088bc // Paper end /** -@@ -10887,9 +10896,11 @@ public enum Material implements Keyed, Translatable { +@@ -11046,9 +11055,11 @@ public enum Material implements Keyed, Translatable { * material * @see #getBlockTranslationKey() * @see #getItemTranslationKey() @@ -232,10 +232,10 @@ index 13eac9ad2c1672051635d1c35cc49239252e7a61..107e36ef02a9481954bd770ce9a55a0b + // Paper end } diff --git a/src/main/java/org/bukkit/block/Biome.java b/src/main/java/org/bukkit/block/Biome.java -index d3087d60378822cdd7cea25fd63d3f496e3cd2fb..5d8fa5b39a5d50cca48ba63af3a84b80f279b649 100644 +index a5908d0a03801757d1f6184d73c3c89981afa107..d268498c779d6b2ec07812d4d1c0b168fab63c07 100644 --- a/src/main/java/org/bukkit/block/Biome.java +++ b/src/main/java/org/bukkit/block/Biome.java -@@ -8,7 +8,7 @@ import org.jetbrains.annotations.NotNull; +@@ -10,7 +10,7 @@ import org.jetbrains.annotations.NotNull; /** * Holds all accepted Biomes in the default server */ @@ -244,7 +244,7 @@ index d3087d60378822cdd7cea25fd63d3f496e3cd2fb..5d8fa5b39a5d50cca48ba63af3a84b80 OCEAN, PLAINS, DESERT, -@@ -89,4 +89,11 @@ public enum Biome implements Keyed { +@@ -93,4 +93,11 @@ public enum Biome implements Keyed { public NamespacedKey getKey() { return key; } @@ -283,7 +283,7 @@ index 06ef9e133125d80127e1dbd6ae0eda89fa08a1d7..35ed58bce2589bb097dd0f6bf2a6ebd7 // Paper end } diff --git a/src/main/java/org/bukkit/enchantments/Enchantment.java b/src/main/java/org/bukkit/enchantments/Enchantment.java -index 5744a9f432ec75f6b6b1991ff488dffb9591c934..0264c2f9a3977b6d47994b1e1b0240b312e5bf65 100644 +index 2dc749936df6168073a5bb9f9051d55f8589ac62..1b6f42ff632b1f3f5034c825e99b72f389a890b4 100644 --- a/src/main/java/org/bukkit/enchantments/Enchantment.java +++ b/src/main/java/org/bukkit/enchantments/Enchantment.java @@ -12,7 +12,7 @@ import org.jetbrains.annotations.Nullable; @@ -311,10 +311,10 @@ index 4d5f0837bd0e02a30c943d8969fb6b13452322e0..a39f9c078f42451bd122f3e3729d10ca // Paper end } diff --git a/src/main/java/org/bukkit/entity/EntityType.java b/src/main/java/org/bukkit/entity/EntityType.java -index 8b913a9458d20c5c387b41bad21c353335b7c6b9..5f78a801d6fd10a0e0fa3ccf13bb1456eed12c13 100644 +index bed9c519a594f44191c2e13b2f13a0de906e21e5..712db16df7a3b30f844b391321b5acd6ffa5aec5 100644 --- a/src/main/java/org/bukkit/entity/EntityType.java +++ b/src/main/java/org/bukkit/entity/EntityType.java -@@ -22,7 +22,7 @@ import org.jetbrains.annotations.Contract; +@@ -24,7 +24,7 @@ import org.jetbrains.annotations.Contract; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -323,7 +323,7 @@ index 8b913a9458d20c5c387b41bad21c353335b7c6b9..5f78a801d6fd10a0e0fa3ccf13bb1456 // These strings MUST match the strings in nms.EntityTypes and are case sensitive. /** -@@ -435,7 +435,19 @@ public enum EntityType implements Keyed, Translatable { +@@ -441,7 +441,19 @@ public enum EntityType implements Keyed, Translatable { @Override @NotNull @@ -344,7 +344,7 @@ index 8b913a9458d20c5c387b41bad21c353335b7c6b9..5f78a801d6fd10a0e0fa3ccf13bb1456 + // Paper end } diff --git a/src/main/java/org/bukkit/entity/Villager.java b/src/main/java/org/bukkit/entity/Villager.java -index c799ac46dbe257d470d3b236cf55b41240f5fda8..d61855b83da0776fe910dee8cde184c720571a71 100644 +index d841d94d46462e0ceb7c6b04cc8fc36792bd9201..8c8176121cafed0ed09239b6a7b392dc846438e2 100644 --- a/src/main/java/org/bukkit/entity/Villager.java +++ b/src/main/java/org/bukkit/entity/Villager.java @@ -160,7 +160,7 @@ public interface Villager extends AbstractVillager { @@ -450,7 +450,7 @@ index 5bd252c0ae3b09fe141d131360c67bb9bfbf5422..78587d9fabe6371a23a7963917b054db + } diff --git a/src/main/java/org/bukkit/inventory/ItemStack.java b/src/main/java/org/bukkit/inventory/ItemStack.java -index 7c280d7beeb42dca52e36e77bbd41742b2572710..03a15727c85a08c0c79965be249373a11f31ce6e 100644 +index 3da071798b89e1dd1453f4339af87933cdf0105e..e4ad3a550050c4bf9cc7a2a1082bfdf668050efe 100644 --- a/src/main/java/org/bukkit/inventory/ItemStack.java +++ b/src/main/java/org/bukkit/inventory/ItemStack.java @@ -25,7 +25,7 @@ import org.jetbrains.annotations.Nullable; diff --git a/patches/api/0216-Entity-isTicking.patch b/patches/api/0216-Entity-isTicking.patch index 3e634e27d..625612008 100644 --- a/patches/api/0216-Entity-isTicking.patch +++ b/patches/api/0216-Entity-isTicking.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Entity#isTicking diff --git a/src/main/java/org/bukkit/entity/Entity.java b/src/main/java/org/bukkit/entity/Entity.java -index 3eb1cc7556ef0e8f3cc3d270c22ba293ac50c6c8..2c7c53b96b92ea9ef4e185558d744d0955a5e9e7 100644 +index e2caf7d0f8c0754617a2d7dfa065fd46e74d3f52..cb850d4310af0ba7db5ebee8fabe61e94cea6dad 100644 --- a/src/main/java/org/bukkit/entity/Entity.java +++ b/src/main/java/org/bukkit/entity/Entity.java -@@ -821,5 +821,10 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent +@@ -822,5 +822,10 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent * Check if entity is in lava */ boolean isInLava(); diff --git a/patches/api/0218-Player-elytra-boost-API.patch b/patches/api/0218-Player-elytra-boost-API.patch index f9e803da1..b673a5716 100644 --- a/patches/api/0218-Player-elytra-boost-API.patch +++ b/patches/api/0218-Player-elytra-boost-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Player elytra boost API diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index edd90e8311c47e9bbd6e962395503c445455bc23..2a3eed2795d26dc104a143ede85428f15a7f839d 100644 +index b51107775775e308ae0aee87f0636eb33bf0f452..74d7ca681a3a1ff31ad2d7b440b918bc499c1ea8 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java -@@ -2622,6 +2622,19 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -2626,6 +2626,19 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM */ @NotNull T getClientOption(@NotNull com.destroystokyo.paper.ClientOption option); diff --git a/patches/api/0235-Add-API-to-get-Material-from-Boats-and-Minecarts.patch b/patches/api/0235-Add-API-to-get-Material-from-Boats-and-Minecarts.patch index d297dd5c2..96e3e59f8 100644 --- a/patches/api/0235-Add-API-to-get-Material-from-Boats-and-Minecarts.patch +++ b/patches/api/0235-Add-API-to-get-Material-from-Boats-and-Minecarts.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add API to get Material from Boats and Minecarts diff --git a/src/main/java/org/bukkit/entity/Boat.java b/src/main/java/org/bukkit/entity/Boat.java -index 88852215d01f3fc4866449f7b826f6603b0ed9d8..f7548098bcdd033d9c530fdc584fc5538c635ca1 100644 +index 08e54aac52322aac2d033083ab4f589160386627..8715e53e6b85ebaf3d07297c838432b9e6f28c2a 100644 --- a/src/main/java/org/bukkit/entity/Boat.java +++ b/src/main/java/org/bukkit/entity/Boat.java -@@ -175,4 +175,14 @@ public interface Boat extends Vehicle { +@@ -181,4 +181,14 @@ public interface Boat extends Vehicle { ON_LAND, IN_AIR; } diff --git a/patches/api/0245-Add-sendOpLevel-API.patch b/patches/api/0245-Add-sendOpLevel-API.patch index 8e3caf479..7ed021650 100644 --- a/patches/api/0245-Add-sendOpLevel-API.patch +++ b/patches/api/0245-Add-sendOpLevel-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add sendOpLevel API diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index 2a3eed2795d26dc104a143ede85428f15a7f839d..77fb32968d9d32096d93a760a8b08ded310d31b5 100644 +index 74d7ca681a3a1ff31ad2d7b440b918bc499c1ea8..87a0b438aa5af2193eab43ac18616b9340479ae7 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java -@@ -2635,6 +2635,17 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -2639,6 +2639,17 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM */ @Nullable Firework boostElytra(@NotNull ItemStack firework); diff --git a/patches/api/0247-Add-StructuresLocateEvent.patch b/patches/api/0247-Add-StructuresLocateEvent.patch index 4000811de..28b64bb36 100644 --- a/patches/api/0247-Add-StructuresLocateEvent.patch +++ b/patches/api/0247-Add-StructuresLocateEvent.patch @@ -501,10 +501,10 @@ index 0000000000000000000000000000000000000000..b9a98f3c89cf847afd510bd1588d3a6d + } +} diff --git a/src/main/java/org/bukkit/Registry.java b/src/main/java/org/bukkit/Registry.java -index ff1fcdaccbca81602278a0b52670f7b895ba22b7..c0655a7c29e113297484a53d72cc5ea0affbe8ce 100644 +index 4a3c42f9c480c53f935d09bcc3656259c755661d..39c13a459dede4992f5a3fa7309733820cfa44c5 100644 --- a/src/main/java/org/bukkit/Registry.java +++ b/src/main/java/org/bukkit/Registry.java -@@ -211,6 +211,15 @@ public interface Registry extends Iterable { +@@ -230,6 +230,15 @@ public interface Registry extends Iterable { return GameEvent.getByKey(key); } }; diff --git a/patches/api/0250-Added-missing-vanilla-tags.patch b/patches/api/0250-Added-missing-vanilla-tags.patch index 06920bad6..80a493bbe 100644 --- a/patches/api/0250-Added-missing-vanilla-tags.patch +++ b/patches/api/0250-Added-missing-vanilla-tags.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Added missing vanilla tags diff --git a/src/main/java/org/bukkit/Tag.java b/src/main/java/org/bukkit/Tag.java -index ef96155a6625cdfd9ebe75957fd2d3fa408039c5..aeef4dea5ea7e5581988e5fedcfec29eee8d58eb 100644 +index 28e5691e265b94eb9855f87d05f84e8ff963c566..a28d38408ff2dc9b835d737aff25196a94878a77 100644 --- a/src/main/java/org/bukkit/Tag.java +++ b/src/main/java/org/bukkit/Tag.java -@@ -724,6 +724,12 @@ public interface Tag extends Keyed { +@@ -735,6 +735,12 @@ public interface Tag extends Keyed { * Vanilla item tag representing all chest boat items. */ Tag ITEMS_CHEST_BOATS = Bukkit.getTag(REGISTRY_ITEMS, NamespacedKey.minecraft("chest_boats"), Material.class); diff --git a/patches/api/0260-Expose-Tracked-Players.patch b/patches/api/0260-Expose-Tracked-Players.patch index 8582519d3..c32bb8acf 100644 --- a/patches/api/0260-Expose-Tracked-Players.patch +++ b/patches/api/0260-Expose-Tracked-Players.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Expose Tracked Players diff --git a/src/main/java/org/bukkit/entity/Entity.java b/src/main/java/org/bukkit/entity/Entity.java -index e212fcb53c9d2f8aad3e1582b64de1743f2efbfc..368a308e5420f9a9ed403358e7224d2df67a89bb 100644 +index cb850d4310af0ba7db5ebee8fabe61e94cea6dad..a6f9fb065a9e3e56b86ce5f606f86e681a90d7e6 100644 --- a/src/main/java/org/bukkit/entity/Entity.java +++ b/src/main/java/org/bukkit/entity/Entity.java -@@ -826,5 +826,12 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent +@@ -827,5 +827,12 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent * Check if entity is inside a ticking chunk */ boolean isTicking(); diff --git a/patches/api/0261-Cache-the-result-of-Material-isBlock.patch b/patches/api/0261-Cache-the-result-of-Material-isBlock.patch index 13bedd1af..094e9ab4d 100644 --- a/patches/api/0261-Cache-the-result-of-Material-isBlock.patch +++ b/patches/api/0261-Cache-the-result-of-Material-isBlock.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Cache the result of Material#isBlock diff --git a/src/main/java/org/bukkit/Material.java b/src/main/java/org/bukkit/Material.java -index 9117bbfb5208231752cfa757c0d088bc270d43b9..f0f81ecad42fc3dc894ec0c150346206d70a8720 100644 +index 3da281e454f1f242c57e0174917084557f9c85df..6ec19c038ce3c551b5207028355594f8a0c80bd2 100644 --- a/src/main/java/org/bukkit/Material.java +++ b/src/main/java/org/bukkit/Material.java -@@ -4348,6 +4348,7 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla +@@ -4507,6 +4507,7 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla public final Class data; private final boolean legacy; private final NamespacedKey key; @@ -16,7 +16,7 @@ index 9117bbfb5208231752cfa757c0d088bc270d43b9..f0f81ecad42fc3dc894ec0c150346206 private Material(final int id) { this(id, 64); -@@ -4546,6 +4547,11 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla +@@ -4705,6 +4706,11 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla * @return true if this material is a block */ public boolean isBlock() { @@ -28,7 +28,7 @@ index 9117bbfb5208231752cfa757c0d088bc270d43b9..f0f81ecad42fc3dc894ec0c150346206 switch (this) { // case ACACIA_BUTTON: -@@ -5727,6 +5733,7 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla +@@ -5886,6 +5892,7 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla static { for (Material material : values()) { BY_NAME.put(material.name(), material); diff --git a/patches/api/0267-Item-Rarity-API.patch b/patches/api/0267-Item-Rarity-API.patch index ad0914d33..62d27e3ca 100644 --- a/patches/api/0267-Item-Rarity-API.patch +++ b/patches/api/0267-Item-Rarity-API.patch @@ -39,10 +39,10 @@ index 0000000000000000000000000000000000000000..74ef8395cc040ce488c2acaa416db202 + } +} diff --git a/src/main/java/org/bukkit/Material.java b/src/main/java/org/bukkit/Material.java -index f0f81ecad42fc3dc894ec0c150346206d70a8720..467282a76dbf2edfd88baa4275991ae1163c0919 100644 +index 6ec19c038ce3c551b5207028355594f8a0c80bd2..22649f3ba10a0b6e33c584ee84b76cbbda992919 100644 --- a/src/main/java/org/bukkit/Material.java +++ b/src/main/java/org/bukkit/Material.java -@@ -4414,6 +4414,17 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla +@@ -4573,6 +4573,17 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla return Bukkit.getUnsafe().getBlockTranslationKey(this); } } diff --git a/patches/api/0291-Attributes-API-for-item-defaults.patch b/patches/api/0291-Attributes-API-for-item-defaults.patch index 8d822f5e8..dfeb066ad 100644 --- a/patches/api/0291-Attributes-API-for-item-defaults.patch +++ b/patches/api/0291-Attributes-API-for-item-defaults.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Attributes API for item defaults diff --git a/src/main/java/org/bukkit/Material.java b/src/main/java/org/bukkit/Material.java -index 467282a76dbf2edfd88baa4275991ae1163c0919..31ec16d134fd8eb5607d18e17f93225eef402d7e 100644 +index 22649f3ba10a0b6e33c584ee84b76cbbda992919..041fe4384c611b9d88121bda0cb9e5e034ff7e7b 100644 --- a/src/main/java/org/bukkit/Material.java +++ b/src/main/java/org/bukkit/Material.java -@@ -4425,6 +4425,21 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla +@@ -4584,6 +4584,21 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla public io.papermc.paper.inventory.ItemRarity getItemRarity() { return Bukkit.getUnsafe().getItemRarity(this); } diff --git a/patches/api/0294-Add-PlayerKickEvent-causes.patch b/patches/api/0294-Add-PlayerKickEvent-causes.patch index c02b838aa..672477fc5 100644 --- a/patches/api/0294-Add-PlayerKickEvent-causes.patch +++ b/patches/api/0294-Add-PlayerKickEvent-causes.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add PlayerKickEvent causes diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index 77fb32968d9d32096d93a760a8b08ded310d31b5..11c5cfa3e35395c2967dc1e0864e0b953fda30c6 100644 +index 87a0b438aa5af2193eab43ac18616b9340479ae7..bf7cc49f81c00f8fda672f22c00e9adeac87733e 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java -@@ -249,6 +249,14 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -250,6 +250,14 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM * @param message kick message */ void kick(final net.kyori.adventure.text.@Nullable Component message); diff --git a/patches/api/0318-Get-entity-default-attributes.patch b/patches/api/0318-Get-entity-default-attributes.patch index 72fbc2434..bd7a7aa4e 100644 --- a/patches/api/0318-Get-entity-default-attributes.patch +++ b/patches/api/0318-Get-entity-default-attributes.patch @@ -32,10 +32,10 @@ index 0d47278d68cdf015cb980721c234a3abee39646a..29ccd90e2733b528ef0866f93053adf6 // Paper end } diff --git a/src/main/java/org/bukkit/entity/EntityType.java b/src/main/java/org/bukkit/entity/EntityType.java -index 5f78a801d6fd10a0e0fa3ccf13bb1456eed12c13..9f935266f51f4ea5d1193031f52e5327350cc06f 100644 +index 712db16df7a3b30f844b391321b5acd6ffa5aec5..653f370f18f685e9dc49271b251eea01b428d021 100644 --- a/src/main/java/org/bukkit/entity/EntityType.java +++ b/src/main/java/org/bukkit/entity/EntityType.java -@@ -449,5 +449,24 @@ public enum EntityType implements Keyed, Translatable, net.kyori.adventure.trans +@@ -455,5 +455,24 @@ public enum EntityType implements Keyed, Translatable, net.kyori.adventure.trans Preconditions.checkArgument(this != UNKNOWN, "UNKNOWN entities do not have translation keys"); return org.bukkit.Bukkit.getUnsafe().getTranslationKey(this); } diff --git a/patches/api/0324-Add-isCollidable-methods-to-various-places.patch b/patches/api/0324-Add-isCollidable-methods-to-various-places.patch index 97a86a8b3..9cc9912d6 100644 --- a/patches/api/0324-Add-isCollidable-methods-to-various-places.patch +++ b/patches/api/0324-Add-isCollidable-methods-to-various-places.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add isCollidable methods to various places diff --git a/src/main/java/org/bukkit/Material.java b/src/main/java/org/bukkit/Material.java -index 31ec16d134fd8eb5607d18e17f93225eef402d7e..842a9dd6f92737699529721ec4e06fbc225fa3e6 100644 +index 041fe4384c611b9d88121bda0cb9e5e034ff7e7b..7ce5ac66e6d598c9ecffc52e5c75d80f644e8895 100644 --- a/src/main/java/org/bukkit/Material.java +++ b/src/main/java/org/bukkit/Material.java -@@ -4440,6 +4440,16 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla +@@ -4599,6 +4599,16 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla public Multimap getItemAttributes(@NotNull EquipmentSlot equipmentSlot) { return Bukkit.getUnsafe().getItemAttributes(this, equipmentSlot); } diff --git a/patches/api/0327-Add-Raw-Byte-Entity-Serialization.patch b/patches/api/0327-Add-Raw-Byte-Entity-Serialization.patch index 62e9d3607..7c0508f47 100644 --- a/patches/api/0327-Add-Raw-Byte-Entity-Serialization.patch +++ b/patches/api/0327-Add-Raw-Byte-Entity-Serialization.patch @@ -24,10 +24,10 @@ index 2a23e93d9e308c5eba0a2b658f11f571a0c01e26..b8ca571f8e88e7b676c5d1e1d90f6e5c * Creates and returns the next EntityId available. *

diff --git a/src/main/java/org/bukkit/entity/Entity.java b/src/main/java/org/bukkit/entity/Entity.java -index 368a308e5420f9a9ed403358e7224d2df67a89bb..822d39dde955f981323e6e6ac31d8da6b2289942 100644 +index a6f9fb065a9e3e56b86ce5f606f86e681a90d7e6..962989e74a66dadab2a8951ccc85ef0c49f8da6b 100644 --- a/src/main/java/org/bukkit/entity/Entity.java +++ b/src/main/java/org/bukkit/entity/Entity.java -@@ -833,5 +833,32 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent +@@ -834,5 +834,32 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent * @return players in tracking range */ @NotNull Set getTrackedPlayers(); diff --git a/patches/api/0329-Add-player-health-update-API.patch b/patches/api/0329-Add-player-health-update-API.patch index c3678e353..67ce57c8b 100644 --- a/patches/api/0329-Add-player-health-update-API.patch +++ b/patches/api/0329-Add-player-health-update-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add player health update API diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index 11c5cfa3e35395c2967dc1e0864e0b953fda30c6..1be287747e9aad2abf3ec5cf8e9655c252bb681d 100644 +index bf7cc49f81c00f8fda672f22c00e9adeac87733e..371275d7844928fe4d5df0251972355169b8304f 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java -@@ -2023,6 +2023,31 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -2027,6 +2027,31 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM */ public double getHealthScale(); diff --git a/patches/api/0334-Entity-powdered-snow-API.patch b/patches/api/0334-Entity-powdered-snow-API.patch index b7b3ded71..3ed79d314 100644 --- a/patches/api/0334-Entity-powdered-snow-API.patch +++ b/patches/api/0334-Entity-powdered-snow-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Entity powdered snow API diff --git a/src/main/java/org/bukkit/entity/Entity.java b/src/main/java/org/bukkit/entity/Entity.java -index 822d39dde955f981323e6e6ac31d8da6b2289942..56d6d9fae622f7cc4a397b1cc55aa9458ee925dc 100644 +index 962989e74a66dadab2a8951ccc85ef0c49f8da6b..e0dccc48c230fdee9196245e9cefd4b02b4d3782 100644 --- a/src/main/java/org/bukkit/entity/Entity.java +++ b/src/main/java/org/bukkit/entity/Entity.java -@@ -860,5 +860,12 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent +@@ -861,5 +861,12 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent * @return Whether the entity was successfully spawned. */ public boolean spawnAt(@NotNull Location location, @NotNull org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason reason); diff --git a/patches/api/0344-Multi-Block-Change-API.patch b/patches/api/0344-Multi-Block-Change-API.patch index d9a19fd8d..946ce7cdc 100644 --- a/patches/api/0344-Multi-Block-Change-API.patch +++ b/patches/api/0344-Multi-Block-Change-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Multi Block Change API diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index 1be287747e9aad2abf3ec5cf8e9655c252bb681d..4532e4955d5c42fe27dc9a3702d83f825c6074cc 100644 +index 371275d7844928fe4d5df0251972355169b8304f..2e1bd95fdce4571cb9d288e4dea495126834ee31 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java -@@ -646,6 +646,27 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -647,6 +647,27 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM */ public void sendBlockDamage(@NotNull Location loc, float progress); diff --git a/patches/api/0346-Freeze-Tick-Lock-API.patch b/patches/api/0346-Freeze-Tick-Lock-API.patch index 8466db630..fdf81b1a6 100644 --- a/patches/api/0346-Freeze-Tick-Lock-API.patch +++ b/patches/api/0346-Freeze-Tick-Lock-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Freeze Tick Lock API diff --git a/src/main/java/org/bukkit/entity/Entity.java b/src/main/java/org/bukkit/entity/Entity.java -index 56d6d9fae622f7cc4a397b1cc55aa9458ee925dc..0feb4912e5fd230b0b566f2303f0e3f4098f43ae 100644 +index e0dccc48c230fdee9196245e9cefd4b02b4d3782..ab0ceaba9ddcbe20a8b8a1fc3ed19cb3c64ecd3d 100644 --- a/src/main/java/org/bukkit/entity/Entity.java +++ b/src/main/java/org/bukkit/entity/Entity.java -@@ -279,6 +279,26 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent +@@ -280,6 +280,26 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent */ boolean isFrozen(); diff --git a/patches/api/0348-More-PotionEffectType-API.patch b/patches/api/0348-More-PotionEffectType-API.patch index fbbaaee34..52c7f2634 100644 --- a/patches/api/0348-More-PotionEffectType-API.patch +++ b/patches/api/0348-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 c0655a7c29e113297484a53d72cc5ea0affbe8ce..0a3a41ae4c488b148266129d3663be3f8830d509 100644 +index 39c13a459dede4992f5a3fa7309733820cfa44c5..fbd5a8fae7e72f3fb1098742c9680aeea1297fe7 100644 --- a/src/main/java/org/bukkit/Registry.java +++ b/src/main/java/org/bukkit/Registry.java -@@ -219,6 +219,26 @@ public interface Registry extends Iterable { +@@ -238,6 +238,26 @@ public interface Registry extends Iterable { */ @Deprecated(forRemoval = true) Registry CONFIGURED_STRUCTURE = Bukkit.getRegistry(io.papermc.paper.world.structure.ConfiguredStructure.class); diff --git a/patches/api/0351-Add-GameEvent-tags.patch b/patches/api/0351-Add-GameEvent-tags.patch index 6fc6bfda7..c4ed6aaae 100644 --- a/patches/api/0351-Add-GameEvent-tags.patch +++ b/patches/api/0351-Add-GameEvent-tags.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add GameEvent tags diff --git a/src/main/java/org/bukkit/Tag.java b/src/main/java/org/bukkit/Tag.java -index aeef4dea5ea7e5581988e5fedcfec29eee8d58eb..8f9a18ae5cdc51a2cc4ac0e45781fdce91172b6c 100644 +index a28d38408ff2dc9b835d737aff25196a94878a77..e8206aa4cb574ee629f375a85acf597ae164a1c3 100644 --- a/src/main/java/org/bukkit/Tag.java +++ b/src/main/java/org/bukkit/Tag.java -@@ -917,6 +917,24 @@ public interface Tag extends Keyed { +@@ -942,6 +942,24 @@ public interface Tag extends Keyed { * Vanilla tag representing entities which are dismounted when underwater. */ Tag ENTITY_TYPES_DISMOUNTS_UNDERWATER = Bukkit.getTag(REGISTRY_ENTITY_TYPES, NamespacedKey.minecraft("dismounts_underwater"), EntityType.class); diff --git a/patches/api/0372-More-Teleport-API.patch b/patches/api/0372-More-Teleport-API.patch index 6478c08a8..3e743575f 100644 --- a/patches/api/0372-More-Teleport-API.patch +++ b/patches/api/0372-More-Teleport-API.patch @@ -125,10 +125,10 @@ index 0000000000000000000000000000000000000000..dbacefc919fd6ed6a0f5cdaa0f695a12 + +} diff --git a/src/main/java/org/bukkit/entity/Entity.java b/src/main/java/org/bukkit/entity/Entity.java -index 0feb4912e5fd230b0b566f2303f0e3f4098f43ae..cb31e07d65075a58a906ca5163f9802f7a651a64 100644 +index ab0ceaba9ddcbe20a8b8a1fc3ed19cb3c64ecd3d..97f0bc6573c8ba09de77061b6312b91cd713221d 100644 --- a/src/main/java/org/bukkit/entity/Entity.java +++ b/src/main/java/org/bukkit/entity/Entity.java -@@ -122,10 +122,34 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent +@@ -123,10 +123,34 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent * * @param yaw the yaw * @param pitch the pitch @@ -165,10 +165,10 @@ index 0feb4912e5fd230b0b566f2303f0e3f4098f43ae..cb31e07d65075a58a906ca5163f9802f * Teleports this entity to the given location. If this entity is riding a * vehicle, it will be dismounted prior to teleportation. diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index 4532e4955d5c42fe27dc9a3702d83f825c6074cc..53c2ed8d5b2ddd787ee5b3d9035278dca6727a7a 100644 +index 2e1bd95fdce4571cb9d288e4dea495126834ee31..51e427992bc673b733971c34bb9f0df7c26ba653 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java -@@ -2836,6 +2836,49 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -2840,6 +2840,49 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM String getClientBrandName(); // Paper end diff --git a/patches/api/0374-Custom-Chat-Completion-Suggestions-API.patch b/patches/api/0374-Custom-Chat-Completion-Suggestions-API.patch index b6d3f0496..17dcf4694 100644 --- a/patches/api/0374-Custom-Chat-Completion-Suggestions-API.patch +++ b/patches/api/0374-Custom-Chat-Completion-Suggestions-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Custom Chat Completion Suggestions API diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index 53c2ed8d5b2ddd787ee5b3d9035278dca6727a7a..a92a36629c926e1fdf9b3e5d18d77a4b24b80010 100644 +index 51e427992bc673b733971c34bb9f0df7c26ba653..4d7680050849b5159f8485877228af5ef71defe5 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java -@@ -2700,6 +2700,25 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -2704,6 +2704,25 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM * @throws IllegalArgumentException If the level is negative or greater than {@code 4} (i.e. not within {@code [0, 4]}). */ void sendOpLevel(byte level); diff --git a/patches/api/0375-Collision-API.patch b/patches/api/0375-Collision-API.patch index f6e91de00..a0f945bda 100644 --- a/patches/api/0375-Collision-API.patch +++ b/patches/api/0375-Collision-API.patch @@ -25,10 +25,10 @@ index 96291baf8bd06ff5f7fb2fccdbb2a172f01ba8db..9ff8d5e104ca35bc7145cd845d96b382 // Paper end } diff --git a/src/main/java/org/bukkit/entity/Entity.java b/src/main/java/org/bukkit/entity/Entity.java -index cb31e07d65075a58a906ca5163f9802f7a651a64..e0e4300d24f6b53f35c450bbae18511a6ce0b05e 100644 +index 97f0bc6573c8ba09de77061b6312b91cd713221d..3f3ea5bb6b3ea6f55b5cd699f1c01ac159619add 100644 --- a/src/main/java/org/bukkit/entity/Entity.java +++ b/src/main/java/org/bukkit/entity/Entity.java -@@ -912,4 +912,26 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent +@@ -913,4 +913,26 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent */ boolean isInPowderedSnow(); // Paper end diff --git a/patches/api/0384-Elder-Guardian-appearance-API.patch b/patches/api/0384-Elder-Guardian-appearance-API.patch index 7f0c7c031..255c6f02c 100644 --- a/patches/api/0384-Elder-Guardian-appearance-API.patch +++ b/patches/api/0384-Elder-Guardian-appearance-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Elder Guardian appearance API diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index 3f47c8e1ca6da80b84f666a9516e79ec47cdc331..63c4c2d96a3c508a92a6404911de47b2cc83dc45 100644 +index 4d7680050849b5159f8485877228af5ef71defe5..6da82c3037e6568e5f447f30fa881b2d455e99c5 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java -@@ -2898,6 +2898,24 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -2902,6 +2902,24 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM void lookAt(@NotNull org.bukkit.entity.Entity entity, @NotNull io.papermc.paper.entity.LookAnchor playerAnchor, @NotNull io.papermc.paper.entity.LookAnchor entityAnchor); // Paper end - Teleport API diff --git a/patches/api/0392-Add-Player-Warden-Warning-API.patch b/patches/api/0392-Add-Player-Warden-Warning-API.patch index b8295a017..b23df9685 100644 --- a/patches/api/0392-Add-Player-Warden-Warning-API.patch +++ b/patches/api/0392-Add-Player-Warden-Warning-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add Player Warden Warning API diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index 63c4c2d96a3c508a92a6404911de47b2cc83dc45..9e2116c121704602c2702414db39b5d1bd559c3d 100644 +index 6da82c3037e6568e5f447f30fa881b2d455e99c5..a824262598e4a1ad6030e22a77628c43975c031d 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java -@@ -2914,6 +2914,59 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -2918,6 +2918,59 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM * @param silent whether sound should be silenced */ void showElderGuardian(boolean silent); diff --git a/patches/api/0400-Actually-mark-mc-experimental-API-as-such.patch b/patches/api/0400-Actually-mark-mc-experimental-API-as-such.patch new file mode 100644 index 000000000..09ec1116c --- /dev/null +++ b/patches/api/0400-Actually-mark-mc-experimental-API-as-such.patch @@ -0,0 +1,314 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Jake Potrebic +Date: Thu, 8 Dec 2022 17:31:21 -0800 +Subject: [PATCH] Actually mark mc experimental API as such + +upstream has inconsistent and incomplete +minecraft experimental annotations + +diff --git a/src/main/java/org/bukkit/Material.java b/src/main/java/org/bukkit/Material.java +index 7ce5ac66e6d598c9ecffc52e5c75d80f644e8895..adb2416887cc3b544ec36c552bdf7105328c24a5 100644 +--- a/src/main/java/org/bukkit/Material.java ++++ b/src/main/java/org/bukkit/Material.java +@@ -471,6 +471,8 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla + /** + * BlockData: {@link Orientable} + */ ++ @MinecraftExperimental // Paper ++ @ApiStatus.Experimental // Paper + STRIPPED_BAMBOO_BLOCK(14799, Orientable.class), + /** + * BlockData: {@link Orientable} +@@ -893,6 +895,8 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla + /** + * BlockData: {@link Fence} + */ ++ @MinecraftExperimental // Paper ++ @ApiStatus.Experimental // Paper + BAMBOO_FENCE(17207, Fence.class), + /** + * BlockData: {@link Fence} +@@ -1932,6 +1936,8 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla + /** + * BlockData: {@link Switch} + */ ++ @MinecraftExperimental // Paper ++ @ApiStatus.Experimental // Paper + BAMBOO_BUTTON(21810, Switch.class), + /** + * BlockData: {@link Switch} +@@ -1994,6 +2000,8 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla + /** + * BlockData: {@link Powerable} + */ ++ @MinecraftExperimental // Paper ++ @ApiStatus.Experimental // Paper + BAMBOO_PRESSURE_PLATE(26740, Powerable.class), + /** + * BlockData: {@link Powerable} +@@ -2044,6 +2052,8 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla + /** + * BlockData: {@link Door} + */ ++ @MinecraftExperimental // Paper ++ @ApiStatus.Experimental // Paper + BAMBOO_DOOR(19971, Door.class), + /** + * BlockData: {@link Door} +@@ -2094,6 +2104,8 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla + /** + * BlockData: {@link TrapDoor} + */ ++ @MinecraftExperimental // Paper ++ @ApiStatus.Experimental // Paper + BAMBOO_TRAPDOOR(9174, TrapDoor.class), + /** + * BlockData: {@link TrapDoor} +@@ -2140,6 +2152,8 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla + /** + * BlockData: {@link Gate} + */ ++ @MinecraftExperimental // Paper ++ @ApiStatus.Experimental // Paper + BAMBOO_FENCE_GATE(14290, Gate.class), + /** + * BlockData: {@link Gate} +@@ -2194,7 +2208,11 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla + DARK_OAK_CHEST_BOAT(8733, 1), + MANGROVE_BOAT(20792, 1), + MANGROVE_CHEST_BOAT(18572, 1), ++ @MinecraftExperimental // Paper ++ @ApiStatus.Experimental // Paper + BAMBOO_RAFT(25901, 1), ++ @MinecraftExperimental // Paper ++ @ApiStatus.Experimental // Paper + BAMBOO_CHEST_RAFT(20056, 1), + /** + * BlockData: {@link StructureBlock} +@@ -2334,6 +2352,8 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla + /** + * BlockData: {@link Sign} + */ ++ @MinecraftExperimental // Paper ++ @ApiStatus.Experimental // Paper + BAMBOO_SIGN(26139, 16, Sign.class), + /** + * BlockData: {@link Sign} +@@ -3151,6 +3171,8 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla + /** + * BlockData: {@link WallSign} + */ ++ @MinecraftExperimental // Paper ++ @ApiStatus.Experimental // Paper + BAMBOO_WALL_SIGN(18857, 16, WallSign.class), + /** + * BlockData: {@link WallHangingSign} +diff --git a/src/main/java/org/bukkit/Sound.java b/src/main/java/org/bukkit/Sound.java +index 762b0d9ba22a1012ebe5ea77b6aef909fddc0403..55b8d67af1f75207cac36c197150601850a3f28b 100644 +--- a/src/main/java/org/bukkit/Sound.java ++++ b/src/main/java/org/bukkit/Sound.java +@@ -77,13 +77,29 @@ public enum Sound implements Keyed, net.kyori.adventure.sound.Sound.Type { // Pa + BLOCK_BAMBOO_SAPLING_HIT("block.bamboo_sapling.hit"), + BLOCK_BAMBOO_SAPLING_PLACE("block.bamboo_sapling.place"), + BLOCK_BAMBOO_STEP("block.bamboo.step"), ++ @MinecraftExperimental // Paper ++ @ApiStatus.Experimental // Paper + BLOCK_BAMBOO_WOOD_BREAK("block.bamboo_wood.break"), ++ @MinecraftExperimental // Paper ++ @ApiStatus.Experimental // Paper + BLOCK_BAMBOO_WOOD_BUTTON_CLICK_OFF("block.bamboo_wood_button.click_off"), ++ @MinecraftExperimental // Paper ++ @ApiStatus.Experimental // Paper + BLOCK_BAMBOO_WOOD_BUTTON_CLICK_ON("block.bamboo_wood_button.click_on"), ++ @MinecraftExperimental // Paper ++ @ApiStatus.Experimental // Paper + BLOCK_BAMBOO_WOOD_DOOR_CLOSE("block.bamboo_wood_door.close"), ++ @MinecraftExperimental // Paper ++ @ApiStatus.Experimental // Paper + BLOCK_BAMBOO_WOOD_DOOR_OPEN("block.bamboo_wood_door.open"), ++ @MinecraftExperimental // Paper ++ @ApiStatus.Experimental // Paper + BLOCK_BAMBOO_WOOD_FALL("block.bamboo_wood.fall"), ++ @MinecraftExperimental // Paper ++ @ApiStatus.Experimental // Paper + BLOCK_BAMBOO_WOOD_FENCE_GATE_CLOSE("block.bamboo_wood_fence_gate.close"), ++ @MinecraftExperimental // Paper ++ @ApiStatus.Experimental // Paper + BLOCK_BAMBOO_WOOD_FENCE_GATE_OPEN("block.bamboo_wood_fence_gate.open"), + @MinecraftExperimental + @ApiStatus.Experimental +@@ -100,12 +116,26 @@ public enum Sound implements Keyed, net.kyori.adventure.sound.Sound.Type { // Pa + @MinecraftExperimental + @ApiStatus.Experimental + BLOCK_BAMBOO_WOOD_HANGING_SIGN_STEP("block.bamboo_wood_hanging_sign.step"), ++ @MinecraftExperimental // Paper ++ @ApiStatus.Experimental // Paper + BLOCK_BAMBOO_WOOD_HIT("block.bamboo_wood.hit"), ++ @MinecraftExperimental // Paper ++ @ApiStatus.Experimental // Paper + BLOCK_BAMBOO_WOOD_PLACE("block.bamboo_wood.place"), ++ @MinecraftExperimental // Paper ++ @ApiStatus.Experimental // Paper + BLOCK_BAMBOO_WOOD_PRESSURE_PLATE_CLICK_OFF("block.bamboo_wood_pressure_plate.click_off"), ++ @MinecraftExperimental // Paper ++ @ApiStatus.Experimental // Paper + BLOCK_BAMBOO_WOOD_PRESSURE_PLATE_CLICK_ON("block.bamboo_wood_pressure_plate.click_on"), ++ @MinecraftExperimental // Paper ++ @ApiStatus.Experimental // Paper + BLOCK_BAMBOO_WOOD_STEP("block.bamboo_wood.step"), ++ @MinecraftExperimental // Paper ++ @ApiStatus.Experimental // Paper + BLOCK_BAMBOO_WOOD_TRAPDOOR_CLOSE("block.bamboo_wood_trapdoor.close"), ++ @MinecraftExperimental // Paper ++ @ApiStatus.Experimental // Paper + BLOCK_BAMBOO_WOOD_TRAPDOOR_OPEN("block.bamboo_wood_trapdoor.open"), + BLOCK_BARREL_CLOSE("block.barrel.close"), + BLOCK_BARREL_OPEN("block.barrel.open"), +@@ -412,10 +442,20 @@ public enum Sound implements Keyed, net.kyori.adventure.sound.Sound.Type { // Pa + BLOCK_HANGING_ROOTS_HIT("block.hanging_roots.hit"), + BLOCK_HANGING_ROOTS_PLACE("block.hanging_roots.place"), + BLOCK_HANGING_ROOTS_STEP("block.hanging_roots.step"), ++ @MinecraftExperimental // Paper ++ @ApiStatus.Experimental // Paper + BLOCK_HANGING_SIGN_BREAK("block.hanging_sign.break"), ++ @MinecraftExperimental // Paper ++ @ApiStatus.Experimental // Paper + BLOCK_HANGING_SIGN_FALL("block.hanging_sign.fall"), ++ @MinecraftExperimental // Paper ++ @ApiStatus.Experimental // Paper + BLOCK_HANGING_SIGN_HIT("block.hanging_sign.hit"), ++ @MinecraftExperimental // Paper ++ @ApiStatus.Experimental // Paper + BLOCK_HANGING_SIGN_PLACE("block.hanging_sign.place"), ++ @MinecraftExperimental // Paper ++ @ApiStatus.Experimental // Paper + BLOCK_HANGING_SIGN_STEP("block.hanging_sign.step"), + BLOCK_HONEY_BLOCK_BREAK("block.honey_block.break"), + BLOCK_HONEY_BLOCK_FALL("block.honey_block.fall"), +@@ -551,11 +591,23 @@ public enum Sound implements Keyed, net.kyori.adventure.sound.Sound.Type { // Pa + BLOCK_NOTE_BLOCK_GUITAR("block.note_block.guitar"), + BLOCK_NOTE_BLOCK_HARP("block.note_block.harp"), + BLOCK_NOTE_BLOCK_HAT("block.note_block.hat"), ++ @MinecraftExperimental // Paper ++ @ApiStatus.Experimental // Paper + BLOCK_NOTE_BLOCK_IMITATE_CREEPER("block.note_block.imitate.creeper"), ++ @MinecraftExperimental // Paper ++ @ApiStatus.Experimental // Paper + BLOCK_NOTE_BLOCK_IMITATE_ENDER_DRAGON("block.note_block.imitate.ender_dragon"), ++ @MinecraftExperimental // Paper ++ @ApiStatus.Experimental // Paper + BLOCK_NOTE_BLOCK_IMITATE_PIGLIN("block.note_block.imitate.piglin"), ++ @MinecraftExperimental // Paper ++ @ApiStatus.Experimental // Paper + BLOCK_NOTE_BLOCK_IMITATE_SKELETON("block.note_block.imitate.skeleton"), ++ @MinecraftExperimental // Paper ++ @ApiStatus.Experimental // Paper + BLOCK_NOTE_BLOCK_IMITATE_WITHER_SKELETON("block.note_block.imitate.wither_skeleton"), ++ @MinecraftExperimental // Paper ++ @ApiStatus.Experimental // Paper + BLOCK_NOTE_BLOCK_IMITATE_ZOMBIE("block.note_block.imitate.zombie"), + BLOCK_NOTE_BLOCK_IRON_XYLOPHONE("block.note_block.iron_xylophone"), + BLOCK_NOTE_BLOCK_PLING("block.note_block.pling"), +@@ -830,26 +882,37 @@ public enum Sound implements Keyed, net.kyori.adventure.sound.Sound.Type { // Pa + ENTITY_BOAT_PADDLE_LAND("entity.boat.paddle_land"), + ENTITY_BOAT_PADDLE_WATER("entity.boat.paddle_water"), + @MinecraftExperimental ++ @ApiStatus.Experimental // Paper + ENTITY_CAMEL_AMBIENT("entity.camel.ambient"), + @MinecraftExperimental ++ @ApiStatus.Experimental // Paper + ENTITY_CAMEL_DASH("entity.camel.dash"), + @MinecraftExperimental ++ @ApiStatus.Experimental // Paper + ENTITY_CAMEL_DASH_READY("entity.camel.dash_ready"), + @MinecraftExperimental ++ @ApiStatus.Experimental // Paper + ENTITY_CAMEL_DEATH("entity.camel.death"), + @MinecraftExperimental ++ @ApiStatus.Experimental // Paper + ENTITY_CAMEL_EAT("entity.camel.eat"), + @MinecraftExperimental ++ @ApiStatus.Experimental // Paper + ENTITY_CAMEL_HURT("entity.camel.hurt"), + @MinecraftExperimental ++ @ApiStatus.Experimental // Paper + ENTITY_CAMEL_SADDLE("entity.camel.saddle"), + @MinecraftExperimental ++ @ApiStatus.Experimental // Paper + ENTITY_CAMEL_SIT("entity.camel.sit"), + @MinecraftExperimental ++ @ApiStatus.Experimental // Paper + ENTITY_CAMEL_STAND("entity.camel.stand"), + @MinecraftExperimental ++ @ApiStatus.Experimental // Paper + ENTITY_CAMEL_STEP("entity.camel.step"), + @MinecraftExperimental ++ @ApiStatus.Experimental // Paper + ENTITY_CAMEL_STEP_SAND("entity.camel.step_sand"), + ENTITY_CAT_AMBIENT("entity.cat.ambient"), + ENTITY_CAT_BEG_FOR_FOOD("entity.cat.beg_for_food"), +diff --git a/src/main/java/org/bukkit/Tag.java b/src/main/java/org/bukkit/Tag.java +index e8206aa4cb574ee629f375a85acf597ae164a1c3..30f9e5e28edd5c267cc1ddef4aa5eac1bdc14a36 100644 +--- a/src/main/java/org/bukkit/Tag.java ++++ b/src/main/java/org/bukkit/Tag.java +@@ -149,6 +149,8 @@ public interface Tag extends Keyed { + /** + * Vanilla block tag representing all bamboo blocks. + */ ++ @MinecraftExperimental // Paper ++ @ApiStatus.Experimental // Paper + Tag BAMBOO_BLOCKS = Bukkit.getTag(REGISTRY_BLOCKS, NamespacedKey.minecraft("bamboo_blocks"), Material.class); + /** + * Vanilla block tag representing all banner blocks. +@@ -768,6 +770,8 @@ public interface Tag extends Keyed { + /** + * Vanilla item tag representing all books that may be placed on bookshelves. + */ ++ @MinecraftExperimental // Paper ++ @ApiStatus.Experimental // Paper + Tag ITEMS_BOOKSHELF_BOOKS = Bukkit.getTag(REGISTRY_ITEMS, NamespacedKey.minecraft("bookshelf_books"), Material.class); + /** + * Vanilla item tag representing all items that may be placed in beacons. +@@ -788,6 +792,8 @@ public interface Tag extends Keyed { + /** + * Vanilla item tag representing all hanging signs. + */ ++ @MinecraftExperimental // Paper ++ @ApiStatus.Experimental // Paper + Tag ITEMS_HANGING_SIGNS = Bukkit.getTag(REGISTRY_ITEMS, NamespacedKey.minecraft("hanging_signs"), Material.class); + /** + * Vanilla item tag representing all items which will ignite creepers when +diff --git a/src/main/java/org/bukkit/event/inventory/InventoryType.java b/src/main/java/org/bukkit/event/inventory/InventoryType.java +index b821fa535b23fe5af5884e536b1708460076ee40..a8e631315f2da68895a258cf0ba9875bc88fc48c 100644 +--- a/src/main/java/org/bukkit/event/inventory/InventoryType.java ++++ b/src/main/java/org/bukkit/event/inventory/InventoryType.java +@@ -138,6 +138,8 @@ public enum InventoryType { + /** + * Pseudo chiseled bookshelf inventory, with 6 slots of undefined type. + */ ++ @MinecraftExperimental // Paper ++ @org.jetbrains.annotations.ApiStatus.Experimental // Paper + CHISELED_BOOKSHELF(6, "Chiseled Bookshelf", false), + /** + * Pseudo jukebox inventory with 1 slot of undefined type. +@@ -149,6 +151,7 @@ public enum InventoryType { + * @apiNote draft, experimental 1.20 API + */ + @MinecraftExperimental ++ @org.jetbrains.annotations.ApiStatus.Experimental // Paper + SMITHING_NEW(4, "Upgrade Gear"), + ; + +diff --git a/src/main/java/org/bukkit/inventory/SmithingTransformRecipe.java b/src/main/java/org/bukkit/inventory/SmithingTransformRecipe.java +index 08fd3eca8383cdc2d06c3ce973e8c402d279077e..999e60a4a0f20fe4bbf5d8eefbafe368b80d1c4d 100644 +--- a/src/main/java/org/bukkit/inventory/SmithingTransformRecipe.java ++++ b/src/main/java/org/bukkit/inventory/SmithingTransformRecipe.java +@@ -6,6 +6,8 @@ import org.jetbrains.annotations.NotNull; + /** + * Represents a smithing transform recipe. + */ ++@org.bukkit.MinecraftExperimental // Paper ++@org.jetbrains.annotations.ApiStatus.Experimental // Paper + public class SmithingTransformRecipe extends SmithingRecipe { + + private final RecipeChoice template; diff --git a/patches/api/0400-Mark-experimental-api-as-such.patch b/patches/api/0400-Mark-experimental-api-as-such.patch deleted file mode 100644 index 990d5b157..000000000 --- a/patches/api/0400-Mark-experimental-api-as-such.patch +++ /dev/null @@ -1,1292 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Jake Potrebic -Date: Thu, 8 Dec 2022 17:31:21 -0800 -Subject: [PATCH] Mark experimental api as such - - -diff --git a/src/main/java/org/bukkit/Material.java b/src/main/java/org/bukkit/Material.java -index 842a9dd6f92737699529721ec4e06fbc225fa3e6..3c5e90f039f0d2991be442168703526405e18e3d 100644 ---- a/src/main/java/org/bukkit/Material.java -+++ b/src/main/java/org/bukkit/Material.java -@@ -155,12 +155,15 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla - BIRCH_PLANKS(29322), - JUNGLE_PLANKS(26445), - ACACIA_PLANKS(31312), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - CHERRY_PLANKS(8354), - DARK_OAK_PLANKS(20869), - MANGROVE_PLANKS(7078), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BAMBOO_PLANKS(8520), - CRIMSON_PLANKS(18812), - WARPED_PLANKS(16045), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BAMBOO_MOSAIC(10715), - /** - * BlockData: {@link Sapling} -@@ -185,6 +188,7 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla - /** - * BlockData: {@link Sapling} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - CHERRY_SAPLING(25204, Sapling.class), - /** - * BlockData: {@link Sapling} -@@ -199,6 +203,7 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla - /** - * BlockData: {@link SuspiciousSand} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - SUSPICIOUS_SAND(18410, SuspiciousSand.class), - RED_SAND(16279), - GRAVEL(7804), -@@ -340,6 +345,7 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla - /** - * BlockData: {@link Orientable} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - CHERRY_LOG(20847, Orientable.class), - /** - * BlockData: {@link Orientable} -@@ -368,6 +374,7 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla - /** - * BlockData: {@link Orientable} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BAMBOO_BLOCK(20770, Orientable.class), - /** - * BlockData: {@link Orientable} -@@ -392,6 +399,7 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla - /** - * BlockData: {@link Orientable} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - STRIPPED_CHERRY_LOG(18061, Orientable.class), - /** - * BlockData: {@link Orientable} -@@ -432,6 +440,7 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla - /** - * BlockData: {@link Orientable} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - STRIPPED_CHERRY_WOOD(19647, Orientable.class), - /** - * BlockData: {@link Orientable} -@@ -452,6 +461,7 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla - /** - * BlockData: {@link Orientable} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - STRIPPED_BAMBOO_BLOCK(14799, Orientable.class), - /** - * BlockData: {@link Orientable} -@@ -476,6 +486,7 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla - /** - * BlockData: {@link Orientable} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - CHERRY_WOOD(9826, Orientable.class), - /** - * BlockData: {@link Orientable} -@@ -516,6 +527,7 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla - /** - * BlockData: {@link Leaves} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - CHERRY_LEAVES(20856, Leaves.class), - /** - * BlockData: {@link Leaves} -@@ -581,6 +593,7 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla - CORNFLOWER(15405), - LILY_OF_THE_VALLEY(7185), - WITHER_ROSE(8619), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - TORCHFLOWER(4501), - SPORE_BLOSSOM(20627), - BROWN_MUSHROOM(9665), -@@ -610,6 +623,7 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla - /** - * BlockData: {@link PinkPetals} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - PINK_PETALS(10420, PinkPetals.class), - MOSS_BLOCK(9175), - /** -@@ -651,6 +665,7 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla - /** - * BlockData: {@link Slab} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - CHERRY_SLAB(16673, Slab.class), - /** - * BlockData: {@link Slab} -@@ -663,10 +678,12 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla - /** - * BlockData: {@link Slab} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BAMBOO_SLAB(17798, Slab.class), - /** - * BlockData: {@link Slab} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BAMBOO_MOSAIC_SLAB(22118, Slab.class), - /** - * BlockData: {@link Slab} -@@ -753,10 +770,12 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla - /** - * BlockData: {@link ChiseledBookshelf} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - CHISELED_BOOKSHELF(8099, ChiseledBookshelf.class), - /** - * BlockData: {@link DecoratedPot} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - DECORATED_POT(8720, 1, DecoratedPot.class), - MOSSY_COBBLESTONE(21900), - OBSIDIAN(32723), -@@ -842,6 +861,7 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla - /** - * BlockData: {@link Fence} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - CHERRY_FENCE(32047, Fence.class), - /** - * BlockData: {@link Fence} -@@ -854,6 +874,7 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla - /** - * BlockData: {@link Fence} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BAMBOO_FENCE(17207, Fence.class), - /** - * BlockData: {@link Fence} -@@ -1022,6 +1043,7 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla - /** - * BlockData: {@link Stairs} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - CHERRY_STAIRS(18380, Stairs.class), - /** - * BlockData: {@link Stairs} -@@ -1034,10 +1056,12 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla - /** - * BlockData: {@link Stairs} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BAMBOO_STAIRS(25674, Stairs.class), - /** - * BlockData: {@link Stairs} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BAMBOO_MOSAIC_STAIRS(20977, Stairs.class), - /** - * BlockData: {@link Stairs} -@@ -1873,6 +1897,7 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla - /** - * BlockData: {@link Switch} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - CHERRY_BUTTON(9058, Switch.class), - /** - * BlockData: {@link Switch} -@@ -1885,6 +1910,7 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla - /** - * BlockData: {@link Switch} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BAMBOO_BUTTON(21810, Switch.class), - /** - * BlockData: {@link Switch} -@@ -1933,6 +1959,7 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla - /** - * BlockData: {@link Powerable} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - CHERRY_PRESSURE_PLATE(8651, Powerable.class), - /** - * BlockData: {@link Powerable} -@@ -1945,6 +1972,7 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla - /** - * BlockData: {@link Powerable} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BAMBOO_PRESSURE_PLATE(26740, Powerable.class), - /** - * BlockData: {@link Powerable} -@@ -1981,6 +2009,7 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla - /** - * BlockData: {@link Door} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - CHERRY_DOOR(12684, Door.class), - /** - * BlockData: {@link Door} -@@ -1993,6 +2022,7 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla - /** - * BlockData: {@link Door} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BAMBOO_DOOR(19971, Door.class), - /** - * BlockData: {@link Door} -@@ -2029,6 +2059,7 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla - /** - * BlockData: {@link TrapDoor} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - CHERRY_TRAPDOOR(6293, TrapDoor.class), - /** - * BlockData: {@link TrapDoor} -@@ -2041,6 +2072,7 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla - /** - * BlockData: {@link TrapDoor} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BAMBOO_TRAPDOOR(9174, TrapDoor.class), - /** - * BlockData: {@link TrapDoor} -@@ -2073,6 +2105,7 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla - /** - * BlockData: {@link Gate} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - CHERRY_FENCE_GATE(28222, Gate.class), - /** - * BlockData: {@link Gate} -@@ -2085,6 +2118,7 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla - /** - * BlockData: {@link Gate} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BAMBOO_FENCE_GATE(14290, Gate.class), - /** - * BlockData: {@link Gate} -@@ -2129,13 +2163,17 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla - JUNGLE_CHEST_BOAT(20133, 1), - ACACIA_BOAT(27326, 1), - ACACIA_CHEST_BOAT(28455, 1), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - CHERRY_BOAT(13628, 1), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - CHERRY_CHEST_BOAT(7165, 1), - DARK_OAK_BOAT(28618, 1), - DARK_OAK_CHEST_BOAT(8733, 1), - MANGROVE_BOAT(20792, 1), - MANGROVE_CHEST_BOAT(18572, 1), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BAMBOO_RAFT(25901, 1), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BAMBOO_CHEST_RAFT(20056, 1), - /** - * BlockData: {@link StructureBlock} -@@ -2261,6 +2299,7 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla - /** - * BlockData: {@link Sign} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - CHERRY_SIGN(16520, 16, Sign.class), - /** - * BlockData: {@link Sign} -@@ -2273,6 +2312,7 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla - /** - * BlockData: {@link Sign} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BAMBOO_SIGN(26139, 16, Sign.class), - /** - * BlockData: {@link Sign} -@@ -2285,46 +2325,57 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla - /** - * BlockData: {@link HangingSign} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - OAK_HANGING_SIGN(20116, 16, HangingSign.class), - /** - * BlockData: {@link HangingSign} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - SPRUCE_HANGING_SIGN(24371, 16, HangingSign.class), - /** - * BlockData: {@link HangingSign} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BIRCH_HANGING_SIGN(17938, 16, HangingSign.class), - /** - * BlockData: {@link HangingSign} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - JUNGLE_HANGING_SIGN(27671, 16, HangingSign.class), - /** - * BlockData: {@link HangingSign} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - ACACIA_HANGING_SIGN(30257, 16, HangingSign.class), - /** - * BlockData: {@link HangingSign} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - CHERRY_HANGING_SIGN(5088, 16, HangingSign.class), - /** - * BlockData: {@link HangingSign} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - DARK_OAK_HANGING_SIGN(23360, 16, HangingSign.class), - /** - * BlockData: {@link HangingSign} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - MANGROVE_HANGING_SIGN(25106, 16, HangingSign.class), - /** - * BlockData: {@link HangingSign} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BAMBOO_HANGING_SIGN(4726, 16, HangingSign.class), - /** - * BlockData: {@link HangingSign} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - CRIMSON_HANGING_SIGN(20696, 16, HangingSign.class), - /** - * BlockData: {@link HangingSign} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - WARPED_HANGING_SIGN(8195, 16, HangingSign.class), - BUCKET(15215, 16), - WATER_BUCKET(8802, 1), -@@ -2348,6 +2399,7 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla - EGG(21603, 16), - COMPASS(24139), - RECOVERY_COMPASS(12710), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BUNDLE(16835, 1), - FISHING_ROD(4167, 1, 64), - CLOCK(14980), -@@ -2488,6 +2540,7 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla - BEE_SPAWN_EGG(22924), - BLAZE_SPAWN_EGG(4759), - CAT_SPAWN_EGG(29583), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - CAMEL_SPAWN_EGG(14760), - CAVE_SPIDER_SPAWN_EGG(23341), - CHICKEN_SPAWN_EGG(5462), -@@ -2535,6 +2588,7 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla - SKELETON_SPAWN_EGG(15261), - SKELETON_HORSE_SPAWN_EGG(21356), - SLIME_SPAWN_EGG(17196), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - SNIFFER_SPAWN_EGG(27473), - SNOW_GOLEM_SPAWN_EGG(24732), - SPIDER_SPAWN_EGG(14984), -@@ -2599,6 +2653,7 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla - /** - * BlockData: {@link Rotatable} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - PIGLIN_HEAD(5512, Rotatable.class), - NETHER_STAR(12469), - PUMPKIN_PIE(28725), -@@ -2690,6 +2745,7 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla - END_CRYSTAL(19090), - CHORUS_FRUIT(7652), - POPPED_CHORUS_FRUIT(27844), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - TORCHFLOWER_SEEDS(18153), - BEETROOT(23305), - BEETROOT_SEEDS(21282), -@@ -2726,6 +2782,7 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla - NAUTILUS_SHELL(19989), - HEART_OF_THE_SEA(11807), - CROSSBOW(4340, 1, 465), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - SUSPICIOUS_STEW(8173, 1), - /** - * BlockData: {@link Directional} -@@ -2937,22 +2994,39 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla - PEARLESCENT_FROGLIGHT(21441, Orientable.class), - FROGSPAWN(8350), - ECHO_SHARD(12529), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BRUSH(30569, 1, 64), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - NETHERITE_UPGRADE_SMITHING_TEMPLATE(7615), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - SENTRY_ARMOR_TRIM_SMITHING_TEMPLATE(16124), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - DUNE_ARMOR_TRIM_SMITHING_TEMPLATE(30925), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - COAST_ARMOR_TRIM_SMITHING_TEMPLATE(25501), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - WILD_ARMOR_TRIM_SMITHING_TEMPLATE(5870), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - WARD_ARMOR_TRIM_SMITHING_TEMPLATE(24534), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - EYE_ARMOR_TRIM_SMITHING_TEMPLATE(14663), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - VEX_ARMOR_TRIM_SMITHING_TEMPLATE(25818), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - TIDE_ARMOR_TRIM_SMITHING_TEMPLATE(20420), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - SNOUT_ARMOR_TRIM_SMITHING_TEMPLATE(14386), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - RIB_ARMOR_TRIM_SMITHING_TEMPLATE(6010), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - SPIRE_ARMOR_TRIM_SMITHING_TEMPLATE(29143), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - POTTERY_SHARD_ARCHER(26154), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - POTTERY_SHARD_PRIZE(31677), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - POTTERY_SHARD_ARMS_UP(29222), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - POTTERY_SHARD_SKULL(14619), - /** - * BlockData: {@link Levelled} -@@ -3006,6 +3080,7 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla - /** - * BlockData: {@link WallSign} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - CHERRY_WALL_SIGN(20188, 16, WallSign.class), - /** - * BlockData: {@link WallSign} -@@ -3022,50 +3097,62 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla - /** - * BlockData: {@link WallSign} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BAMBOO_WALL_SIGN(18857, 16, WallSign.class), - /** - * BlockData: {@link WallHangingSign} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - OAK_WALL_HANGING_SIGN(15637, WallHangingSign.class), - /** - * BlockData: {@link WallHangingSign} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - SPRUCE_WALL_HANGING_SIGN(18833, WallHangingSign.class), - /** - * BlockData: {@link WallHangingSign} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BIRCH_WALL_HANGING_SIGN(15937, WallHangingSign.class), - /** - * BlockData: {@link WallHangingSign} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - ACACIA_WALL_HANGING_SIGN(22477, WallHangingSign.class), - /** - * BlockData: {@link WallHangingSign} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - CHERRY_WALL_HANGING_SIGN(10953, WallHangingSign.class), - /** - * BlockData: {@link WallHangingSign} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - JUNGLE_WALL_HANGING_SIGN(16691, WallHangingSign.class), - /** - * BlockData: {@link WallHangingSign} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - DARK_OAK_WALL_HANGING_SIGN(14296, WallHangingSign.class), - /** - * BlockData: {@link WallHangingSign} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - MANGROVE_WALL_HANGING_SIGN(16974, WallHangingSign.class), - /** - * BlockData: {@link WallHangingSign} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - CRIMSON_WALL_HANGING_SIGN(28982, WallHangingSign.class), - /** - * BlockData: {@link WallHangingSign} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - WARPED_WALL_HANGING_SIGN(20605, WallHangingSign.class), - /** - * BlockData: {@link WallHangingSign} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BAMBOO_WALL_HANGING_SIGN(6669, WallHangingSign.class), - /** - * BlockData: {@link RedstoneWallTorch} -@@ -3113,12 +3200,14 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla - * BlockData: {@link Tripwire} - */ - TRIPWIRE(8810, Tripwire.class), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - POTTED_TORCHFLOWER(21278), - POTTED_OAK_SAPLING(11905), - POTTED_SPRUCE_SAPLING(29498), - POTTED_BIRCH_SAPLING(32484), - POTTED_JUNGLE_SAPLING(7525), - POTTED_ACACIA_SAPLING(14096), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - POTTED_CHERRY_SAPLING(30785), - POTTED_DARK_OAK_SAPLING(6486), - POTTED_MANGROVE_PROPAGULE(22003), -@@ -3175,6 +3264,7 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla - /** - * BlockData: {@link Directional} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - PIGLIN_WALL_HEAD(4446, Directional.class), - /** - * BlockData: {@link Directional} -@@ -3243,6 +3333,7 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla - /** - * BlockData: {@link Ageable} - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - TORCHFLOWER_CROP(28460, Ageable.class), - /** - * BlockData: {@link Ageable} -diff --git a/src/main/java/org/bukkit/Particle.java b/src/main/java/org/bukkit/Particle.java -index 93244e6d940891f1297d4a26a80ba155af306071..caa34db68bdbbc8dceefb4385f4585ac0496a0f9 100644 ---- a/src/main/java/org/bukkit/Particle.java -+++ b/src/main/java/org/bukkit/Particle.java -@@ -123,8 +123,11 @@ public enum Particle { - SCULK_CHARGE(Float.class), - SCULK_CHARGE_POP, - SHRIEK(Integer.class), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - DRIPPING_CHERRY_LEAVES, -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - FALLING_CHERRY_LEAVES, -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - LANDING_CHERRY_LEAVES, - /** - * Uses {@link BlockData} as DataType -diff --git a/src/main/java/org/bukkit/Sound.java b/src/main/java/org/bukkit/Sound.java -index 5035c525ab40ebdde3da7fe85f5bdf6a26f6cfc0..aeaa8406fd97154a7afe66a4d08a3f598dfb83a4 100644 ---- a/src/main/java/org/bukkit/Sound.java -+++ b/src/main/java/org/bukkit/Sound.java -@@ -76,25 +76,45 @@ public enum Sound implements Keyed, net.kyori.adventure.sound.Sound.Type { // Pa - BLOCK_BAMBOO_SAPLING_HIT("block.bamboo_sapling.hit"), - BLOCK_BAMBOO_SAPLING_PLACE("block.bamboo_sapling.place"), - BLOCK_BAMBOO_STEP("block.bamboo.step"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_BAMBOO_WOOD_BREAK("block.bamboo_wood.break"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_BAMBOO_WOOD_BUTTON_CLICK_OFF("block.bamboo_wood_button.click_off"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_BAMBOO_WOOD_BUTTON_CLICK_ON("block.bamboo_wood_button.click_on"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_BAMBOO_WOOD_DOOR_CLOSE("block.bamboo_wood_door.close"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_BAMBOO_WOOD_DOOR_OPEN("block.bamboo_wood_door.open"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_BAMBOO_WOOD_FALL("block.bamboo_wood.fall"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_BAMBOO_WOOD_FENCE_GATE_CLOSE("block.bamboo_wood_fence_gate.close"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_BAMBOO_WOOD_FENCE_GATE_OPEN("block.bamboo_wood_fence_gate.open"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_BAMBOO_WOOD_HANGING_SIGN_BREAK("block.bamboo_wood_hanging_sign.break"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_BAMBOO_WOOD_HANGING_SIGN_FALL("block.bamboo_wood_hanging_sign.fall"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_BAMBOO_WOOD_HANGING_SIGN_HIT("block.bamboo_wood_hanging_sign.hit"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_BAMBOO_WOOD_HANGING_SIGN_PLACE("block.bamboo_wood_hanging_sign.place"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_BAMBOO_WOOD_HANGING_SIGN_STEP("block.bamboo_wood_hanging_sign.step"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_BAMBOO_WOOD_HIT("block.bamboo_wood.hit"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_BAMBOO_WOOD_PLACE("block.bamboo_wood.place"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_BAMBOO_WOOD_PRESSURE_PLATE_CLICK_OFF("block.bamboo_wood_pressure_plate.click_off"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_BAMBOO_WOOD_PRESSURE_PLATE_CLICK_ON("block.bamboo_wood_pressure_plate.click_on"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_BAMBOO_WOOD_STEP("block.bamboo_wood.step"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_BAMBOO_WOOD_TRAPDOOR_CLOSE("block.bamboo_wood_trapdoor.close"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_BAMBOO_WOOD_TRAPDOOR_OPEN("block.bamboo_wood_trapdoor.open"), - BLOCK_BARREL_CLOSE("block.barrel.close"), - BLOCK_BARREL_OPEN("block.barrel.open"), -@@ -158,47 +178,86 @@ public enum Sound implements Keyed, net.kyori.adventure.sound.Sound.Type { // Pa - BLOCK_CHAIN_HIT("block.chain.hit"), - BLOCK_CHAIN_PLACE("block.chain.place"), - BLOCK_CHAIN_STEP("block.chain.step"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_CHERRY_LEAVES_BREAK("block.cherry_leaves.break"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_CHERRY_LEAVES_FALL("block.cherry_leaves.fall"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_CHERRY_LEAVES_HIT("block.cherry_leaves.hit"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_CHERRY_LEAVES_PLACE("block.cherry_leaves.place"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_CHERRY_LEAVES_STEP("block.cherry_leaves.step"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_CHERRY_SAPLING_BREAK("block.cherry_sapling.break"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_CHERRY_SAPLING_FALL("block.cherry_sapling.fall"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_CHERRY_SAPLING_HIT("block.cherry_sapling.hit"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_CHERRY_SAPLING_PLACE("block.cherry_sapling.place"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_CHERRY_SAPLING_STEP("block.cherry_sapling.step"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_CHERRY_WOOD_BREAK("block.cherry_wood.break"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_CHERRY_WOOD_BUTTON_CLICK_OFF("block.cherry_wood_button.click_off"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_CHERRY_WOOD_BUTTON_CLICK_ON("block.cherry_wood_button.click_on"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_CHERRY_WOOD_DOOR_CLOSE("block.cherry_wood_door.close"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_CHERRY_WOOD_DOOR_OPEN("block.cherry_wood_door.open"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_CHERRY_WOOD_FALL("block.cherry_wood.fall"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_CHERRY_WOOD_FENCE_GATE_CLOSE("block.cherry_wood_fence_gate.close"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_CHERRY_WOOD_FENCE_GATE_OPEN("block.cherry_wood_fence_gate.open"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_CHERRY_WOOD_HANGING_SIGN_BREAK("block.cherry_wood_hanging_sign.break"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_CHERRY_WOOD_HANGING_SIGN_FALL("block.cherry_wood_hanging_sign.fall"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_CHERRY_WOOD_HANGING_SIGN_HIT("block.cherry_wood_hanging_sign.hit"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_CHERRY_WOOD_HANGING_SIGN_PLACE("block.cherry_wood_hanging_sign.place"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_CHERRY_WOOD_HANGING_SIGN_STEP("block.cherry_wood_hanging_sign.step"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_CHERRY_WOOD_HIT("block.cherry_wood.hit"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_CHERRY_WOOD_PLACE("block.cherry_wood.place"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_CHERRY_WOOD_PRESSURE_PLATE_CLICK_OFF("block.cherry_wood_pressure_plate.click_off"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_CHERRY_WOOD_PRESSURE_PLATE_CLICK_ON("block.cherry_wood_pressure_plate.click_on"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_CHERRY_WOOD_STEP("block.cherry_wood.step"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_CHERRY_WOOD_TRAPDOOR_CLOSE("block.cherry_wood_trapdoor.close"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_CHERRY_WOOD_TRAPDOOR_OPEN("block.cherry_wood_trapdoor.open"), - BLOCK_CHEST_CLOSE("block.chest.close"), - BLOCK_CHEST_LOCKED("block.chest.locked"), - BLOCK_CHEST_OPEN("block.chest.open"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_CHISELED_BOOKSHELF_BREAK("block.chiseled_bookshelf.break"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_CHISELED_BOOKSHELF_FALL("block.chiseled_bookshelf.fall"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_CHISELED_BOOKSHELF_HIT("block.chiseled_bookshelf.hit"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_CHISELED_BOOKSHELF_INSERT("block.chiseled_bookshelf.insert"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_CHISELED_BOOKSHELF_INSERT_ENCHANTED("block.chiseled_bookshelf.insert.enchanted"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_CHISELED_BOOKSHELF_PICKUP("block.chiseled_bookshelf.pickup"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_CHISELED_BOOKSHELF_PICKUP_ENCHANTED("block.chiseled_bookshelf.pickup.enchanted"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_CHISELED_BOOKSHELF_PLACE("block.chiseled_bookshelf.place"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_CHISELED_BOOKSHELF_STEP("block.chiseled_bookshelf.step"), - BLOCK_CHORUS_FLOWER_DEATH("block.chorus_flower.death"), - BLOCK_CHORUS_FLOWER_GROW("block.chorus_flower.grow"), -@@ -223,11 +282,17 @@ public enum Sound implements Keyed, net.kyori.adventure.sound.Sound.Type { // Pa - BLOCK_CORAL_BLOCK_PLACE("block.coral_block.place"), - BLOCK_CORAL_BLOCK_STEP("block.coral_block.step"), - BLOCK_CROP_BREAK("block.crop.break"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_DECORATED_POT_BREAK("block.decorated_pot.break"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_DECORATED_POT_FALL("block.decorated_pot.fall"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_DECORATED_POT_HIT("block.decorated_pot.hit"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_DECORATED_POT_PLACE("block.decorated_pot.place"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_DECORATED_POT_SHATTER("block.decorated_pot.shatter"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_DECORATED_POT_STEP("block.decorated_pot.step"), - BLOCK_DEEPSLATE_BREAK("block.deepslate.break"), - BLOCK_DEEPSLATE_BRICKS_BREAK("block.deepslate_bricks.break"), -@@ -311,10 +376,15 @@ public enum Sound implements Keyed, net.kyori.adventure.sound.Sound.Type { // Pa - BLOCK_HANGING_ROOTS_HIT("block.hanging_roots.hit"), - BLOCK_HANGING_ROOTS_PLACE("block.hanging_roots.place"), - BLOCK_HANGING_ROOTS_STEP("block.hanging_roots.step"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_HANGING_SIGN_BREAK("block.hanging_sign.break"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_HANGING_SIGN_FALL("block.hanging_sign.fall"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_HANGING_SIGN_HIT("block.hanging_sign.hit"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_HANGING_SIGN_PLACE("block.hanging_sign.place"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_HANGING_SIGN_STEP("block.hanging_sign.step"), - BLOCK_HONEY_BLOCK_BREAK("block.honey_block.break"), - BLOCK_HONEY_BLOCK_FALL("block.honey_block.fall"), -@@ -450,11 +520,17 @@ public enum Sound implements Keyed, net.kyori.adventure.sound.Sound.Type { // Pa - BLOCK_NOTE_BLOCK_GUITAR("block.note_block.guitar"), - BLOCK_NOTE_BLOCK_HARP("block.note_block.harp"), - BLOCK_NOTE_BLOCK_HAT("block.note_block.hat"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_NOTE_BLOCK_IMITATE_CREEPER("block.note_block.imitate.creeper"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_NOTE_BLOCK_IMITATE_ENDER_DRAGON("block.note_block.imitate.ender_dragon"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_NOTE_BLOCK_IMITATE_PIGLIN("block.note_block.imitate.piglin"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_NOTE_BLOCK_IMITATE_SKELETON("block.note_block.imitate.skeleton"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_NOTE_BLOCK_IMITATE_WITHER_SKELETON("block.note_block.imitate.wither_skeleton"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_NOTE_BLOCK_IMITATE_ZOMBIE("block.note_block.imitate.zombie"), - BLOCK_NOTE_BLOCK_IRON_XYLOPHONE("block.note_block.iron_xylophone"), - BLOCK_NOTE_BLOCK_PLING("block.note_block.pling"), -@@ -470,10 +546,15 @@ public enum Sound implements Keyed, net.kyori.adventure.sound.Sound.Type { // Pa - BLOCK_PACKED_MUD_HIT("block.packed_mud.hit"), - BLOCK_PACKED_MUD_PLACE("block.packed_mud.place"), - BLOCK_PACKED_MUD_STEP("block.packed_mud.step"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_PINK_PETALS_BREAK("block.pink_petals.break"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_PINK_PETALS_FALL("block.pink_petals.fall"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_PINK_PETALS_HIT("block.pink_petals.hit"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_PINK_PETALS_PLACE("block.pink_petals.place"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_PINK_PETALS_STEP("block.pink_petals.step"), - BLOCK_PISTON_CONTRACT("block.piston.contract"), - BLOCK_PISTON_EXTEND("block.piston.extend"), -@@ -612,10 +693,15 @@ public enum Sound implements Keyed, net.kyori.adventure.sound.Sound.Type { // Pa - BLOCK_STONE_PRESSURE_PLATE_CLICK_OFF("block.stone_pressure_plate.click_off"), - BLOCK_STONE_PRESSURE_PLATE_CLICK_ON("block.stone_pressure_plate.click_on"), - BLOCK_STONE_STEP("block.stone.step"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_SUSPICIOUS_SAND_BREAK("block.suspicious_sand.break"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_SUSPICIOUS_SAND_FALL("block.suspicious_sand.fall"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_SUSPICIOUS_SAND_HIT("block.suspicious_sand.hit"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_SUSPICIOUS_SAND_PLACE("block.suspicious_sand.place"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BLOCK_SUSPICIOUS_SAND_STEP("block.suspicious_sand.step"), - BLOCK_SWEET_BERRY_BUSH_BREAK("block.sweet_berry_bush.break"), - BLOCK_SWEET_BERRY_BUSH_PICK_BERRIES("block.sweet_berry_bush.pick_berries"), -@@ -708,16 +794,27 @@ public enum Sound implements Keyed, net.kyori.adventure.sound.Sound.Type { // Pa - ENTITY_BLAZE_SHOOT("entity.blaze.shoot"), - ENTITY_BOAT_PADDLE_LAND("entity.boat.paddle_land"), - ENTITY_BOAT_PADDLE_WATER("entity.boat.paddle_water"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - ENTITY_CAMEL_AMBIENT("entity.camel.ambient"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - ENTITY_CAMEL_DASH("entity.camel.dash"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - ENTITY_CAMEL_DASH_READY("entity.camel.dash_ready"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - ENTITY_CAMEL_DEATH("entity.camel.death"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - ENTITY_CAMEL_EAT("entity.camel.eat"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - ENTITY_CAMEL_HURT("entity.camel.hurt"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - ENTITY_CAMEL_SADDLE("entity.camel.saddle"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - ENTITY_CAMEL_SIT("entity.camel.sit"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - ENTITY_CAMEL_STAND("entity.camel.stand"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - ENTITY_CAMEL_STEP("entity.camel.step"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - ENTITY_CAMEL_STEP_SAND("entity.camel.step_sand"), - ENTITY_CAT_AMBIENT("entity.cat.ambient"), - ENTITY_CAT_BEG_FOR_FOOD("entity.cat.beg_for_food"), -@@ -1159,17 +1256,29 @@ public enum Sound implements Keyed, net.kyori.adventure.sound.Sound.Type { // Pa - ENTITY_SLIME_JUMP_SMALL("entity.slime.jump_small"), - ENTITY_SLIME_SQUISH("entity.slime.squish"), - ENTITY_SLIME_SQUISH_SMALL("entity.slime.squish_small"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - ENTITY_SNIFFER_DEATH("entity.sniffer.death"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - ENTITY_SNIFFER_DIGGING("entity.sniffer.digging"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - ENTITY_SNIFFER_DIGGING_STOP("entity.sniffer.digging_stop"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - ENTITY_SNIFFER_DROP_SEED("entity.sniffer.drop_seed"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - ENTITY_SNIFFER_EAT("entity.sniffer.eat"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - ENTITY_SNIFFER_HAPPY("entity.sniffer.happy"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - ENTITY_SNIFFER_HURT("entity.sniffer.hurt"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - ENTITY_SNIFFER_IDLE("entity.sniffer.idle"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - ENTITY_SNIFFER_SCENTING("entity.sniffer.scenting"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - ENTITY_SNIFFER_SEARCHING("entity.sniffer.searching"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - ENTITY_SNIFFER_SNIFFING("entity.sniffer.sniffing"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - ENTITY_SNIFFER_STEP("entity.sniffer.step"), - ENTITY_SNOWBALL_THROW("entity.snowball.throw"), - ENTITY_SNOW_GOLEM_AMBIENT("entity.snow_golem.ambient"), -@@ -1353,7 +1462,9 @@ public enum Sound implements Keyed, net.kyori.adventure.sound.Sound.Type { // Pa - ITEM_BOTTLE_EMPTY("item.bottle.empty"), - ITEM_BOTTLE_FILL("item.bottle.fill"), - ITEM_BOTTLE_FILL_DRAGONBREATH("item.bottle.fill_dragonbreath"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - ITEM_BRUSH_BRUSHING("item.brush.brushing"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - ITEM_BRUSH_BRUSH_SAND_COMPLETED("item.brush.brush_sand_completed"), - ITEM_BUCKET_EMPTY("item.bucket.empty"), - ITEM_BUCKET_EMPTY_AXOLOTL("item.bucket.empty_axolotl"), -@@ -1440,6 +1551,7 @@ public enum Sound implements Keyed, net.kyori.adventure.sound.Sound.Type { // Pa - MUSIC_NETHER_NETHER_WASTES("music.nether.nether_wastes"), - MUSIC_NETHER_SOUL_SAND_VALLEY("music.nether.soul_sand_valley"), - MUSIC_NETHER_WARPED_FOREST("music.nether.warped_forest"), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - MUSIC_OVERWORLD_CHERRY_GROVE("music.overworld.cherry_grove"), - MUSIC_OVERWORLD_DEEP_DARK("music.overworld.deep_dark"), - MUSIC_OVERWORLD_DRIPSTONE_CAVES("music.overworld.dripstone_caves"), -diff --git a/src/main/java/org/bukkit/Tag.java b/src/main/java/org/bukkit/Tag.java -index 8f9a18ae5cdc51a2cc4ac0e45781fdce91172b6c..0316b32502f151e6eef86c2a0fe19ed67dce652f 100644 ---- a/src/main/java/org/bukkit/Tag.java -+++ b/src/main/java/org/bukkit/Tag.java -@@ -122,6 +122,7 @@ public interface Tag extends Keyed { - /** - * Vanilla block tag representing all cherry log and bark variants. - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - Tag CHERRY_LOGS = Bukkit.getTag(REGISTRY_BLOCKS, NamespacedKey.minecraft("cherry_logs"), Material.class); - /** - * Vanilla block tag representing all jungle log and bark variants. -@@ -146,6 +147,7 @@ public interface Tag extends Keyed { - /** - * Vanilla block tag representing all bamboo blocks. - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - Tag BAMBOO_BLOCKS = Bukkit.getTag(REGISTRY_BLOCKS, NamespacedKey.minecraft("bamboo_blocks"), Material.class); - /** - * Vanilla block tag representing all banner blocks. -@@ -320,14 +322,17 @@ public interface Tag extends Keyed { - /** - * Vanilla block tag representing all ceiling signs. - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - Tag CEILING_HANGING_SIGNS = Bukkit.getTag(REGISTRY_BLOCKS, NamespacedKey.minecraft("ceiling_hanging_signs"), Material.class); - /** - * Vanilla block tag representing all wall hanging signs. - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - Tag WALL_HANGING_SIGNS = Bukkit.getTag(REGISTRY_BLOCKS, NamespacedKey.minecraft("wall_hanging_signs"), Material.class); - /** - * Vanilla block tag representing all hanging signs. - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - Tag ALL_HANGING_SIGNS = Bukkit.getTag(REGISTRY_BLOCKS, NamespacedKey.minecraft("all_hanging_signs"), Material.class); - /** - * Vanilla block tag representing all signs, regardless of type. -@@ -691,6 +696,7 @@ public interface Tag extends Keyed { - /** - * Vanilla block tag representing blocks which can be dug by sniffers. - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - Tag SNIFFER_DIGGABLE_BLOCK = Bukkit.getTag(REGISTRY_BLOCKS, NamespacedKey.minecraft("sniffer_diggable_block"), Material.class); - /** - * Key for the built in item registry. -@@ -757,6 +763,7 @@ public interface Tag extends Keyed { - /** - * Vanilla item tag representing all books that may be placed on bookshelves. - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - Tag ITEMS_BOOKSHELF_BOOKS = Bukkit.getTag(REGISTRY_ITEMS, NamespacedKey.minecraft("bookshelf_books"), Material.class); - /** - * Vanilla item tag representing all items that may be placed in beacons. -@@ -777,6 +784,7 @@ public interface Tag extends Keyed { - /** - * Vanilla item tag representing all hanging signs. - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - Tag ITEMS_HANGING_SIGNS = Bukkit.getTag(REGISTRY_ITEMS, NamespacedKey.minecraft("hanging_signs"), Material.class); - /** - * Vanilla item tag representing all items which will ignite creepers when -@@ -786,26 +794,32 @@ public interface Tag extends Keyed { - /** - * Vanilla item tag representing all items which modify note block sounds when placed on top. - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - Tag ITEMS_NOTE_BLOCK_TOP_INSTRUMENTS = Bukkit.getTag(REGISTRY_ITEMS, NamespacedKey.minecraft("noteblock_top_instruments"), Material.class); - /** - * Vanilla item tag representing all trimmable armor items. - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - Tag ITEMS_TRIMMABLE_ARMOR = Bukkit.getTag(REGISTRY_ITEMS, NamespacedKey.minecraft("trimmable_armor"), Material.class); - /** - * Vanilla item tag representing all materials which can be used for trimming armor. - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - Tag ITEMS_TRIM_MATERIALS = Bukkit.getTag(REGISTRY_ITEMS, NamespacedKey.minecraft("trim_materials"), Material.class); - /** - * Vanilla item tag representing all trimming templates. - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - Tag ITEMS_TRIM_TEMPLATES = Bukkit.getTag(REGISTRY_ITEMS, NamespacedKey.minecraft("trim_templates"), Material.class); - /** - * Vanilla item tag representing all food for sniffers. - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - Tag ITEMS_SNIFFER_FOOD = Bukkit.getTag(REGISTRY_ITEMS, NamespacedKey.minecraft("sniffer_food"), Material.class); - /** - * Vanilla item tag representing all decorated pot shards. - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - Tag ITEMS_DECORATED_POT_SHARDS = Bukkit.getTag(REGISTRY_ITEMS, NamespacedKey.minecraft("decorated_pot_shards"), Material.class); - /** - * Vanilla item tag representing all swords. -@@ -834,6 +848,7 @@ public interface Tag extends Keyed { - /** - * Vanilla item tag representing all item which break decorated pots. - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - Tag ITEMS_BREAKS_DECORATED_POTS = Bukkit.getTag(REGISTRY_ITEMS, NamespacedKey.minecraft("breaks_decorated_pots"), Material.class); - /** - * Vanilla item tag representing all items that confer freeze immunity on -diff --git a/src/main/java/org/bukkit/TreeType.java b/src/main/java/org/bukkit/TreeType.java -index d355c91748796f74064b5c34090f1ccafc0f1de0..ab40b68c8c4a32e3ae10708d230658560f448288 100644 ---- a/src/main/java/org/bukkit/TreeType.java -+++ b/src/main/java/org/bukkit/TreeType.java -@@ -96,5 +96,6 @@ public enum TreeType { - /** - * Cherry tree - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - CHERRY, - } -diff --git a/src/main/java/org/bukkit/block/Biome.java b/src/main/java/org/bukkit/block/Biome.java -index 5d8fa5b39a5d50cca48ba63af3a84b80f279b649..612ebdd08816438f5532f367ce2f64eb3a9803ff 100644 ---- a/src/main/java/org/bukkit/block/Biome.java -+++ b/src/main/java/org/bukkit/block/Biome.java -@@ -72,6 +72,7 @@ public enum Biome implements Keyed, net.kyori.adventure.translation.Translatable - FROZEN_PEAKS, - JAGGED_PEAKS, - STONY_PEAKS, -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - CHERRY_GROVE, - /** - * Represents a custom Biome -diff --git a/src/main/java/org/bukkit/block/ChiseledBookshelf.java b/src/main/java/org/bukkit/block/ChiseledBookshelf.java -index 4cae298f18b35f73e3a64d5c8926bdc0f0402c4b..fee629dce62bc3978204f9b3a8e0aab72197ccfb 100644 ---- a/src/main/java/org/bukkit/block/ChiseledBookshelf.java -+++ b/src/main/java/org/bukkit/block/ChiseledBookshelf.java -@@ -7,6 +7,7 @@ import org.jetbrains.annotations.NotNull; - /** - * Represents a captured state of a chiseled bookshelf. - */ -+@org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - public interface ChiseledBookshelf extends TileState, BlockInventoryHolder { - - /** -diff --git a/src/main/java/org/bukkit/block/DecoratedPot.java b/src/main/java/org/bukkit/block/DecoratedPot.java -index c943d2e5c99244067a806954b962738463ee8cfb..4ee094e5d479bfba999c0b522b844a5adde12f18 100644 ---- a/src/main/java/org/bukkit/block/DecoratedPot.java -+++ b/src/main/java/org/bukkit/block/DecoratedPot.java -@@ -8,6 +8,7 @@ import org.jetbrains.annotations.Nullable; - /** - * Represents a captured state of a decorated pot. - */ -+@org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - public interface DecoratedPot extends TileState { - - /** -diff --git a/src/main/java/org/bukkit/block/HangingSign.java b/src/main/java/org/bukkit/block/HangingSign.java -index 9bef6c6597222833f6c36bbfc382849fecad4439..519b32ae3d7ec29183fdcbbda590595e6f920877 100644 ---- a/src/main/java/org/bukkit/block/HangingSign.java -+++ b/src/main/java/org/bukkit/block/HangingSign.java -@@ -3,5 +3,6 @@ package org.bukkit.block; - /** - * Represents a captured state of a hanging sign. - */ -+@org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - public interface HangingSign extends Sign { - } -diff --git a/src/main/java/org/bukkit/block/Skull.java b/src/main/java/org/bukkit/block/Skull.java -index c7502a3913cf14e66559c21489d6f2205f3eb06a..d39196e729627fc08edfa0b80a3b92868bc3bd34 100644 ---- a/src/main/java/org/bukkit/block/Skull.java -+++ b/src/main/java/org/bukkit/block/Skull.java -@@ -110,6 +110,7 @@ public interface Skull extends TileState { - * - * @return the key of the sound, or null - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - @Nullable - public NamespacedKey getNoteBlockSound(); - -@@ -121,6 +122,7 @@ public interface Skull extends TileState { - * - * @param noteBlockSound the key of the sound to be played, or null - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - public void setNoteBlockSound(@Nullable NamespacedKey noteBlockSound); - - /** -diff --git a/src/main/java/org/bukkit/block/SuspiciousSand.java b/src/main/java/org/bukkit/block/SuspiciousSand.java -index 2f64b66d1066c368adac16f6f79c5280da61176f..a29d600638b7931e0271b4e0d025e4063b34e25d 100644 ---- a/src/main/java/org/bukkit/block/SuspiciousSand.java -+++ b/src/main/java/org/bukkit/block/SuspiciousSand.java -@@ -7,6 +7,7 @@ import org.jetbrains.annotations.Nullable; - /** - * Represents a captured state of suspicious sand. - */ -+@org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - public interface SuspiciousSand extends Lootable, TileState { - - /** -diff --git a/src/main/java/org/bukkit/block/data/type/ChiseledBookshelf.java b/src/main/java/org/bukkit/block/data/type/ChiseledBookshelf.java -index a172e22ce47c74554a582e8fce2796238bfb5d65..0456fba0ac9e8fd9eebf9850d425c1353686ceca 100644 ---- a/src/main/java/org/bukkit/block/data/type/ChiseledBookshelf.java -+++ b/src/main/java/org/bukkit/block/data/type/ChiseledBookshelf.java -@@ -11,6 +11,7 @@ import org.jetbrains.annotations.NotNull; - *
- * Block may have 0, 1... {@link #getMaximumOccupiedSlots()}-1 occupied slots. - */ -+@org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - public interface ChiseledBookshelf extends Directional { - - /** -diff --git a/src/main/java/org/bukkit/block/data/type/DecoratedPot.java b/src/main/java/org/bukkit/block/data/type/DecoratedPot.java -index eb0ffa977450ef0c79caa78302cfe75ee35b34b7..965dc4360fb5cf964a9093bf6519bfcc27981679 100644 ---- a/src/main/java/org/bukkit/block/data/type/DecoratedPot.java -+++ b/src/main/java/org/bukkit/block/data/type/DecoratedPot.java -@@ -3,5 +3,6 @@ package org.bukkit.block.data.type; - import org.bukkit.block.data.Directional; - import org.bukkit.block.data.Waterlogged; - -+@org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - public interface DecoratedPot extends Directional, Waterlogged { - } -diff --git a/src/main/java/org/bukkit/block/data/type/HangingSign.java b/src/main/java/org/bukkit/block/data/type/HangingSign.java -index c5a0c1476317ce2688ead25c53f3adabf875eefd..91af0bb0830bd1b964c1ee603e462486456c6101 100644 ---- a/src/main/java/org/bukkit/block/data/type/HangingSign.java -+++ b/src/main/java/org/bukkit/block/data/type/HangingSign.java -@@ -4,5 +4,6 @@ import org.bukkit.block.data.Attachable; - import org.bukkit.block.data.Rotatable; - import org.bukkit.block.data.Waterlogged; - -+@org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - public interface HangingSign extends Attachable, Rotatable, Waterlogged { - } -diff --git a/src/main/java/org/bukkit/block/data/type/PinkPetals.java b/src/main/java/org/bukkit/block/data/type/PinkPetals.java -index a84b36f7587eb2ed9e9177973b3166dc94cdf3df..33893e1d37c0a2447b632208f9e05495c5e1d31c 100644 ---- a/src/main/java/org/bukkit/block/data/type/PinkPetals.java -+++ b/src/main/java/org/bukkit/block/data/type/PinkPetals.java -@@ -5,6 +5,7 @@ import org.bukkit.block.data.Directional; - /** - * 'flower_amount' represents the number of petals. - */ -+@org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - public interface PinkPetals extends Directional { - - /** -diff --git a/src/main/java/org/bukkit/block/data/type/SuspiciousSand.java b/src/main/java/org/bukkit/block/data/type/SuspiciousSand.java -index bb10fda9449ec0ea8a17158c33b345fdf882175d..d4520375a5c093df510c2e68fb1034536ef0734f 100644 ---- a/src/main/java/org/bukkit/block/data/type/SuspiciousSand.java -+++ b/src/main/java/org/bukkit/block/data/type/SuspiciousSand.java -@@ -5,6 +5,7 @@ import org.bukkit.block.data.BlockData; - /** - * 'dusted' represents how far uncovered by brush the block is. - */ -+@org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - public interface SuspiciousSand extends BlockData { - - /** -diff --git a/src/main/java/org/bukkit/block/data/type/WallHangingSign.java b/src/main/java/org/bukkit/block/data/type/WallHangingSign.java -index 283b21024d7a6eeebbf7306f95fce7eb4714bac6..1f5da84daebb58a546c6a3d2646a5aad9b2ed7a3 100644 ---- a/src/main/java/org/bukkit/block/data/type/WallHangingSign.java -+++ b/src/main/java/org/bukkit/block/data/type/WallHangingSign.java -@@ -3,5 +3,6 @@ package org.bukkit.block.data.type; - import org.bukkit.block.data.Directional; - import org.bukkit.block.data.Waterlogged; - -+@org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - public interface WallHangingSign extends Directional, Waterlogged { - } -diff --git a/src/main/java/org/bukkit/entity/Boat.java b/src/main/java/org/bukkit/entity/Boat.java -index f7548098bcdd033d9c530fdc584fc5538c635ca1..b2305bc7faf1f7edbbf11522970384172808894c 100644 ---- a/src/main/java/org/bukkit/entity/Boat.java -+++ b/src/main/java/org/bukkit/entity/Boat.java -@@ -141,9 +141,11 @@ public interface Boat extends Vehicle { - BIRCH(Material.BIRCH_PLANKS), - JUNGLE(Material.JUNGLE_PLANKS), - ACACIA(Material.ACACIA_PLANKS), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - CHERRY(Material.CHERRY_PLANKS), - DARK_OAK(Material.DARK_OAK_PLANKS), - MANGROVE(Material.MANGROVE_PLANKS), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - BAMBOO(Material.BAMBOO_PLANKS), - ; - -diff --git a/src/main/java/org/bukkit/entity/Camel.java b/src/main/java/org/bukkit/entity/Camel.java -index 17e4e0a822d4372e0a98612294ec0bd728830164..7280c3090cdf77f1bc13e3a2d6e35bd89ea8a22c 100644 ---- a/src/main/java/org/bukkit/entity/Camel.java -+++ b/src/main/java/org/bukkit/entity/Camel.java -@@ -3,6 +3,7 @@ package org.bukkit.entity; - /** - * Represents a Camel. - */ -+@org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - public interface Camel extends AbstractHorse, Sittable { - - /** -diff --git a/src/main/java/org/bukkit/entity/EntityType.java b/src/main/java/org/bukkit/entity/EntityType.java -index 9f935266f51f4ea5d1193031f52e5327350cc06f..ee3a3bda9a5b9cf3bcabf80ee3c653a2959fab0c 100644 ---- a/src/main/java/org/bukkit/entity/EntityType.java -+++ b/src/main/java/org/bukkit/entity/EntityType.java -@@ -278,10 +278,12 @@ public enum EntityType implements Keyed, Translatable, net.kyori.adventure.trans - FROG("frog", Frog.class, -1), - TADPOLE("tadpole", Tadpole.class, -1), - WARDEN("warden", Warden.class, -1), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - CAMEL("camel", Camel.class, -1), - BLOCK_DISPLAY("block_display", BlockDisplay.class, -1), - INTERACTION("interaction", Interaction.class, -1), - ITEM_DISPLAY("item_display", ItemDisplay.class, -1), -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - SNIFFER("sniffer", Sniffer.class, -1), - TEXT_DISPLAY("text_display", TextDisplay.class, -1), - /** -diff --git a/src/main/java/org/bukkit/entity/Sniffer.java b/src/main/java/org/bukkit/entity/Sniffer.java -index 6509d1ca35ff1cb7a2b31871c642d730b2816f6f..67982a8b2258c476eac76e7dc64bc7f143f63df9 100644 ---- a/src/main/java/org/bukkit/entity/Sniffer.java -+++ b/src/main/java/org/bukkit/entity/Sniffer.java -@@ -12,7 +12,7 @@ import org.jetbrains.annotations.Nullable; - * Note: This entity is part of an experimental feature of Minecraft and - * hence subject to change. - */ --@ApiStatus.Experimental -+@ApiStatus.Experimental // Paper - 1.20 - public interface Sniffer extends Animals { - - /** -diff --git a/src/main/java/org/bukkit/entity/memory/MemoryKey.java b/src/main/java/org/bukkit/entity/memory/MemoryKey.java -index 8f601e85df580ef8106eaff8b9eafb5691a4874b..99ca502a14e3f321c323d7675bc47e7ee77d7464 100644 ---- a/src/main/java/org/bukkit/entity/memory/MemoryKey.java -+++ b/src/main/java/org/bukkit/entity/memory/MemoryKey.java -@@ -69,6 +69,7 @@ public final class MemoryKey implements Keyed { - public static final MemoryKey LIKED_NOTEBLOCK_POSITION = new MemoryKey<>(NamespacedKey.minecraft("liked_noteblock"), Location.class); - public static final MemoryKey LIKED_NOTEBLOCK_COOLDOWN_TICKS = new MemoryKey<>(NamespacedKey.minecraft("liked_noteblock_cooldown_ticks"), Integer.class); - public static final MemoryKey ITEM_PICKUP_COOLDOWN_TICKS = new MemoryKey<>(NamespacedKey.minecraft("item_pickup_cooldown_ticks"), Integer.class); -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - public static final MemoryKey SNIFFER_EXPLORED_POSITIONS = new MemoryKey<>(NamespacedKey.minecraft("sniffer_explored_positions"), Location.class); - - /** -diff --git a/src/main/java/org/bukkit/event/inventory/InventoryType.java b/src/main/java/org/bukkit/event/inventory/InventoryType.java -index 2186507089384cb9805057c7cc1795fba7de1df3..94f127fd6ba69ca48d03acbc9886ee499e9be4f3 100644 ---- a/src/main/java/org/bukkit/event/inventory/InventoryType.java -+++ b/src/main/java/org/bukkit/event/inventory/InventoryType.java -@@ -137,6 +137,7 @@ public enum InventoryType { - /** - * Pseudo chiseled bookshelf inventory, with 6 slots of undefined type. - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - CHISELED_BOOKSHELF(6, "Chiseled Bookshelf", false), - /** - * Pseudo jukebox inventory with 1 slot of undefined type. -@@ -147,7 +148,7 @@ public enum InventoryType { - * - * @deprecated draft, experimental 1.20 API - */ -- @Deprecated -+ @Deprecated @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - SMITHING_NEW(4, "Upgrade Gear"), - ; - -diff --git a/src/main/java/org/bukkit/inventory/ChiseledBookshelfInventory.java b/src/main/java/org/bukkit/inventory/ChiseledBookshelfInventory.java -index b99f26079c14931d443615fa81eac9791080ecb0..dadb5b3563b5835c821a2d55d1f076a58f73230d 100644 ---- a/src/main/java/org/bukkit/inventory/ChiseledBookshelfInventory.java -+++ b/src/main/java/org/bukkit/inventory/ChiseledBookshelfInventory.java -@@ -6,6 +6,7 @@ import org.jetbrains.annotations.Nullable; - /** - * Interface to the inventory of a chiseled bookshelf. - */ -+@org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - public interface ChiseledBookshelfInventory extends Inventory { - - @Nullable -diff --git a/src/main/java/org/bukkit/inventory/ItemFlag.java b/src/main/java/org/bukkit/inventory/ItemFlag.java -index 4e637420b9a39b822be19367a16da93f236549b3..615cd9994be8a988b474eb512d9e9b7ace743a7a 100644 ---- a/src/main/java/org/bukkit/inventory/ItemFlag.java -+++ b/src/main/java/org/bukkit/inventory/ItemFlag.java -@@ -37,5 +37,6 @@ public enum ItemFlag { - /** - * Setting to show/hide armor trim from armor. - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - HIDE_ARMOR_TRIM; - } -diff --git a/src/main/java/org/bukkit/inventory/SmithingTransformRecipe.java b/src/main/java/org/bukkit/inventory/SmithingTransformRecipe.java -index 08fd3eca8383cdc2d06c3ce973e8c402d279077e..c845b68217eef87668d0bd725c51181312128f47 100644 ---- a/src/main/java/org/bukkit/inventory/SmithingTransformRecipe.java -+++ b/src/main/java/org/bukkit/inventory/SmithingTransformRecipe.java -@@ -6,6 +6,7 @@ import org.jetbrains.annotations.NotNull; - /** - * Represents a smithing transform recipe. - */ -+@org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - public class SmithingTransformRecipe extends SmithingRecipe { - - private final RecipeChoice template; -diff --git a/src/main/java/org/bukkit/inventory/SmithingTrimRecipe.java b/src/main/java/org/bukkit/inventory/SmithingTrimRecipe.java -index 32cbdc342615e76ff7a896e67cb0736b0bdf1978..69655ab0ece84c1d9a440c476fae7679f7c9cdf3 100644 ---- a/src/main/java/org/bukkit/inventory/SmithingTrimRecipe.java -+++ b/src/main/java/org/bukkit/inventory/SmithingTrimRecipe.java -@@ -7,6 +7,7 @@ import org.jetbrains.annotations.NotNull; - /** - * Represents a smithing trim recipe. - */ -+@org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - public class SmithingTrimRecipe extends SmithingRecipe implements ComplexRecipe { - - private final RecipeChoice template; -diff --git a/src/main/java/org/bukkit/inventory/meta/BundleMeta.java b/src/main/java/org/bukkit/inventory/meta/BundleMeta.java -index bc992fdf6d5517995547d136e8cdbe4bd3496abe..72663706cce18a19697828f16b782c12168fb8f3 100644 ---- a/src/main/java/org/bukkit/inventory/meta/BundleMeta.java -+++ b/src/main/java/org/bukkit/inventory/meta/BundleMeta.java -@@ -5,6 +5,7 @@ import org.bukkit.inventory.ItemStack; - import org.jetbrains.annotations.NotNull; - import org.jetbrains.annotations.Nullable; - -+@org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - public interface BundleMeta extends ItemMeta { - - /** -diff --git a/src/main/java/org/bukkit/inventory/meta/SkullMeta.java b/src/main/java/org/bukkit/inventory/meta/SkullMeta.java -index 862640b4611458dfbcd3be797eacd120fc8d1f9f..cf2313a0bbf74eaa6ef1d792356f1b05614eeeae 100644 ---- a/src/main/java/org/bukkit/inventory/meta/SkullMeta.java -+++ b/src/main/java/org/bukkit/inventory/meta/SkullMeta.java -@@ -104,6 +104,7 @@ public interface SkullMeta extends ItemMeta { - * - * @param noteBlockSound the key of the sound to be played, or null - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - void setNoteBlockSound(@Nullable NamespacedKey noteBlockSound); - - /** -@@ -114,6 +115,7 @@ public interface SkullMeta extends ItemMeta { - * - * @return the key of the sound, or null - */ -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 - @Nullable - NamespacedKey getNoteBlockSound(); - diff --git a/patches/api/0401-fix-Instruments.patch b/patches/api/0401-fix-Instruments.patch index a1843d1f0..416020233 100644 --- a/patches/api/0401-fix-Instruments.patch +++ b/patches/api/0401-fix-Instruments.patch @@ -7,10 +7,10 @@ Add missing instrument enums fix some wrong javadocs diff --git a/src/main/java/org/bukkit/Instrument.java b/src/main/java/org/bukkit/Instrument.java -index de976be7132d05506fde7a839cac3954b0dd8da4..c449b4a03e43752b98e008b69d2a956cd9990ba0 100644 +index 8f70d86a1d39351424335842c38625d42cfbdfb8..271fb4d41909654b87519edba1c1d4f418cdd3a5 100644 --- a/src/main/java/org/bukkit/Instrument.java +++ b/src/main/java/org/bukkit/Instrument.java -@@ -7,7 +7,7 @@ import org.jetbrains.annotations.Nullable; +@@ -8,7 +8,7 @@ import org.jetbrains.annotations.Nullable; public enum Instrument { /** @@ -19,7 +19,7 @@ index de976be7132d05506fde7a839cac3954b0dd8da4..c449b4a03e43752b98e008b69d2a956c */ PIANO(0x0), /** -@@ -21,7 +21,7 @@ public enum Instrument { +@@ -22,7 +22,7 @@ public enum Instrument { */ SNARE_DRUM(0x2), /** @@ -28,48 +28,53 @@ index de976be7132d05506fde7a839cac3954b0dd8da4..c449b4a03e43752b98e008b69d2a956c * block. */ STICKS(0x3), -@@ -78,38 +78,43 @@ public enum Instrument { - /** - * Zombie is normally played when a Zombie Head is on top of the note block. +@@ -81,50 +81,48 @@ public enum Instrument { */ + @MinecraftExperimental + @ApiStatus.Experimental - ZOMBIE, -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 + ZOMBIE(0x10), // Paper /** * Skeleton is normally played when a Skeleton Head is on top of the note block. */ + @MinecraftExperimental + @ApiStatus.Experimental - SKELETON, -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 + SKELETON(0x11), // Paper /** * Creeper is normally played when a Creeper Head is on top of the note block. */ + @MinecraftExperimental + @ApiStatus.Experimental - CREEPER, -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 + CREEPER(0x12), // Paper /** * Dragon is normally played when a Dragon Head is on top of the note block. */ + @MinecraftExperimental + @ApiStatus.Experimental - DRAGON, -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 + DRAGON(0x13), // Paper /** * Wither Skeleton is normally played when a Wither Skeleton Head is on top of the note block. */ + @MinecraftExperimental + @ApiStatus.Experimental - WITHER_SKELETON, -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 + WITHER_SKELETON(0x14), // Paper /** * Piglin is normally played when a Piglin Head is on top of the note block. */ + @MinecraftExperimental + @ApiStatus.Experimental - PIGLIN, -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 + PIGLIN(0x15), // Paper /** * Custom Sound is normally played when a Player Head with the required data is on top of the note block. */ + @MinecraftExperimental + @ApiStatus.Experimental - CUSTOM_HEAD; -+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 + CUSTOM_HEAD(0x16); // Paper private final byte type; @@ -82,7 +87,7 @@ index de976be7132d05506fde7a839cac3954b0dd8da4..c449b4a03e43752b98e008b69d2a956c private Instrument(final int type) { this.type = (byte) type; -@@ -117,9 +122,8 @@ public enum Instrument { +@@ -132,9 +130,8 @@ public enum Instrument { /** * @return The type ID of this instrument. @@ -93,7 +98,7 @@ index de976be7132d05506fde7a839cac3954b0dd8da4..c449b4a03e43752b98e008b69d2a956c public byte getType() { return this.type; } -@@ -129,9 +133,8 @@ public enum Instrument { +@@ -144,9 +141,8 @@ public enum Instrument { * * @param type The type ID * @return The instrument @@ -105,10 +110,10 @@ index de976be7132d05506fde7a839cac3954b0dd8da4..c449b4a03e43752b98e008b69d2a956c public static Instrument getByType(final byte type) { return BY_DATA.get(type); diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index 9e2116c121704602c2702414db39b5d1bd559c3d..c90cd70bc2bffdd92590f2907bb7aae70cbb7955 100644 +index a824262598e4a1ad6030e22a77628c43975c031d..eecb88dae2f68322be9add1fda7b50e2b2939f09 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java -@@ -390,9 +390,7 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -391,9 +391,7 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM public void playNote(@NotNull Location loc, byte instrument, byte note); /** diff --git a/patches/api/0403-Add-Sneaking-API-for-Entities.patch b/patches/api/0403-Add-Sneaking-API-for-Entities.patch index ee7963748..80e58142a 100644 --- a/patches/api/0403-Add-Sneaking-API-for-Entities.patch +++ b/patches/api/0403-Add-Sneaking-API-for-Entities.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add Sneaking API for Entities diff --git a/src/main/java/org/bukkit/entity/Entity.java b/src/main/java/org/bukkit/entity/Entity.java -index e0e4300d24f6b53f35c450bbae18511a6ce0b05e..8c58018b155c52a7b2a139f784abceb6aa00a268 100644 +index 3f3ea5bb6b3ea6f55b5cd699f1c01ac159619add..a2a423d4e4c2702ba5967223cab0432dd7d04732 100644 --- a/src/main/java/org/bukkit/entity/Entity.java +++ b/src/main/java/org/bukkit/entity/Entity.java -@@ -764,6 +764,25 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent +@@ -765,6 +765,25 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent @NotNull Pose getPose(); @@ -35,10 +35,10 @@ index e0e4300d24f6b53f35c450bbae18511a6ce0b05e..8c58018b155c52a7b2a139f784abceb6 * Get the category of spawn to which this entity belongs. * diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index c90cd70bc2bffdd92590f2907bb7aae70cbb7955..70bf345cdc03849146efccf7d52269cc349e56d0 100644 +index eecb88dae2f68322be9add1fda7b50e2b2939f09..8370de0cfea70d00cc484ca5d21dfade5af22984 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java -@@ -293,6 +293,7 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -294,6 +294,7 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM * * @return true if player is in sneak mode */ @@ -46,7 +46,7 @@ index c90cd70bc2bffdd92590f2907bb7aae70cbb7955..70bf345cdc03849146efccf7d52269cc public boolean isSneaking(); /** -@@ -300,6 +301,7 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -301,6 +302,7 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM * * @param sneak true if player should appear sneaking */ diff --git a/patches/api/0406-Flying-Fall-Damage-API.patch b/patches/api/0406-Flying-Fall-Damage-API.patch index fa43646ae..660b23abd 100644 --- a/patches/api/0406-Flying-Fall-Damage-API.patch +++ b/patches/api/0406-Flying-Fall-Damage-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Flying Fall Damage API diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index 70bf345cdc03849146efccf7d52269cc349e56d0..35f36e9ffa4ca2a8ce51ca905c575884dbb955a3 100644 +index 8370de0cfea70d00cc484ca5d21dfade5af22984..a6399eb076b7889085ffa1afcd9d432afdc29f85 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java -@@ -1485,6 +1485,23 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -1486,6 +1486,23 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM */ public void setAllowFlight(boolean flight); diff --git a/patches/api/0408-Replace-ItemFlag.HIDE_POTION_EFFECTS.patch b/patches/api/0408-Replace-ItemFlag.HIDE_POTION_EFFECTS.patch index 037247244..e56e16ce9 100644 --- a/patches/api/0408-Replace-ItemFlag.HIDE_POTION_EFFECTS.patch +++ b/patches/api/0408-Replace-ItemFlag.HIDE_POTION_EFFECTS.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Replace ItemFlag.HIDE_POTION_EFFECTS diff --git a/src/main/java/org/bukkit/inventory/ItemFlag.java b/src/main/java/org/bukkit/inventory/ItemFlag.java -index 615cd9994be8a988b474eb512d9e9b7ace743a7a..802b7ce23db1e19fc39adc7f93d9a36618742d33 100644 +index 69a66073bcaa10967b8736cbf35182b912c17d11..0d8d4154a156edd1092a7f5318d28336bbc57a9b 100644 --- a/src/main/java/org/bukkit/inventory/ItemFlag.java +++ b/src/main/java/org/bukkit/inventory/ItemFlag.java -@@ -28,7 +28,9 @@ public enum ItemFlag { +@@ -31,7 +31,9 @@ public enum ItemFlag { /** * Setting to show/hide potion effects, book and firework information, map * tooltips, patterns of banners, and enchantments of enchanted books. @@ -18,9 +18,9 @@ index 615cd9994be8a988b474eb512d9e9b7ace743a7a..802b7ce23db1e19fc39adc7f93d9a366 HIDE_POTION_EFFECTS, /** * Setting to show/hide dyes from colored leather armor. -@@ -39,4 +41,25 @@ public enum ItemFlag { - */ - @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20 +@@ -43,4 +45,25 @@ public enum ItemFlag { + @MinecraftExperimental + @ApiStatus.Experimental HIDE_ARMOR_TRIM; + // Paper start + /** diff --git a/patches/api/0409-Win-Screen-API.patch b/patches/api/0409-Win-Screen-API.patch index 6a42e4ef9..97c2b2a9c 100644 --- a/patches/api/0409-Win-Screen-API.patch +++ b/patches/api/0409-Win-Screen-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Win Screen API diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index 35f36e9ffa4ca2a8ce51ca905c575884dbb955a3..b3c488b2c632386f3f3e7b16ee0549350fffa681 100644 +index a6399eb076b7889085ffa1afcd9d432afdc29f85..ee446bfb3e6c4b1d4428c00d6406bf9455c68ad5 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java -@@ -875,6 +875,47 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -876,6 +876,47 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM */ public void sendMap(@NotNull MapView map); diff --git a/patches/server/0009-MC-Utils.patch b/patches/server/0009-MC-Utils.patch index 32d5078e7..1b0c64221 100644 --- a/patches/server/0009-MC-Utils.patch +++ b/patches/server/0009-MC-Utils.patch @@ -6688,10 +6688,10 @@ index a0b5895abc88d297045e05f25bb09527991d43f0..6e0bd0eab0b06a4ac3042496bbb91292 super(type, world); this.xpReward = 5; diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index 4a63213a3131af3381769c4adc2735def311a681..83af6f1af55ab9b0b7ad6f635e24b7c4d1d1829b 100644 +index 37bf8a861f1336dae61d1ed8f26be92382055e78..e19407edd4847e5a5175e113944d1331bd4d4ffc 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java -@@ -773,6 +773,25 @@ public final class ItemStack { +@@ -786,6 +786,25 @@ public final class ItemStack { return this.tag != null ? this.tag.getList("Enchantments", 10) : new ListTag(); } @@ -6717,7 +6717,7 @@ index 4a63213a3131af3381769c4adc2735def311a681..83af6f1af55ab9b0b7ad6f635e24b7c4 public void setTag(@Nullable CompoundTag nbt) { this.tag = nbt; if (this.getItem().canBeDepleted()) { -@@ -1163,6 +1182,7 @@ public final class ItemStack { +@@ -1176,6 +1195,7 @@ public final class ItemStack { // CraftBukkit start @Deprecated public void setItem(Item item) { diff --git a/patches/server/0010-Adventure.patch b/patches/server/0010-Adventure.patch index 8b38a714d..35430e12d 100644 --- a/patches/server/0010-Adventure.patch +++ b/patches/server/0010-Adventure.patch @@ -2795,7 +2795,7 @@ index 4c62df5a3781ec9df4a5c5f1b528649e6e8a62d1..affd1b8c7589ba59330dc0b6fc803cce } diff --git a/src/main/java/net/minecraft/world/level/saveddata/maps/MapItemSavedData.java b/src/main/java/net/minecraft/world/level/saveddata/maps/MapItemSavedData.java -index 3800205f28a00572b4ab757cc56e24eefa61e6fe..fe14c0d03a0bbd5cbf0608ea88d499984b54d2ed 100644 +index 0e04e7467ee27ea9e3ef60fe598cc21ab39f4c68..0f5e92a2256fe22b55d2428f98db403ad1b8834d 100644 --- a/src/main/java/net/minecraft/world/level/saveddata/maps/MapItemSavedData.java +++ b/src/main/java/net/minecraft/world/level/saveddata/maps/MapItemSavedData.java @@ -33,6 +33,7 @@ import net.minecraft.world.level.saveddata.SavedData; @@ -4122,10 +4122,10 @@ index 6a64fbb8b4937f39d5fdc2e2cbec26c83c74c486..7d6b5fdb00a5c1614849735634262a36 public String getTitle() { return CraftChatMessage.fromComponent(this.container.getTitle()); diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java -index a7ef4a04358df3f848ace0e6e8b6f2d0a18dbc29..4c76692e222d8505558aade9c03b3686612f7c0c 100644 +index 309a0a7e26651a7a675326382df838b423830f33..eeb01a1b54e450f95b33864b030d2183d29309da 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java -@@ -417,4 +417,17 @@ public final class CraftItemFactory implements ItemFactory { +@@ -440,4 +440,17 @@ public final class CraftItemFactory implements ItemFactory { public Material updateMaterial(ItemMeta meta, Material material) throws IllegalArgumentException { return ((CraftMetaItem) meta).updateMaterial(material); } @@ -4397,10 +4397,10 @@ index 507fa96a3fb904b74429df5756c9a6378ec8c5b7..abb9e88abc74135284b941e040d40586 + // Paper end } diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java -index 8ed06dc812fbda72667352fa42c03f9d9ae7ca7e..69f71bf44bbc66a38a877c660c8dbc493a0a8327 100644 +index 3b62ffe4f531e62da9e49050a0b944d8887f43f2..7500684057dca1bfe615e64da55ef521abb4ed9a 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java -@@ -747,6 +747,18 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -749,6 +749,18 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { return !(this.hasDisplayName() || this.hasLocalizedName() || this.hasEnchants() || (this.lore != null) || this.hasCustomModelData() || this.hasBlockData() || this.hasRepairCost() || !this.unhandledTags.isEmpty() || !this.persistentDataContainer.isEmpty() || this.hideFlag != 0 || this.isUnbreakable() || this.hasDamage() || this.hasAttributeModifiers()); } @@ -4419,7 +4419,7 @@ index 8ed06dc812fbda72667352fa42c03f9d9ae7ca7e..69f71bf44bbc66a38a877c660c8dbc49 @Override public String getDisplayName() { return CraftChatMessage.fromJSONComponent(displayName); -@@ -782,6 +794,18 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -784,6 +796,18 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { return this.lore != null && !this.lore.isEmpty(); } diff --git a/patches/server/0069-Handle-Item-Meta-Inconsistencies.patch b/patches/server/0069-Handle-Item-Meta-Inconsistencies.patch index 9c0c42733..d9e8b7e6d 100644 --- a/patches/server/0069-Handle-Item-Meta-Inconsistencies.patch +++ b/patches/server/0069-Handle-Item-Meta-Inconsistencies.patch @@ -18,10 +18,10 @@ For consistency, the old API methods now forward to use the ItemMeta API equivalents, and should deprecate the old API's. diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index 83af6f1af55ab9b0b7ad6f635e24b7c4d1d1829b..a36dac14b03a9af1303ac7f572f2cb71196f644c 100644 +index e19407edd4847e5a5175e113944d1331bd4d4ffc..9b358c8e464c67c4953749cda6d2983db98e0c5f 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java -@@ -156,6 +156,23 @@ public final class ItemStack { +@@ -158,6 +158,23 @@ public final class ItemStack { return this.getItem().getTooltipImage(this); } @@ -45,7 +45,7 @@ index 83af6f1af55ab9b0b7ad6f635e24b7c4d1d1829b..a36dac14b03a9af1303ac7f572f2cb71 public ItemStack(ItemLike item) { this(item, 1); } -@@ -207,6 +224,7 @@ public final class ItemStack { +@@ -209,6 +226,7 @@ public final class ItemStack { // CraftBukkit start - make defensive copy as this data may be coming from the save thread this.tag = nbttagcompound.getCompound("tag").copy(); // CraftBukkit end @@ -53,7 +53,7 @@ index 83af6f1af55ab9b0b7ad6f635e24b7c4d1d1829b..a36dac14b03a9af1303ac7f572f2cb71 this.getItem().verifyTagAfterLoad(this.tag); } -@@ -794,6 +812,7 @@ public final class ItemStack { +@@ -807,6 +825,7 @@ public final class ItemStack { public void setTag(@Nullable CompoundTag nbt) { this.tag = nbt; @@ -61,7 +61,7 @@ index 83af6f1af55ab9b0b7ad6f635e24b7c4d1d1829b..a36dac14b03a9af1303ac7f572f2cb71 if (this.getItem().canBeDepleted()) { this.setDamageValue(this.getDamageValue()); } -@@ -1091,6 +1110,7 @@ public final class ItemStack { +@@ -1104,6 +1123,7 @@ public final class ItemStack { ListTag nbttaglist = this.tag.getList("Enchantments", 10); nbttaglist.add(EnchantmentHelper.storeEnchantment(EnchantmentHelper.getEnchantmentId(enchantment), (byte) level)); @@ -70,7 +70,7 @@ index 83af6f1af55ab9b0b7ad6f635e24b7c4d1d1829b..a36dac14b03a9af1303ac7f572f2cb71 public boolean isEnchanted() { diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java -index 1e5ec95e19aca0530c141b6415fe6daca4f2d066..da5e660860a46227c59567f6458a9cf4ac4092eb 100644 +index f4ca58b7e0f5e880f6c8ec71deac57aabf885c7c..a32369d2c15e24ec69cae90e228b8d48775f54e3 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java @@ -6,7 +6,6 @@ import java.util.Map; @@ -184,7 +184,7 @@ index 1e5ec95e19aca0530c141b6415fe6daca4f2d066..da5e660860a46227c59567f6458a9cf4 static Map getEnchantments(net.minecraft.world.item.ItemStack item) { diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java -index 69f71bf44bbc66a38a877c660c8dbc493a0a8327..82cfd1354929f415c74132b7e2bbbfabd9f18758 100644 +index 7500684057dca1bfe615e64da55ef521abb4ed9a..0f8bb870925158199b216421feb328e5b0b55270 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java @@ -6,6 +6,7 @@ import com.google.common.collect.ImmutableList; @@ -211,7 +211,7 @@ index 69f71bf44bbc66a38a877c660c8dbc493a0a8327..82cfd1354929f415c74132b7e2bbbfab import java.util.logging.Level; import java.util.logging.Logger; import javax.annotation.Nonnull; -@@ -273,7 +276,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -275,7 +278,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { private List lore; // null and empty are two different states internally private Integer customModelData; private CompoundTag blockData; @@ -220,7 +220,7 @@ index 69f71bf44bbc66a38a877c660c8dbc493a0a8327..82cfd1354929f415c74132b7e2bbbfab private Multimap attributeModifiers; private int repairCost; private int hideFlag; -@@ -284,7 +287,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -286,7 +289,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { private static final CraftPersistentDataTypeRegistry DATA_TYPE_REGISTRY = new CraftPersistentDataTypeRegistry(); private CompoundTag internalTag; @@ -229,7 +229,7 @@ index 69f71bf44bbc66a38a877c660c8dbc493a0a8327..82cfd1354929f415c74132b7e2bbbfab private CraftPersistentDataContainer persistentDataContainer = new CraftPersistentDataContainer(CraftMetaItem.DATA_TYPE_REGISTRY); private int version = CraftMagicNumbers.INSTANCE.getDataVersion(); // Internal use only -@@ -305,7 +308,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -307,7 +310,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { this.blockData = meta.blockData; if (meta.enchantments != null) { // Spigot @@ -238,7 +238,7 @@ index 69f71bf44bbc66a38a877c660c8dbc493a0a8327..82cfd1354929f415c74132b7e2bbbfab } if (meta.hasAttributeModifiers()) { -@@ -388,13 +391,13 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -390,13 +393,13 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { } } @@ -254,7 +254,7 @@ index 69f71bf44bbc66a38a877c660c8dbc493a0a8327..82cfd1354929f415c74132b7e2bbbfab for (int i = 0; i < ench.size(); i++) { String id = ((CompoundTag) ench.get(i)).getString(ENCHANTMENTS_ID.NBT); -@@ -547,13 +550,13 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -549,13 +552,13 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { } } @@ -270,7 +270,7 @@ index 69f71bf44bbc66a38a877c660c8dbc493a0a8327..82cfd1354929f415c74132b7e2bbbfab for (Map.Entry entry : ench.entrySet()) { // Doctor older enchants String enchantKey = entry.getKey().toString(); -@@ -829,14 +832,14 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -831,14 +834,14 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { @Override public Map getEnchants() { @@ -287,7 +287,7 @@ index 69f71bf44bbc66a38a877c660c8dbc493a0a8327..82cfd1354929f415c74132b7e2bbbfab } if (ignoreRestrictions || level >= ench.getStartLevel() && level <= ench.getMaxLevel()) { -@@ -1224,7 +1227,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1226,7 +1229,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { clone.customModelData = this.customModelData; clone.blockData = this.blockData; if (this.enchantments != null) { @@ -296,7 +296,7 @@ index 69f71bf44bbc66a38a877c660c8dbc493a0a8327..82cfd1354929f415c74132b7e2bbbfab } if (this.hasAttributeModifiers()) { clone.attributeModifiers = LinkedHashMultimap.create(this.attributeModifiers); -@@ -1460,4 +1463,22 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1465,4 +1468,22 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { return CraftMetaItem.HANDLED_TAGS; } } diff --git a/patches/server/0120-Optimize-ItemStack.isEmpty.patch b/patches/server/0120-Optimize-ItemStack.isEmpty.patch index 41fc66ad8..f08ead461 100644 --- a/patches/server/0120-Optimize-ItemStack.isEmpty.patch +++ b/patches/server/0120-Optimize-ItemStack.isEmpty.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Optimize ItemStack.isEmpty() Remove hashMap lookup every check, simplify code to remove ternary diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index a36dac14b03a9af1303ac7f572f2cb71196f644c..58de6780b208934af9fe608c8a47978392b5f6d2 100644 +index 9b358c8e464c67c4953749cda6d2983db98e0c5f..a598b6522ce4d41575f04425d189319fa12a7b70 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java -@@ -250,7 +250,7 @@ public final class ItemStack { +@@ -252,7 +252,7 @@ public final class ItemStack { } public boolean isEmpty() { diff --git a/patches/server/0149-Implement-ensureServerConversions-API.patch b/patches/server/0149-Implement-ensureServerConversions-API.patch index b43014ca3..4cc502c4d 100644 --- a/patches/server/0149-Implement-ensureServerConversions-API.patch +++ b/patches/server/0149-Implement-ensureServerConversions-API.patch @@ -7,10 +7,10 @@ This will take a Bukkit ItemStack and run it through any conversions a server pr to ensure it meets latest minecraft expectations. diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java -index 4c76692e222d8505558aade9c03b3686612f7c0c..70607c9458f58a05ccc94bfcb38dae79bd7ad483 100644 +index eeb01a1b54e450f95b33864b030d2183d29309da..162616d52d06bbaf0c21b190fe7f1a29301732db 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java -@@ -429,5 +429,11 @@ public final class CraftItemFactory implements ItemFactory { +@@ -452,5 +452,11 @@ public final class CraftItemFactory implements ItemFactory { public net.kyori.adventure.text.@org.jetbrains.annotations.NotNull Component displayName(@org.jetbrains.annotations.NotNull ItemStack itemStack) { return io.papermc.paper.adventure.PaperAdventure.asAdventure(CraftItemStack.asNMSCopy(itemStack).getDisplayName()); } diff --git a/patches/server/0150-Implement-getI18NDisplayName.patch b/patches/server/0150-Implement-getI18NDisplayName.patch index c3783748e..16b68e5a8 100644 --- a/patches/server/0150-Implement-getI18NDisplayName.patch +++ b/patches/server/0150-Implement-getI18NDisplayName.patch @@ -8,10 +8,10 @@ Currently the server only supports the English language. To override this, You must replace the language file embedded in the server jar. diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java -index 70607c9458f58a05ccc94bfcb38dae79bd7ad483..45f37c894a9d862fd9d73908d1dae2e8c62262ff 100644 +index 162616d52d06bbaf0c21b190fe7f1a29301732db..53915c38df347f8921677c1c175db3822d319009 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java -@@ -435,5 +435,18 @@ public final class CraftItemFactory implements ItemFactory { +@@ -458,5 +458,18 @@ public final class CraftItemFactory implements ItemFactory { public ItemStack ensureServerConversions(ItemStack item) { return CraftItemStack.asCraftMirror(CraftItemStack.asNMSCopy(item)); } diff --git a/patches/server/0177-Add-ArmorStand-Item-Meta.patch b/patches/server/0177-Add-ArmorStand-Item-Meta.patch index f3dbbdb80..269523a38 100644 --- a/patches/server/0177-Add-ArmorStand-Item-Meta.patch +++ b/patches/server/0177-Add-ArmorStand-Item-Meta.patch @@ -255,10 +255,10 @@ index 4017933f2244fca32cf9d39444f3a4f550e8af01..e721517ce7b52a1aa10d039aa9f309eb + // Paper end } diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java -index 9823ddae9edb40be805332ca1ef4325f9c1df14b..ecfd07e758b7121457df736803fcc5d09f902bc9 100644 +index 0f8bb870925158199b216421feb328e5b0b55270..fb224f9049d023c44138720c9094283044d11220 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java -@@ -1453,6 +1453,14 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1458,6 +1458,14 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { CraftMetaCrossbow.CHARGED.NBT, CraftMetaCrossbow.CHARGED_PROJECTILES.NBT, CraftMetaSuspiciousStew.EFFECTS.NBT, @@ -274,10 +274,10 @@ index 9823ddae9edb40be805332ca1ef4325f9c1df14b..ecfd07e758b7121457df736803fcc5d0 CraftMetaCompass.LODESTONE_POS.NBT, CraftMetaCompass.LODESTONE_TRACKED.NBT, diff --git a/src/test/java/org/bukkit/craftbukkit/inventory/ItemMetaTest.java b/src/test/java/org/bukkit/craftbukkit/inventory/ItemMetaTest.java -index 79665967a2b2faf69d64a641d621d6d5afa7481a..a6887373240ec43d969b733d3182f2dc08faf46d 100644 +index 8b7a9ea385788580cc99db5b2182e849bedc262f..4400f10a592b86488e61521a4fce61adbf656cb9 100644 --- a/src/test/java/org/bukkit/craftbukkit/inventory/ItemMetaTest.java +++ b/src/test/java/org/bukkit/craftbukkit/inventory/ItemMetaTest.java -@@ -342,6 +342,7 @@ public class ItemMetaTest extends AbstractTestingBase { +@@ -364,6 +364,7 @@ public class ItemMetaTest extends AbstractTestingBase { final CraftMetaArmorStand meta = (CraftMetaArmorStand) cleanStack.getItemMeta(); meta.entityTag = new CompoundTag(); meta.entityTag.putBoolean("Small", true); diff --git a/patches/server/0231-Don-t-call-getItemMeta-on-hasItemMeta.patch b/patches/server/0231-Don-t-call-getItemMeta-on-hasItemMeta.patch index a1b4006dd..749cbf37f 100644 --- a/patches/server/0231-Don-t-call-getItemMeta-on-hasItemMeta.patch +++ b/patches/server/0231-Don-t-call-getItemMeta-on-hasItemMeta.patch @@ -11,10 +11,10 @@ Returns true if getDamage() == 0 or has damage tag or other tag is set. Check the `ItemMetaTest#testTaggedButNotMeta` method to see how this method behaves. diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java -index 3726339bff55bafce9d985254c91241c0c20b4b7..f072f5ee75890650957b1c2ca27adc1a84c2bfa1 100644 +index 4f350770fe90166f59c14e88abb34a3e3f494d22..16dd2e9951cf34af0c5bd4891d013423b9fad8b9 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java -@@ -631,7 +631,7 @@ public final class CraftItemStack extends ItemStack { +@@ -654,7 +654,7 @@ public final class CraftItemStack extends ItemStack { @Override public boolean hasItemMeta() { @@ -24,10 +24,10 @@ index 3726339bff55bafce9d985254c91241c0c20b4b7..f072f5ee75890650957b1c2ca27adc1a static boolean hasItemMeta(net.minecraft.world.item.ItemStack item) { diff --git a/src/test/java/org/bukkit/craftbukkit/inventory/ItemMetaTest.java b/src/test/java/org/bukkit/craftbukkit/inventory/ItemMetaTest.java -index a6887373240ec43d969b733d3182f2dc08faf46d..bc5427e6e7221245330723c290dd15abf45ffdda 100644 +index 4400f10a592b86488e61521a4fce61adbf656cb9..7cc7f485325a4277bac7a6eade749dbb3b0b104f 100644 --- a/src/test/java/org/bukkit/craftbukkit/inventory/ItemMetaTest.java +++ b/src/test/java/org/bukkit/craftbukkit/inventory/ItemMetaTest.java -@@ -102,6 +102,34 @@ public class ItemMetaTest extends AbstractTestingBase { +@@ -107,6 +107,34 @@ public class ItemMetaTest extends AbstractTestingBase { assertThat(itemMeta.hasConflictingEnchant(null), is(false)); } diff --git a/patches/server/0256-Allow-chests-to-be-placed-with-NBT-data.patch b/patches/server/0256-Allow-chests-to-be-placed-with-NBT-data.patch index 9f2f255d9..df898121d 100644 --- a/patches/server/0256-Allow-chests-to-be-placed-with-NBT-data.patch +++ b/patches/server/0256-Allow-chests-to-be-placed-with-NBT-data.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Allow chests to be placed with NBT data diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index 58de6780b208934af9fe608c8a47978392b5f6d2..fa83827a80335ac1075f28c9acdfe7ca2ada8790 100644 +index a598b6522ce4d41575f04425d189319fa12a7b70..57661672d02b19c864bb267c09b2fa433e716b7b 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java -@@ -370,6 +370,7 @@ public final class ItemStack { +@@ -372,6 +372,7 @@ public final class ItemStack { enuminteractionresult = InteractionResult.FAIL; // cancel placement // PAIL: Remove this when MC-99075 fixed placeEvent.getPlayer().updateInventory(); diff --git a/patches/server/0258-Implement-an-API-for-CanPlaceOn-and-CanDestroy-NBT-v.patch b/patches/server/0258-Implement-an-API-for-CanPlaceOn-and-CanDestroy-NBT-v.patch index c91278544..a93ea72ff 100644 --- a/patches/server/0258-Implement-an-API-for-CanPlaceOn-and-CanDestroy-NBT-v.patch +++ b/patches/server/0258-Implement-an-API-for-CanPlaceOn-and-CanDestroy-NBT-v.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Implement an 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 ecfd07e758b7121457df736803fcc5d09f902bc9..90fa86ad21c7d671ea09145c8bd1c68dfaa14f2d 100644 +index fb224f9049d023c44138720c9094283044d11220..ad749401f8b473b3c7c239fea3af772014a29357 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java @@ -83,6 +83,12 @@ import org.bukkit.persistence.PersistentDataContainer; @@ -21,7 +21,7 @@ index ecfd07e758b7121457df736803fcc5d09f902bc9..90fa86ad21c7d671ea09145c8bd1c68d /** * Children must include the following: * -@@ -269,6 +275,10 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -271,6 +277,10 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { @Specific(Specific.To.NBT) static final ItemMetaKey BLOCK_DATA = new ItemMetaKey("BlockStateTag"); static final ItemMetaKey BUKKIT_CUSTOM_TAG = new ItemMetaKey("PublicBukkitValues"); @@ -32,7 +32,7 @@ index ecfd07e758b7121457df736803fcc5d09f902bc9..90fa86ad21c7d671ea09145c8bd1c68d // We store the raw original JSON representation of all text data. See SPIGOT-5063, SPIGOT-5656, SPIGOT-5304 private String displayName; -@@ -282,6 +292,10 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -284,6 +294,10 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { private int hideFlag; private boolean unbreakable; private int damage; @@ -43,7 +43,7 @@ index ecfd07e758b7121457df736803fcc5d09f902bc9..90fa86ad21c7d671ea09145c8bd1c68d private static final Set HANDLED_TAGS = Sets.newHashSet(); private static final CraftPersistentDataTypeRegistry DATA_TYPE_REGISTRY = new CraftPersistentDataTypeRegistry(); -@@ -319,6 +333,15 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -321,6 +335,15 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { this.hideFlag = meta.hideFlag; this.unbreakable = meta.unbreakable; this.damage = meta.damage; @@ -59,7 +59,7 @@ index ecfd07e758b7121457df736803fcc5d09f902bc9..90fa86ad21c7d671ea09145c8bd1c68d this.unhandledTags.putAll(meta.unhandledTags); this.persistentDataContainer.putAll(meta.persistentDataContainer.getRaw()); -@@ -382,6 +405,31 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -384,6 +407,31 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { this.persistentDataContainer.put(key, compound.get(key).copy()); } } @@ -91,7 +91,7 @@ index ecfd07e758b7121457df736803fcc5d09f902bc9..90fa86ad21c7d671ea09145c8bd1c68d Set keys = tag.getAllKeys(); for (String key : keys) { -@@ -520,6 +568,34 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -522,6 +570,34 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { this.setDamage(damage); } @@ -126,7 +126,7 @@ index ecfd07e758b7121457df736803fcc5d09f902bc9..90fa86ad21c7d671ea09145c8bd1c68d String internal = SerializableMeta.getString(map, "internal", true); if (internal != null) { ByteArrayInputStream buf = new ByteArrayInputStream(Base64.getDecoder().decode(internal)); -@@ -648,6 +724,23 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -650,6 +726,23 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { if (this.hasDamage()) { itemTag.putInt(DAMAGE.NBT, damage); } @@ -150,7 +150,7 @@ index ecfd07e758b7121457df736803fcc5d09f902bc9..90fa86ad21c7d671ea09145c8bd1c68d for (Map.Entry e : this.unhandledTags.entrySet()) { itemTag.put(e.getKey(), e.getValue()); -@@ -664,6 +757,21 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -666,6 +759,21 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { } } @@ -172,7 +172,7 @@ index ecfd07e758b7121457df736803fcc5d09f902bc9..90fa86ad21c7d671ea09145c8bd1c68d ListTag createStringList(List list) { if (list == null) { return null; -@@ -747,7 +855,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -749,7 +857,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { @Overridden boolean isEmpty() { @@ -181,7 +181,7 @@ index ecfd07e758b7121457df736803fcc5d09f902bc9..90fa86ad21c7d671ea09145c8bd1c68d } // Paper start -@@ -1178,7 +1286,11 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1180,7 +1288,11 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { && (this.hideFlag == that.hideFlag) && (this.isUnbreakable() == that.isUnbreakable()) && (this.hasDamage() ? that.hasDamage() && this.damage == that.damage : !that.hasDamage()) @@ -194,7 +194,7 @@ index ecfd07e758b7121457df736803fcc5d09f902bc9..90fa86ad21c7d671ea09145c8bd1c68d } /** -@@ -1213,6 +1325,10 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1215,6 +1327,10 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { hash = 61 * hash + (this.hasDamage() ? this.damage : 0); hash = 61 * hash + (this.hasAttributeModifiers() ? this.attributeModifiers.hashCode() : 0); hash = 61 * hash + this.version; @@ -205,7 +205,7 @@ index ecfd07e758b7121457df736803fcc5d09f902bc9..90fa86ad21c7d671ea09145c8bd1c68d return hash; } -@@ -1237,6 +1353,14 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1239,6 +1355,14 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { clone.unbreakable = this.unbreakable; clone.damage = this.damage; clone.version = this.version; @@ -220,7 +220,7 @@ index ecfd07e758b7121457df736803fcc5d09f902bc9..90fa86ad21c7d671ea09145c8bd1c68d return clone; } catch (CloneNotSupportedException e) { throw new Error(e); -@@ -1294,6 +1418,23 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1296,6 +1420,23 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { builder.put(DAMAGE.BUKKIT, damage); } @@ -244,7 +244,7 @@ index ecfd07e758b7121457df736803fcc5d09f902bc9..90fa86ad21c7d671ea09145c8bd1c68d final Map internalTags = new HashMap(this.unhandledTags); this.serializeInternal(internalTags); if (!internalTags.isEmpty()) { -@@ -1460,6 +1601,8 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1465,6 +1606,8 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { CraftMetaArmorStand.SHOW_ARMS.NBT, CraftMetaArmorStand.SMALL.NBT, CraftMetaArmorStand.MARKER.NBT, @@ -253,7 +253,7 @@ index ecfd07e758b7121457df736803fcc5d09f902bc9..90fa86ad21c7d671ea09145c8bd1c68d // Paper end CraftMetaCompass.LODESTONE_DIMENSION.NBT, CraftMetaCompass.LODESTONE_POS.NBT, -@@ -1489,4 +1632,146 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1494,4 +1637,146 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { } // Paper end diff --git a/patches/server/0436-Convert-legacy-attributes-in-Item-Meta.patch b/patches/server/0436-Convert-legacy-attributes-in-Item-Meta.patch index 788e18f58..e582cd59d 100644 --- a/patches/server/0436-Convert-legacy-attributes-in-Item-Meta.patch +++ b/patches/server/0436-Convert-legacy-attributes-in-Item-Meta.patch @@ -30,10 +30,10 @@ index fac4097be2ee3d0bffbc92fb217f98831e78d6b3..233e372ba5d785352c9ac12dac37395b public CraftAttributeMap(AttributeMap handle) { this.handle = handle; diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java -index 90fa86ad21c7d671ea09145c8bd1c68dfaa14f2d..0b76155d77d048338c62651ab150d281c9cb795a 100644 +index ad749401f8b473b3c7c239fea3af772014a29357..67d5a3f758eac50111c75ff3cd432f875cbe4ced 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java -@@ -481,7 +481,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -483,7 +483,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { AttributeModifier attribMod = CraftAttributeInstance.convert(nmsModifier); diff --git a/patches/server/0439-Support-components-in-ItemMeta.patch b/patches/server/0439-Support-components-in-ItemMeta.patch index b48f82f2f..7645c0cd1 100644 --- a/patches/server/0439-Support-components-in-ItemMeta.patch +++ b/patches/server/0439-Support-components-in-ItemMeta.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Support components in ItemMeta diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java -index 0b76155d77d048338c62651ab150d281c9cb795a..0187d1aa196d358febd07633a3cb71845ea99698 100644 +index 67d5a3f758eac50111c75ff3cd432f875cbe4ced..ad202473abbe4b302b825d9dd9dd75402190e824 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java -@@ -875,11 +875,23 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -877,11 +877,23 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { return CraftChatMessage.fromJSONComponent(displayName); } @@ -32,7 +32,7 @@ index 0b76155d77d048338c62651ab150d281c9cb795a..0187d1aa196d358febd07633a3cb7184 @Override public boolean hasDisplayName() { return this.displayName != null; -@@ -1022,6 +1034,14 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1024,6 +1036,14 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { return this.lore == null ? null : new ArrayList(Lists.transform(this.lore, CraftChatMessage::fromJSONComponent)); } @@ -47,7 +47,7 @@ index 0b76155d77d048338c62651ab150d281c9cb795a..0187d1aa196d358febd07633a3cb7184 @Override public void setLore(List lore) { if (lore == null || lore.isEmpty()) { -@@ -1036,6 +1056,21 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1038,6 +1058,21 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { } } @@ -69,7 +69,7 @@ index 0b76155d77d048338c62651ab150d281c9cb795a..0187d1aa196d358febd07633a3cb7184 @Override public boolean hasCustomModelData() { return this.customModelData != null; -@@ -1503,6 +1538,11 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1505,6 +1540,11 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { } for (Object object : addFrom) { diff --git a/patches/server/0442-Update-itemstack-legacy-name-and-lore.patch b/patches/server/0442-Update-itemstack-legacy-name-and-lore.patch index d124b53a4..4f3d35e97 100644 --- a/patches/server/0442-Update-itemstack-legacy-name-and-lore.patch +++ b/patches/server/0442-Update-itemstack-legacy-name-and-lore.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Update itemstack legacy name and lore diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index fa83827a80335ac1075f28c9acdfe7ca2ada8790..e4e2d3676c354218e1d334a89a082c5f57a09673 100644 +index 57661672d02b19c864bb267c09b2fa433e716b7b..3cb83cfeb2709384ef4f7dd74694d47d55698c1f 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java -@@ -171,6 +171,44 @@ public final class ItemStack { +@@ -173,6 +173,44 @@ public final class ItemStack { list.sort((java.util.Comparator) enchantSorter); // Paper } catch (Exception ignored) {} } @@ -53,7 +53,7 @@ index fa83827a80335ac1075f28c9acdfe7ca2ada8790..e4e2d3676c354218e1d334a89a082c5f // Paper end public ItemStack(ItemLike item) { -@@ -225,6 +263,7 @@ public final class ItemStack { +@@ -227,6 +265,7 @@ public final class ItemStack { this.tag = nbttagcompound.getCompound("tag").copy(); // CraftBukkit end this.processEnchantOrder(this.tag); // Paper diff --git a/patches/server/0468-PortalCreateEvent-needs-to-know-its-entity.patch b/patches/server/0468-PortalCreateEvent-needs-to-know-its-entity.patch index 652769138..075a43d9c 100644 --- a/patches/server/0468-PortalCreateEvent-needs-to-know-its-entity.patch +++ b/patches/server/0468-PortalCreateEvent-needs-to-know-its-entity.patch @@ -5,10 +5,10 @@ Subject: [PATCH] PortalCreateEvent needs to know its entity diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index e4e2d3676c354218e1d334a89a082c5f57a09673..9a4a05668fec49e488dbf644c083c5b67c4dde93 100644 +index 3cb83cfeb2709384ef4f7dd74694d47d55698c1f..36c560ea3b33ef854f2190d07209b7f36c6d7e6b 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java -@@ -441,7 +441,7 @@ public final class ItemStack { +@@ -443,7 +443,7 @@ public final class ItemStack { net.minecraft.world.level.block.state.BlockState block = world.getBlockState(newblockposition); if (!(block.getBlock() instanceof BaseEntityBlock)) { // Containers get placed automatically diff --git a/patches/server/0472-Create-HoverEvent-from-ItemStack-Entity.patch b/patches/server/0472-Create-HoverEvent-from-ItemStack-Entity.patch index f6ec320c4..fe9f8500d 100644 --- a/patches/server/0472-Create-HoverEvent-from-ItemStack-Entity.patch +++ b/patches/server/0472-Create-HoverEvent-from-ItemStack-Entity.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Create HoverEvent from ItemStack Entity diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java -index 45f37c894a9d862fd9d73908d1dae2e8c62262ff..081a92415d8a19da4f342e8febee62c844458cb9 100644 +index 53915c38df347f8921677c1c175db3822d319009..69d5a9923d1eff576bd3058d6bcc278340d069ca 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java -@@ -448,5 +448,40 @@ public final class CraftItemFactory implements ItemFactory { +@@ -471,5 +471,40 @@ public final class CraftItemFactory implements ItemFactory { return nms != null ? net.minecraft.locale.Language.getInstance().getOrDefault(nms.getItem().getDescriptionId(nms)) : null; } diff --git a/patches/server/0546-TODO-Registry-Modification-API.patch b/patches/server/0546-TODO-Registry-Modification-API.patch index 8c74989e1..9206b252a 100644 --- a/patches/server/0546-TODO-Registry-Modification-API.patch +++ b/patches/server/0546-TODO-Registry-Modification-API.patch @@ -5,12 +5,12 @@ Subject: [PATCH] TODO Registry Modification API diff --git a/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java b/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java -index 763f9d4740429840e78d3462277eb577d2d9f66a..2ab8919bddfb286255041351b55fc6d70a1bc76f 100644 +index ffc6d04135da7ce09ea5f4fdd5ad47a135f4853a..73dcaeed6de3ddbc5d8f34b667a6588f38fc9879 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java -@@ -26,6 +26,7 @@ public class CraftRegistry implements Registry { - if (bukkitClass == StructureType.class) { - return new CraftRegistry<>(BuiltInRegistries.STRUCTURE_TYPE, CraftStructureType::new); +@@ -36,6 +36,7 @@ public class CraftRegistry implements Registry { + if (bukkitClass == TrimPattern.class) { + return new CraftRegistry<>(registryHolder.registryOrThrow(Registries.TRIM_PATTERN), CraftTrimPattern::new); } + // TODO registry modification API diff --git a/patches/server/0547-Add-StructuresLocateEvent.patch b/patches/server/0547-Add-StructuresLocateEvent.patch index bd336bc18..61c53d9c4 100644 --- a/patches/server/0547-Add-StructuresLocateEvent.patch +++ b/patches/server/0547-Add-StructuresLocateEvent.patch @@ -76,11 +76,11 @@ index 56033c41c2be567d6787420d319d4603fc0a1d10..354d386940b5ee7c92708390b83db51c Map>> map = new Object2ObjectArrayMap(); Iterator iterator = structures.iterator(); diff --git a/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java b/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java -index 2ab8919bddfb286255041351b55fc6d70a1bc76f..34888b525fd35ac64e6e5e66036ad965a6769959 100644 +index 73dcaeed6de3ddbc5d8f34b667a6588f38fc9879..220686d21f57e4b11b4e8b93599e511019fda702 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java -@@ -27,6 +27,11 @@ public class CraftRegistry implements Registry { - return new CraftRegistry<>(BuiltInRegistries.STRUCTURE_TYPE, CraftStructureType::new); +@@ -37,6 +37,11 @@ public class CraftRegistry implements Registry { + return new CraftRegistry<>(registryHolder.registryOrThrow(Registries.TRIM_PATTERN), CraftTrimPattern::new); } // TODO registry modification API + // Paper start - remove this after a while along with all ConfiguredStructure stuff diff --git a/patches/server/0639-Make-item-validations-configurable.patch b/patches/server/0639-Make-item-validations-configurable.patch index 4dc205dda..f8a66d7e9 100644 --- a/patches/server/0639-Make-item-validations-configurable.patch +++ b/patches/server/0639-Make-item-validations-configurable.patch @@ -32,10 +32,10 @@ index e8413ad360e9b6c4eef13edf9dd0095e7e64bce2..a5d7fae348b0b262a0a8a5e8e76f1bc7 } } diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java -index 0187d1aa196d358febd07633a3cb71845ea99698..34f27913dc80915135bb476447dcbff9b32e302c 100644 +index ad202473abbe4b302b825d9dd9dd75402190e824..9fc74007bd887ab71dea9dcfdc1e3017036d0bfc 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java -@@ -358,7 +358,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -360,7 +360,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { CompoundTag display = tag.getCompound(DISPLAY.NBT); if (display.contains(NAME.NBT)) { @@ -44,7 +44,7 @@ index 0187d1aa196d358febd07633a3cb71845ea99698..34f27913dc80915135bb476447dcbff9 } if (display.contains(LOCNAME.NBT)) { -@@ -369,7 +369,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -371,7 +371,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { ListTag list = display.getList(LORE.NBT, CraftMagicNumbers.NBT.TAG_STRING); this.lore = new ArrayList(list.size()); for (int index = 0; index < list.size(); index++) { diff --git a/patches/server/0669-Added-EntityDamageItemEvent.patch b/patches/server/0669-Added-EntityDamageItemEvent.patch index 7df41d544..98611d0ad 100644 --- a/patches/server/0669-Added-EntityDamageItemEvent.patch +++ b/patches/server/0669-Added-EntityDamageItemEvent.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Added EntityDamageItemEvent diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index 9a4a05668fec49e488dbf644c083c5b67c4dde93..1bc9cb46e7ceb274bad7ca02b7bc834e96111f56 100644 +index 36c560ea3b33ef854f2190d07209b7f36c6d7e6b..8b7d4b0bdb18067213462492ce4b8af2477a111b 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java -@@ -570,7 +570,7 @@ public final class ItemStack { +@@ -583,7 +583,7 @@ public final class ItemStack { return this.getItem().getMaxDamage(); } @@ -17,7 +17,7 @@ index 9a4a05668fec49e488dbf644c083c5b67c4dde93..1bc9cb46e7ceb274bad7ca02b7bc834e if (!this.isDamageableItem()) { return false; } else { -@@ -588,8 +588,8 @@ public final class ItemStack { +@@ -601,8 +601,8 @@ public final class ItemStack { amount -= k; // CraftBukkit start @@ -28,7 +28,7 @@ index 9a4a05668fec49e488dbf644c083c5b67c4dde93..1bc9cb46e7ceb274bad7ca02b7bc834e event.getPlayer().getServer().getPluginManager().callEvent(event); if (amount != event.getDamage() || event.isCancelled()) { -@@ -600,6 +600,14 @@ public final class ItemStack { +@@ -613,6 +613,14 @@ public final class ItemStack { } amount = event.getDamage(); @@ -43,7 +43,7 @@ index 9a4a05668fec49e488dbf644c083c5b67c4dde93..1bc9cb46e7ceb274bad7ca02b7bc834e } // CraftBukkit end if (amount <= 0) { -@@ -607,8 +615,8 @@ public final class ItemStack { +@@ -620,8 +628,8 @@ public final class ItemStack { } } @@ -54,7 +54,7 @@ index 9a4a05668fec49e488dbf644c083c5b67c4dde93..1bc9cb46e7ceb274bad7ca02b7bc834e } j = this.getDamageValue() + amount; -@@ -620,7 +628,7 @@ public final class ItemStack { +@@ -633,7 +641,7 @@ public final class ItemStack { public void hurtAndBreak(int amount, T entity, Consumer breakCallback) { if (!entity.level.isClientSide && (!(entity instanceof net.minecraft.world.entity.player.Player) || !((net.minecraft.world.entity.player.Player) entity).getAbilities().instabuild)) { if (this.isDamageableItem()) { diff --git a/patches/server/0684-Add-ItemFactory-getSpawnEgg-API.patch b/patches/server/0684-Add-ItemFactory-getSpawnEgg-API.patch index 4f2e8cf01..29c5f4f88 100644 --- a/patches/server/0684-Add-ItemFactory-getSpawnEgg-API.patch +++ b/patches/server/0684-Add-ItemFactory-getSpawnEgg-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add ItemFactory#getSpawnEgg API diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java -index 081a92415d8a19da4f342e8febee62c844458cb9..3c72c95872365a66a19793a613c008720fc681ac 100644 +index 69d5a9923d1eff576bd3058d6bcc278340d069ca..8c1bf102fea9e5441a685530155a3170becd7f9c 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java -@@ -483,5 +483,17 @@ public final class CraftItemFactory implements ItemFactory { +@@ -506,5 +506,17 @@ public final class CraftItemFactory implements ItemFactory { entity.getUniqueId().toString(), new net.md_5.bungee.api.chat.TextComponent(customName)); } diff --git a/patches/server/0794-Fix-cancelled-powdered-snow-bucket-placement.patch b/patches/server/0794-Fix-cancelled-powdered-snow-bucket-placement.patch index fb79377f7..5e05a6438 100644 --- a/patches/server/0794-Fix-cancelled-powdered-snow-bucket-placement.patch +++ b/patches/server/0794-Fix-cancelled-powdered-snow-bucket-placement.patch @@ -20,10 +20,10 @@ index e581dc10f3c805f7f8b6e4c842092609e7e1a0f8..b0204af850ee182773ad458208cccd94 } return InteractionResult.FAIL; diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index 1bc9cb46e7ceb274bad7ca02b7bc834e96111f56..32e617461d603c3f8e968e82bb1d2e7e14b19aa2 100644 +index 8b7d4b0bdb18067213462492ce4b8af2477a111b..8778b35890b36ff4c13704968f73934e53d7bd6b 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java -@@ -346,7 +346,7 @@ public final class ItemStack { +@@ -348,7 +348,7 @@ public final class ItemStack { int oldCount = this.getCount(); ServerLevel world = (ServerLevel) itemactioncontext.getLevel(); @@ -32,7 +32,7 @@ index 1bc9cb46e7ceb274bad7ca02b7bc834e96111f56..32e617461d603c3f8e968e82bb1d2e7e world.captureBlockStates = true; // special case bonemeal if (this.getItem() == Items.BONE_MEAL) { -@@ -401,7 +401,7 @@ public final class ItemStack { +@@ -403,7 +403,7 @@ public final class ItemStack { world.capturedBlockStates.clear(); if (blocks.size() > 1) { placeEvent = org.bukkit.craftbukkit.event.CraftEventFactory.callBlockMultiPlaceEvent(world, entityhuman, enumhand, blocks, blockposition.getX(), blockposition.getY(), blockposition.getZ()); diff --git a/patches/server/0814-Implement-enchantWithLevels-API.patch b/patches/server/0814-Implement-enchantWithLevels-API.patch index fb48d749b..f1679a729 100644 --- a/patches/server/0814-Implement-enchantWithLevels-API.patch +++ b/patches/server/0814-Implement-enchantWithLevels-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Implement enchantWithLevels API diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java -index 3c72c95872365a66a19793a613c008720fc681ac..83bbfe1ffd0dc8e168064225a02abcaa49df60ed 100644 +index 8c1bf102fea9e5441a685530155a3170becd7f9c..9a87b32a4bf0a912b8de267d71e56c8505db0e9f 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java -@@ -419,6 +419,21 @@ public final class CraftItemFactory implements ItemFactory { +@@ -442,6 +442,21 @@ public final class CraftItemFactory implements ItemFactory { } // Paper start diff --git a/patches/server/0830-Add-pre-unbreaking-amount-to-PlayerItemDamageEvent.patch b/patches/server/0830-Add-pre-unbreaking-amount-to-PlayerItemDamageEvent.patch index ccfe7950d..ed9408801 100644 --- a/patches/server/0830-Add-pre-unbreaking-amount-to-PlayerItemDamageEvent.patch +++ b/patches/server/0830-Add-pre-unbreaking-amount-to-PlayerItemDamageEvent.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add pre-unbreaking amount to PlayerItemDamageEvent diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index 32e617461d603c3f8e968e82bb1d2e7e14b19aa2..75ee1abaadabbe8add0972c48780f5e7b85df069 100644 +index 8778b35890b36ff4c13704968f73934e53d7bd6b..ce51f1768275fab434d46b5aa349dfdd2b631977 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java -@@ -586,10 +586,11 @@ public final class ItemStack { +@@ -599,10 +599,11 @@ public final class ItemStack { } } diff --git a/patches/server/0832-Fix-NPE-for-BlockDataMeta-getBlockData.patch b/patches/server/0832-Fix-NPE-for-BlockDataMeta-getBlockData.patch index 9dbd19d49..5057c9d0d 100644 --- a/patches/server/0832-Fix-NPE-for-BlockDataMeta-getBlockData.patch +++ b/patches/server/0832-Fix-NPE-for-BlockDataMeta-getBlockData.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Fix NPE for BlockDataMeta#getBlockData diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java -index 34f27913dc80915135bb476447dcbff9b32e302c..58c1d07f41fc382b23df17739090f5031fd41aad 100644 +index 9fc74007bd887ab71dea9dcfdc1e3017036d0bfc..936f8babf74b2be6240e5dbc2d0a84f8badada2e 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java -@@ -1094,7 +1094,10 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1096,7 +1096,10 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { @Override public BlockData getBlockData(Material material) { diff --git a/patches/server/0965-Optimize-Hoppers.patch b/patches/server/0965-Optimize-Hoppers.patch index 79e1fb029..c2d5d3f03 100644 --- a/patches/server/0965-Optimize-Hoppers.patch +++ b/patches/server/0965-Optimize-Hoppers.patch @@ -25,10 +25,10 @@ index fbc06f45926e9073c95c97423f92a213898fcd48..9f15d9dbdfa74a0640b1a2b4ff695609 this.profiler.push(() -> { diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index 75ee1abaadabbe8add0972c48780f5e7b85df069..a6253272205337b3b855679b3057c2519a807a4c 100644 +index ce51f1768275fab434d46b5aa349dfdd2b631977..1aac66a8ef170f172b7cf4045d77800f93e26d3a 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java -@@ -697,10 +697,16 @@ public final class ItemStack { +@@ -710,10 +710,16 @@ public final class ItemStack { } public ItemStack copy() { diff --git a/patches/server/0966-Fix-beehives-generating-from-using-bonemeal.patch b/patches/server/0966-Fix-beehives-generating-from-using-bonemeal.patch index 2157e12c6..f48130ef6 100644 --- a/patches/server/0966-Fix-beehives-generating-from-using-bonemeal.patch +++ b/patches/server/0966-Fix-beehives-generating-from-using-bonemeal.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Fix beehives generating from using bonemeal diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index a6253272205337b3b855679b3057c2519a807a4c..d690b8d0c1da1f56b226376df8c76c34375e3c73 100644 +index 1aac66a8ef170f172b7cf4045d77800f93e26d3a..fd6c80d6cb83ab2dc0fca913655eea8cc68dd5a6 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java -@@ -386,6 +386,7 @@ public final class ItemStack { +@@ -388,6 +388,7 @@ public final class ItemStack { } for (CraftBlockState blockstate : blocks) { world.setBlock(blockstate.getPosition(),blockstate.getHandle(), blockstate.getFlag()); // SPIGOT-7248 - manual update to avoid physics where appropriate diff --git a/patches/server/0968-Fix-api-checking-banned-ips.patch b/patches/server/0967-Fix-api-checking-banned-ips.patch similarity index 100% rename from patches/server/0968-Fix-api-checking-banned-ips.patch rename to patches/server/0967-Fix-api-checking-banned-ips.patch diff --git a/patches/server/0967-Properly-cancel-bed-block-placement.patch b/patches/server/0967-Properly-cancel-bed-block-placement.patch deleted file mode 100644 index b6c7ef8f4..000000000 --- a/patches/server/0967-Properly-cancel-bed-block-placement.patch +++ /dev/null @@ -1,19 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Jake Potrebic -Date: Sun, 26 Mar 2023 13:17:41 -0700 -Subject: [PATCH] Properly cancel bed block placement - - -diff --git a/src/main/java/net/minecraft/world/level/block/BedBlock.java b/src/main/java/net/minecraft/world/level/block/BedBlock.java -index 96434f14525a2159f335b94aad95081f488fadf3..3aa79a441ac4bd6b4d87d19bdb3011455210fd41 100644 ---- a/src/main/java/net/minecraft/world/level/block/BedBlock.java -+++ b/src/main/java/net/minecraft/world/level/block/BedBlock.java -@@ -363,7 +363,7 @@ public class BedBlock extends HorizontalDirectionalBlock implements EntityBlock - - world.setBlock(blockposition1, (BlockState) state.setValue(BedBlock.PART, BedPart.HEAD), 3); - world.blockUpdated(pos, Blocks.AIR); -- state.updateNeighbourShapes(world, pos, 3); -+ // state.updateNeighbourShapes(world, pos, 3); // Paper - shapes will be updated on successful block place - } - - } diff --git a/patches/server/0969-Fix-crash-relating-to-bad-recipes-in-furnace-like-ti.patch b/patches/server/0968-Fix-crash-relating-to-bad-recipes-in-furnace-like-ti.patch similarity index 100% rename from patches/server/0969-Fix-crash-relating-to-bad-recipes-in-furnace-like-ti.patch rename to patches/server/0968-Fix-crash-relating-to-bad-recipes-in-furnace-like-ti.patch diff --git a/patches/server/0970-Treat-sequence-violations-like-they-should-be.patch b/patches/server/0969-Treat-sequence-violations-like-they-should-be.patch similarity index 100% rename from patches/server/0970-Treat-sequence-violations-like-they-should-be.patch rename to patches/server/0969-Treat-sequence-violations-like-they-should-be.patch diff --git a/patches/server/0971-remove-duplicate-animate-packet-for-records.patch b/patches/server/0970-remove-duplicate-animate-packet-for-records.patch similarity index 100% rename from patches/server/0971-remove-duplicate-animate-packet-for-records.patch rename to patches/server/0970-remove-duplicate-animate-packet-for-records.patch diff --git a/patches/server/0972-Prevent-causing-expired-keys-from-impacting-new-join.patch b/patches/server/0971-Prevent-causing-expired-keys-from-impacting-new-join.patch similarity index 100% rename from patches/server/0972-Prevent-causing-expired-keys-from-impacting-new-join.patch rename to patches/server/0971-Prevent-causing-expired-keys-from-impacting-new-join.patch diff --git a/patches/server/0973-Prevent-GameEvents-being-fired-from-unloaded-chunks.patch b/patches/server/0972-Prevent-GameEvents-being-fired-from-unloaded-chunks.patch similarity index 100% rename from patches/server/0973-Prevent-GameEvents-being-fired-from-unloaded-chunks.patch rename to patches/server/0972-Prevent-GameEvents-being-fired-from-unloaded-chunks.patch diff --git a/patches/server/0974-Use-array-for-gamerule-storage.patch b/patches/server/0973-Use-array-for-gamerule-storage.patch similarity index 100% rename from patches/server/0974-Use-array-for-gamerule-storage.patch rename to patches/server/0973-Use-array-for-gamerule-storage.patch diff --git a/patches/server/0975-Fix-block-place-logic.patch b/patches/server/0974-Fix-block-place-logic.patch similarity index 95% rename from patches/server/0975-Fix-block-place-logic.patch rename to patches/server/0974-Fix-block-place-logic.patch index 0191cb1f5..6d40e97af 100644 --- a/patches/server/0975-Fix-block-place-logic.patch +++ b/patches/server/0974-Fix-block-place-logic.patch @@ -39,10 +39,10 @@ index f8f8392ba16838449354e78f0ce69af37b0b7fed..91caa607a21bfb61849826949b59bcda return bl; diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index d690b8d0c1da1f56b226376df8c76c34375e3c73..3bfef8ed7dd73f603aef06172f362bb0ed0a5c83 100644 +index fd6c80d6cb83ab2dc0fca913655eea8cc68dd5a6..a7533d18fe6148d7bfd3106b9cdcb6fa3347cf7c 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java -@@ -456,13 +456,7 @@ public final class ItemStack { +@@ -458,13 +458,7 @@ public final class ItemStack { if (tileentity instanceof JukeboxBlockEntity) { JukeboxBlockEntity tileentityjukebox = (JukeboxBlockEntity) tileentity; @@ -57,7 +57,7 @@ index d690b8d0c1da1f56b226376df8c76c34375e3c73..3bfef8ed7dd73f603aef06172f362bb0 world.gameEvent(GameEvent.BLOCK_CHANGE, blockposition, GameEvent.Context.of(entityhuman, world.getBlockState(blockposition))); } -@@ -488,7 +482,7 @@ public final class ItemStack { +@@ -490,7 +484,7 @@ public final class ItemStack { } // SPIGOT-4678 diff --git a/work/Bukkit b/work/Bukkit index 5efeb7bdb..eb4b416d2 160000 --- a/work/Bukkit +++ b/work/Bukkit @@ -1 +1 @@ -Subproject commit 5efeb7bdbfa459cd0a59aa6a8941ff962662617f +Subproject commit eb4b416d2b270c01dba22a583204e62c4440dd3d diff --git a/work/CraftBukkit b/work/CraftBukkit index be8682aa8..19de3550d 160000 --- a/work/CraftBukkit +++ b/work/CraftBukkit @@ -1 +1 @@ -Subproject commit be8682aa824764ebf811107c5eb928ffad6c1af5 +Subproject commit 19de3550d85d736cdf1ae0838fe7891576985e49 diff --git a/work/Spigot b/work/Spigot index b31949f2f..d2fdfe391 160000 --- a/work/Spigot +++ b/work/Spigot @@ -1 +1 @@ -Subproject commit b31949f2f33ef94ed07dbe37fb00939cf049a989 +Subproject commit d2fdfe39154577ac5ee1dac1672eab79a9577dc2