Fix jukebox component (#11642)
This commit is contained in:
parent
915637df5c
commit
751e9bd125
5 changed files with 206 additions and 211 deletions
|
@ -158,7 +158,7 @@ index 0000000000000000000000000000000000000000..e2266d86a4dd1bf20346e48c428f8baf
|
|||
+}
|
||||
diff --git a/src/main/java/io/papermc/paper/datacomponent/DataComponentTypes.java b/src/main/java/io/papermc/paper/datacomponent/DataComponentTypes.java
|
||||
new file mode 100644
|
||||
index 0000000000000000000000000000000000000000..e79737ae012179fc7c89b14af8801b8b09fa042b
|
||||
index 0000000000000000000000000000000000000000..68284abd5c4358617ee7766101e942f81a001e2c
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/io/papermc/paper/datacomponent/DataComponentTypes.java
|
||||
@@ -0,0 +1,344 @@
|
||||
|
@ -322,9 +322,9 @@ index 0000000000000000000000000000000000000000..e79737ae012179fc7c89b14af8801b8b
|
|||
+ * If not present, has an implicit default value of: {@code 0}.
|
||||
+ */
|
||||
+ public static final DataComponentType.Valued<@NonNegative Integer> REPAIR_COST = valued("repair_cost");
|
||||
+ /**
|
||||
+ * Causes an item to not be pickable in the creative menu, currently not very useful.
|
||||
+ */
|
||||
+ // /**
|
||||
+ // * Causes an item to not be pickable in the creative menu, currently not very useful.
|
||||
+ // */
|
||||
+ // public static final DataComponentType.NonValued CREATIVE_SLOT_LOCK = unvalued("creative_slot_lock");
|
||||
+ /**
|
||||
+ * Overrides the enchantment glint effect on an item.
|
||||
|
@ -508,14 +508,13 @@ index 0000000000000000000000000000000000000000..e79737ae012179fc7c89b14af8801b8b
|
|||
+}
|
||||
diff --git a/src/main/java/io/papermc/paper/datacomponent/item/BannerPatternLayers.java b/src/main/java/io/papermc/paper/datacomponent/item/BannerPatternLayers.java
|
||||
new file mode 100644
|
||||
index 0000000000000000000000000000000000000000..12cfae82234b8c4cb231ab91e72ad82d28b85183
|
||||
index 0000000000000000000000000000000000000000..785b5db96bb5a0584647f2ed41fcd882ab6b3250
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/io/papermc/paper/datacomponent/item/BannerPatternLayers.java
|
||||
@@ -0,0 +1,66 @@
|
||||
@@ -0,0 +1,65 @@
|
||||
+package io.papermc.paper.datacomponent.item;
|
||||
+
|
||||
+import io.papermc.paper.datacomponent.DataComponentBuilder;
|
||||
+import java.util.Arrays;
|
||||
+import java.util.List;
|
||||
+import org.bukkit.block.banner.Pattern;
|
||||
+import org.jetbrains.annotations.ApiStatus;
|
||||
|
@ -637,14 +636,13 @@ index 0000000000000000000000000000000000000000..65f1bc8d1bea0042dca9683c43956113
|
|||
+}
|
||||
diff --git a/src/main/java/io/papermc/paper/datacomponent/item/BundleContents.java b/src/main/java/io/papermc/paper/datacomponent/item/BundleContents.java
|
||||
new file mode 100644
|
||||
index 0000000000000000000000000000000000000000..c0f671aef8225c87632d2368d1b28fc8b1bce686
|
||||
index 0000000000000000000000000000000000000000..d47a78a6f51db66950ee67c60cfef1e21f4a4d40
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/io/papermc/paper/datacomponent/item/BundleContents.java
|
||||
@@ -0,0 +1,66 @@
|
||||
@@ -0,0 +1,65 @@
|
||||
+package io.papermc.paper.datacomponent.item;
|
||||
+
|
||||
+import io.papermc.paper.datacomponent.DataComponentBuilder;
|
||||
+import java.util.Arrays;
|
||||
+import java.util.List;
|
||||
+import org.bukkit.inventory.ItemStack;
|
||||
+import org.jetbrains.annotations.ApiStatus;
|
||||
|
@ -709,14 +707,13 @@ index 0000000000000000000000000000000000000000..c0f671aef8225c87632d2368d1b28fc8
|
|||
+}
|
||||
diff --git a/src/main/java/io/papermc/paper/datacomponent/item/ChargedProjectiles.java b/src/main/java/io/papermc/paper/datacomponent/item/ChargedProjectiles.java
|
||||
new file mode 100644
|
||||
index 0000000000000000000000000000000000000000..d0a6e7db06f540e13ac00e8da3acabd9f7838f1f
|
||||
index 0000000000000000000000000000000000000000..aac079e1d8056ec02741386a1bf2e7adf592e5bd
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/io/papermc/paper/datacomponent/item/ChargedProjectiles.java
|
||||
@@ -0,0 +1,66 @@
|
||||
@@ -0,0 +1,65 @@
|
||||
+package io.papermc.paper.datacomponent.item;
|
||||
+
|
||||
+import io.papermc.paper.datacomponent.DataComponentBuilder;
|
||||
+import java.util.Arrays;
|
||||
+import java.util.List;
|
||||
+import org.bukkit.inventory.ItemStack;
|
||||
+import org.jetbrains.annotations.ApiStatus;
|
||||
|
@ -781,17 +778,16 @@ index 0000000000000000000000000000000000000000..d0a6e7db06f540e13ac00e8da3acabd9
|
|||
+}
|
||||
diff --git a/src/main/java/io/papermc/paper/datacomponent/item/Consumable.java b/src/main/java/io/papermc/paper/datacomponent/item/Consumable.java
|
||||
new file mode 100644
|
||||
index 0000000000000000000000000000000000000000..a448fedb63ffce18b9f6a1bd0fecfc5cd90224a6
|
||||
index 0000000000000000000000000000000000000000..8c88bbbeef179e6c6666d07c8b28157ee1e84a2b
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/io/papermc/paper/datacomponent/item/Consumable.java
|
||||
@@ -0,0 +1,70 @@
|
||||
@@ -0,0 +1,69 @@
|
||||
+package io.papermc.paper.datacomponent.item;
|
||||
+
|
||||
+import io.papermc.paper.datacomponent.BuildableDataComponent;
|
||||
+import io.papermc.paper.datacomponent.DataComponentBuilder;
|
||||
+import io.papermc.paper.datacomponent.item.consumable.ConsumeEffect;
|
||||
+import io.papermc.paper.datacomponent.item.consumable.ItemUseAnimation;
|
||||
+import java.util.Collection;
|
||||
+import java.util.List;
|
||||
+import net.kyori.adventure.key.Key;
|
||||
+import org.checkerframework.checker.index.qual.NonNegative;
|
||||
|
@ -927,16 +923,14 @@ index 0000000000000000000000000000000000000000..6cbd73cb2a11f4858b44a2f57d2fe0ac
|
|||
+}
|
||||
diff --git a/src/main/java/io/papermc/paper/datacomponent/item/DeathProtection.java b/src/main/java/io/papermc/paper/datacomponent/item/DeathProtection.java
|
||||
new file mode 100644
|
||||
index 0000000000000000000000000000000000000000..87c2220708af7db06348994ad5940c7cecd9f691
|
||||
index 0000000000000000000000000000000000000000..8a42550bb52d00d9b5df1a64e997e0762bffde59
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/io/papermc/paper/datacomponent/item/DeathProtection.java
|
||||
@@ -0,0 +1,48 @@
|
||||
@@ -0,0 +1,46 @@
|
||||
+package io.papermc.paper.datacomponent.item;
|
||||
+
|
||||
+import io.papermc.paper.datacomponent.DataComponentBuilder;
|
||||
+import io.papermc.paper.datacomponent.item.consumable.ConsumeEffect;
|
||||
+import java.util.Arrays;
|
||||
+import java.util.Collection;
|
||||
+import java.util.List;
|
||||
+import org.jetbrains.annotations.ApiStatus;
|
||||
+import org.jetbrains.annotations.Contract;
|
||||
|
@ -1040,7 +1034,7 @@ index 0000000000000000000000000000000000000000..d80581fc8b894cc4d4af9741244b1bb0
|
|||
+}
|
||||
diff --git a/src/main/java/io/papermc/paper/datacomponent/item/Enchantable.java b/src/main/java/io/papermc/paper/datacomponent/item/Enchantable.java
|
||||
new file mode 100644
|
||||
index 0000000000000000000000000000000000000000..5169b9cd73dc0ffc8297f8d5f63d3d707a47d279
|
||||
index 0000000000000000000000000000000000000000..a128348247d8845321d3fecebaa09a5175a923cc
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/io/papermc/paper/datacomponent/item/Enchantable.java
|
||||
@@ -0,0 +1,31 @@
|
||||
|
@ -1069,18 +1063,18 @@ index 0000000000000000000000000000000000000000..5169b9cd73dc0ffc8297f8d5f63d3d70
|
|||
+ * Gets the current enchantment value level allowed,
|
||||
+ * a higher value allows enchantments with a higher cost to be picked.
|
||||
+ *
|
||||
+ * @see <a href="https://minecraft.wiki/w/Enchanting_mechanics#Java_Edition_2">Minecraft Wiki</a>
|
||||
+ * @return the value
|
||||
+ * @see <a href="https://minecraft.wiki/w/Enchanting_mechanics#Java_Edition_2">Minecraft Wiki</a>
|
||||
+ */
|
||||
+ @Contract(pure = true)
|
||||
+ @Positive int value();
|
||||
+}
|
||||
diff --git a/src/main/java/io/papermc/paper/datacomponent/item/Equippable.java b/src/main/java/io/papermc/paper/datacomponent/item/Equippable.java
|
||||
new file mode 100644
|
||||
index 0000000000000000000000000000000000000000..7d84217814bba4ce826e33755fee0d5c3b280009
|
||||
index 0000000000000000000000000000000000000000..826bb860bd55ff18f91d9bc7a5dde4d638b39f98
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/io/papermc/paper/datacomponent/item/Equippable.java
|
||||
@@ -0,0 +1,170 @@
|
||||
@@ -0,0 +1,169 @@
|
||||
+package io.papermc.paper.datacomponent.item;
|
||||
+
|
||||
+import io.papermc.paper.datacomponent.BuildableDataComponent;
|
||||
|
@ -1094,7 +1088,6 @@ index 0000000000000000000000000000000000000000..7d84217814bba4ce826e33755fee0d5c
|
|||
+import org.jspecify.annotations.NullMarked;
|
||||
+import org.jspecify.annotations.Nullable;
|
||||
+
|
||||
+
|
||||
+/**
|
||||
+ * Holds the equippable properties of an item.
|
||||
+ * @see io.papermc.paper.datacomponent.DataComponentTypes#EQUIPPABLE
|
||||
|
@ -1106,8 +1099,8 @@ index 0000000000000000000000000000000000000000..7d84217814bba4ce826e33755fee0d5c
|
|||
+
|
||||
+ /**
|
||||
+ * Creates a new {@link Equippable.Builder} instance.
|
||||
+ * @param slot The slot for the new equippable to be equippable in.
|
||||
+ *
|
||||
+ * @param slot The slot for the new equippable to be equippable in.
|
||||
+ * @return a new builder
|
||||
+ */
|
||||
+ @Contract(value = "_ -> new", pure = true)
|
||||
|
@ -1190,11 +1183,11 @@ index 0000000000000000000000000000000000000000..7d84217814bba4ce826e33755fee0d5c
|
|||
+ /**
|
||||
+ * Sets the equip sound key for this item.
|
||||
+ *
|
||||
+ * @param equipSound the equip sound key
|
||||
+ * @param sound the equip sound key
|
||||
+ * @return the builder for chaining
|
||||
+ */
|
||||
+ @Contract(value = "_ -> this", mutates = "this")
|
||||
+ Builder equipSound(Key equipSound);
|
||||
+ Builder equipSound(Key sound);
|
||||
+
|
||||
+ /**
|
||||
+ * Sets the model key for this item.
|
||||
|
@ -1343,10 +1336,10 @@ index 0000000000000000000000000000000000000000..72aa1b4bda2693e0cd78d93449dda23b
|
|||
+}
|
||||
diff --git a/src/main/java/io/papermc/paper/datacomponent/item/FoodProperties.java b/src/main/java/io/papermc/paper/datacomponent/item/FoodProperties.java
|
||||
new file mode 100644
|
||||
index 0000000000000000000000000000000000000000..369208e15a0e7fc91a9505fef2097c4283445e4a
|
||||
index 0000000000000000000000000000000000000000..2b94017d0310d023556bdd7b9ab1eae0261669c6
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/io/papermc/paper/datacomponent/item/FoodProperties.java
|
||||
@@ -0,0 +1,87 @@
|
||||
@@ -0,0 +1,86 @@
|
||||
+package io.papermc.paper.datacomponent.item;
|
||||
+
|
||||
+import io.papermc.paper.datacomponent.BuildableDataComponent;
|
||||
|
@ -1431,7 +1424,6 @@ index 0000000000000000000000000000000000000000..369208e15a0e7fc91a9505fef2097c42
|
|||
+ */
|
||||
+ @Contract(value = "_ -> this", mutates = "this")
|
||||
+ Builder nutrition(@NonNegative int nutrition);
|
||||
+
|
||||
+ }
|
||||
+}
|
||||
diff --git a/src/main/java/io/papermc/paper/datacomponent/item/ItemAdventurePredicate.java b/src/main/java/io/papermc/paper/datacomponent/item/ItemAdventurePredicate.java
|
||||
|
@ -1566,10 +1558,10 @@ index 0000000000000000000000000000000000000000..0309ae59ab7945ddfb5410930d161e2c
|
|||
+}
|
||||
diff --git a/src/main/java/io/papermc/paper/datacomponent/item/ItemAttributeModifiers.java b/src/main/java/io/papermc/paper/datacomponent/item/ItemAttributeModifiers.java
|
||||
new file mode 100644
|
||||
index 0000000000000000000000000000000000000000..948505d38121d54df62e6a67d4597bc7d42c356f
|
||||
index 0000000000000000000000000000000000000000..56a3e678c6658dd617da4974d9392006875aef0c
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/io/papermc/paper/datacomponent/item/ItemAttributeModifiers.java
|
||||
@@ -0,0 +1,98 @@
|
||||
@@ -0,0 +1,97 @@
|
||||
+package io.papermc.paper.datacomponent.item;
|
||||
+
|
||||
+import io.papermc.paper.datacomponent.DataComponentBuilder;
|
||||
|
@ -1584,7 +1576,6 @@ index 0000000000000000000000000000000000000000..948505d38121d54df62e6a67d4597bc7
|
|||
+
|
||||
+/**
|
||||
+ * Holds attribute modifiers applied to any item.
|
||||
+ *
|
||||
+ * @see io.papermc.paper.datacomponent.DataComponentTypes#ATTRIBUTE_MODIFIERS
|
||||
+ */
|
||||
+@NullMarked
|
||||
|
@ -1652,7 +1643,7 @@ index 0000000000000000000000000000000000000000..948505d38121d54df62e6a67d4597bc7
|
|||
+ * @return the builder for chaining
|
||||
+ * @see #modifiers()
|
||||
+ */
|
||||
+ @Contract(value = "_, _, _ -> this", mutates = "this")
|
||||
+ @Contract(value = "_, _ -> this", mutates = "this")
|
||||
+ Builder addModifier(Attribute attribute, AttributeModifier modifier);
|
||||
+
|
||||
+ /**
|
||||
|
@ -1788,14 +1779,13 @@ index 0000000000000000000000000000000000000000..1ce34642371a65590ce1ac74b402ccfc
|
|||
+}
|
||||
diff --git a/src/main/java/io/papermc/paper/datacomponent/item/ItemContainerContents.java b/src/main/java/io/papermc/paper/datacomponent/item/ItemContainerContents.java
|
||||
new file mode 100644
|
||||
index 0000000000000000000000000000000000000000..7d1c973ba566752d7a85496327b1352d973f2218
|
||||
index 0000000000000000000000000000000000000000..3b00e34a1d6aeec694c712d7a3a323da938f270b
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/io/papermc/paper/datacomponent/item/ItemContainerContents.java
|
||||
@@ -0,0 +1,63 @@
|
||||
@@ -0,0 +1,62 @@
|
||||
+package io.papermc.paper.datacomponent.item;
|
||||
+
|
||||
+import io.papermc.paper.datacomponent.DataComponentBuilder;
|
||||
+import java.util.Arrays;
|
||||
+import java.util.List;
|
||||
+import org.bukkit.inventory.ItemStack;
|
||||
+import org.jetbrains.annotations.ApiStatus;
|
||||
|
@ -2393,10 +2383,10 @@ index 0000000000000000000000000000000000000000..4f16e08f04c2cea24f3cb132ff21f4bd
|
|||
+}
|
||||
diff --git a/src/main/java/io/papermc/paper/datacomponent/item/PotDecorations.java b/src/main/java/io/papermc/paper/datacomponent/item/PotDecorations.java
|
||||
new file mode 100644
|
||||
index 0000000000000000000000000000000000000000..6da78b8735a6cadd1282fa2fafd8b0f74f087fb4
|
||||
index 0000000000000000000000000000000000000000..15154d7f9f861991134eb5a5210f7244db3216eb
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/io/papermc/paper/datacomponent/item/PotDecorations.java
|
||||
@@ -0,0 +1,109 @@
|
||||
@@ -0,0 +1,108 @@
|
||||
+package io.papermc.paper.datacomponent.item;
|
||||
+
|
||||
+import io.papermc.paper.datacomponent.DataComponentBuilder;
|
||||
|
@ -2406,7 +2396,6 @@ index 0000000000000000000000000000000000000000..6da78b8735a6cadd1282fa2fafd8b0f7
|
|||
+import org.jspecify.annotations.NullMarked;
|
||||
+import org.jspecify.annotations.Nullable;
|
||||
+
|
||||
+// CONTRIBUTORS: LEAVE THIS AS ITEM TYPE!!!
|
||||
+/**
|
||||
+ * Holds the item types for the decorations on a flower pot.
|
||||
+ * @see io.papermc.paper.datacomponent.DataComponentTypes#POT_DECORATIONS
|
||||
|
@ -2508,10 +2497,10 @@ index 0000000000000000000000000000000000000000..6da78b8735a6cadd1282fa2fafd8b0f7
|
|||
+}
|
||||
diff --git a/src/main/java/io/papermc/paper/datacomponent/item/PotionContents.java b/src/main/java/io/papermc/paper/datacomponent/item/PotionContents.java
|
||||
new file mode 100644
|
||||
index 0000000000000000000000000000000000000000..7cf05b382319064d45433a7e2678f65c25d11b14
|
||||
index 0000000000000000000000000000000000000000..1583d408336aec5d0c6eb7124b2cecc32c4fda56
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/io/papermc/paper/datacomponent/item/PotionContents.java
|
||||
@@ -0,0 +1,120 @@
|
||||
@@ -0,0 +1,118 @@
|
||||
+package io.papermc.paper.datacomponent.item;
|
||||
+
|
||||
+import io.papermc.paper.datacomponent.DataComponentBuilder;
|
||||
|
@ -2593,8 +2582,8 @@ index 0000000000000000000000000000000000000000..7cf05b382319064d45433a7e2678f65c
|
|||
+ *
|
||||
+ * @param color color
|
||||
+ * @return the builder for chaining
|
||||
+ * @see #customColor()
|
||||
+ * @apiNote alpha channel of the color is supported only for Tipped Arrow
|
||||
+ * @see #customColor()
|
||||
+ */
|
||||
+ @Contract(value = "_ -> this", mutates = "this")
|
||||
+ Builder customColor(@Nullable Color color);
|
||||
|
@ -2613,7 +2602,6 @@ index 0000000000000000000000000000000000000000..7cf05b382319064d45433a7e2678f65c
|
|||
+ * Adds a custom effect instance to this builder.
|
||||
+ *
|
||||
+ * @param effect effect
|
||||
+ * @see #customEffects()
|
||||
+ * @return the builder for chaining
|
||||
+ * @see #customEffects()
|
||||
+ */
|
||||
|
@ -2624,7 +2612,6 @@ index 0000000000000000000000000000000000000000..7cf05b382319064d45433a7e2678f65c
|
|||
+ * Adds custom effect instances to this builder.
|
||||
+ *
|
||||
+ * @param effects effects
|
||||
+ * @see #customEffects()
|
||||
+ * @return the builder for chaining
|
||||
+ * @see #customEffects()
|
||||
+ */
|
||||
|
@ -2876,10 +2863,10 @@ index 0000000000000000000000000000000000000000..f79af65e8f3f8ffbb9be1cf1c6b537cd
|
|||
+}
|
||||
diff --git a/src/main/java/io/papermc/paper/datacomponent/item/ShownInTooltip.java b/src/main/java/io/papermc/paper/datacomponent/item/ShownInTooltip.java
|
||||
new file mode 100644
|
||||
index 0000000000000000000000000000000000000000..7e058aebcbd768517f6db51540598721cdae4425
|
||||
index 0000000000000000000000000000000000000000..1307221216d2b38ec5daee4d798d7fcabef7a2e2
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/io/papermc/paper/datacomponent/item/ShownInTooltip.java
|
||||
@@ -0,0 +1,52 @@
|
||||
@@ -0,0 +1,55 @@
|
||||
+package io.papermc.paper.datacomponent.item;
|
||||
+
|
||||
+import org.jetbrains.annotations.ApiStatus;
|
||||
|
@ -2889,6 +2876,7 @@ index 0000000000000000000000000000000000000000..7e058aebcbd768517f6db51540598721
|
|||
+/**
|
||||
+ * Holds the state of whether a data component should be shown
|
||||
+ * in an item's tooltip.
|
||||
+ *
|
||||
+ * @param <T> the data component type
|
||||
+ */
|
||||
+@NullMarked
|
||||
|
@ -2907,6 +2895,7 @@ index 0000000000000000000000000000000000000000..7e058aebcbd768517f6db51540598721
|
|||
+ /**
|
||||
+ * Returns a copy of this data component with the specified
|
||||
+ * show-in-tooltip state.
|
||||
+ *
|
||||
+ * @param showInTooltip {@code true} to show in the tooltip
|
||||
+ * @return the new data component
|
||||
+ */
|
||||
|
@ -2915,6 +2904,7 @@ index 0000000000000000000000000000000000000000..7e058aebcbd768517f6db51540598721
|
|||
+
|
||||
+ /**
|
||||
+ * A builder for creating a {@link ShownInTooltip} data component.
|
||||
+ *
|
||||
+ * @param <B> builder type
|
||||
+ */
|
||||
+ @ApiStatus.Experimental
|
||||
|
@ -2934,15 +2924,14 @@ index 0000000000000000000000000000000000000000..7e058aebcbd768517f6db51540598721
|
|||
+}
|
||||
diff --git a/src/main/java/io/papermc/paper/datacomponent/item/SuspiciousStewEffects.java b/src/main/java/io/papermc/paper/datacomponent/item/SuspiciousStewEffects.java
|
||||
new file mode 100644
|
||||
index 0000000000000000000000000000000000000000..422bb5ccc42b94b60fba6714e9e6fb8aced6eb0c
|
||||
index 0000000000000000000000000000000000000000..9a740ef7da967e865a801367cf179eead0632d66
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/io/papermc/paper/datacomponent/item/SuspiciousStewEffects.java
|
||||
@@ -0,0 +1,67 @@
|
||||
@@ -0,0 +1,66 @@
|
||||
+package io.papermc.paper.datacomponent.item;
|
||||
+
|
||||
+import io.papermc.paper.datacomponent.DataComponentBuilder;
|
||||
+import io.papermc.paper.potion.SuspiciousEffectEntry;
|
||||
+import java.util.Arrays;
|
||||
+import java.util.Collection;
|
||||
+import java.util.List;
|
||||
+import org.jetbrains.annotations.ApiStatus;
|
||||
|
@ -3273,13 +3262,12 @@ index 0000000000000000000000000000000000000000..57fc55ad1def2bb14fc0a95ee3c0c157
|
|||
+}
|
||||
diff --git a/src/main/java/io/papermc/paper/datacomponent/item/UseRemainder.java b/src/main/java/io/papermc/paper/datacomponent/item/UseRemainder.java
|
||||
new file mode 100644
|
||||
index 0000000000000000000000000000000000000000..50e42e073311332142980828d0beec1828570512
|
||||
index 0000000000000000000000000000000000000000..aaecc3c954ea7c6b70c1effea65a34901e1a0924
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/io/papermc/paper/datacomponent/item/UseRemainder.java
|
||||
@@ -0,0 +1,31 @@
|
||||
@@ -0,0 +1,29 @@
|
||||
+package io.papermc.paper.datacomponent.item;
|
||||
+
|
||||
+import io.papermc.paper.datacomponent.DataComponentBuilder;
|
||||
+import org.bukkit.inventory.ItemStack;
|
||||
+import org.jetbrains.annotations.ApiStatus;
|
||||
+import org.jetbrains.annotations.Contract;
|
||||
|
@ -3306,7 +3294,6 @@ index 0000000000000000000000000000000000000000..50e42e073311332142980828d0beec18
|
|||
+ */
|
||||
+ @Contract(value = "-> new", pure = true)
|
||||
+ ItemStack transformInto();
|
||||
+
|
||||
+}
|
||||
diff --git a/src/main/java/io/papermc/paper/datacomponent/item/WritableBookContent.java b/src/main/java/io/papermc/paper/datacomponent/item/WritableBookContent.java
|
||||
new file mode 100644
|
||||
|
@ -3612,20 +3599,20 @@ index 0000000000000000000000000000000000000000..a845ccfc21f101f0632249745bbd8b33
|
|||
+}
|
||||
diff --git a/src/main/java/io/papermc/paper/datacomponent/item/consumable/ConsumeEffect.java b/src/main/java/io/papermc/paper/datacomponent/item/consumable/ConsumeEffect.java
|
||||
new file mode 100644
|
||||
index 0000000000000000000000000000000000000000..ff1a14e19c21dd22f249503a0b738f190a75aca0
|
||||
index 0000000000000000000000000000000000000000..87537e431e505e498f9c5f86cc3401d39ebdb2ac
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/io/papermc/paper/datacomponent/item/consumable/ConsumeEffect.java
|
||||
@@ -0,0 +1,150 @@
|
||||
@@ -0,0 +1,147 @@
|
||||
+package io.papermc.paper.datacomponent.item.consumable;
|
||||
+
|
||||
+import io.papermc.paper.registry.set.RegistryKeySet;
|
||||
+import java.util.List;
|
||||
+import net.kyori.adventure.key.Key;
|
||||
+import org.bukkit.potion.PotionEffect;
|
||||
+import org.bukkit.potion.PotionEffectType;
|
||||
+import org.jetbrains.annotations.ApiStatus;
|
||||
+import org.jetbrains.annotations.Contract;
|
||||
+import org.jspecify.annotations.NullMarked;
|
||||
+import java.util.List;
|
||||
+
|
||||
+/**
|
||||
+ * Effect that occurs when consuming an item.
|
||||
|
@ -3690,7 +3677,6 @@ index 0000000000000000000000000000000000000000..ff1a14e19c21dd22f249503a0b738f19
|
|||
+ return ConsumableTypesBridge.bridge().applyStatusEffects(effects, probability);
|
||||
+ }
|
||||
+
|
||||
+ @NullMarked
|
||||
+ @ApiStatus.Experimental
|
||||
+ @ApiStatus.NonExtendable
|
||||
+ interface TeleportRandomly extends ConsumeEffect {
|
||||
|
@ -3706,7 +3692,6 @@ index 0000000000000000000000000000000000000000..ff1a14e19c21dd22f249503a0b738f19
|
|||
+ /**
|
||||
+ * Represents a consumable effect that removes status effects on consumption
|
||||
+ */
|
||||
+ @NullMarked
|
||||
+ @ApiStatus.Experimental
|
||||
+ @ApiStatus.NonExtendable
|
||||
+ interface RemoveStatusEffects extends ConsumeEffect {
|
||||
|
@ -3722,7 +3707,6 @@ index 0000000000000000000000000000000000000000..ff1a14e19c21dd22f249503a0b738f19
|
|||
+ /**
|
||||
+ * Represents a consumable effect that plays a sound on consumption.
|
||||
+ */
|
||||
+ @NullMarked
|
||||
+ @ApiStatus.Experimental
|
||||
+ @ApiStatus.NonExtendable
|
||||
+ interface PlaySound extends ConsumeEffect {
|
||||
|
@ -3738,7 +3722,8 @@ index 0000000000000000000000000000000000000000..ff1a14e19c21dd22f249503a0b738f19
|
|||
+ /**
|
||||
+ * Represents a consumable effect that clears all effects on consumption.
|
||||
+ */
|
||||
+ @NullMarked
|
||||
+ @ApiStatus.Experimental
|
||||
+ @ApiStatus.NonExtendable
|
||||
+ interface ClearAllStatusEffects extends ConsumeEffect {
|
||||
+
|
||||
+ }
|
||||
|
@ -3746,7 +3731,6 @@ index 0000000000000000000000000000000000000000..ff1a14e19c21dd22f249503a0b738f19
|
|||
+ /**
|
||||
+ * Represents a consumable effect that applies effects based on a probability on consumption.
|
||||
+ */
|
||||
+ @NullMarked
|
||||
+ @ApiStatus.Experimental
|
||||
+ @ApiStatus.NonExtendable
|
||||
+ interface ApplyStatusEffects extends ConsumeEffect {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue