mirror of
https://github.com/PaperMC/Paper.git
synced 2024-11-26 12:36:07 +01:00
b58063a949
Upstream has released updates that appear to apply and compile correctly. This update has not been tested by PaperMC and as with ANY update, please do your own testing Bukkit Changes: 607ce370 SPIGOT-7069: Material.BARREL has Directional data class, should also be Openable f14cea82 SPIGOT-7070: Material.SCULK_VEIN has Waterlogged data class, should also be MultipleFacing 8e43b278 PR-767: Add support checking/survivability methods for BlockData b3dee151 SPIGOT-7083: Add Boat.WoodenType, Boat.Status; deprecate TreeSpecies CraftBukkit Changes: 9a8e08010 SPIGOT-7069: Material.BARREL has Directional data class, should also be Openable 26bd88ccd SPIGOT-7070: Material.SCULK_VEIN has Waterlogged data class, should also be MultipleFacing 7ba06e15b SPIGOT-7095: StructureGrowEvent doesn't fire for mangrove propagules growing to a tree 163e35c91 PR-1079: Add support checking/survivability methods for BlockData 4230f8f0e SPIGOT-7083: Add Boat.WoodenType, Boat.Status; deprecate TreeSpecies Spigot Changes: 14a2382f Rebuild patches
56 lines
2.6 KiB
Diff
56 lines
2.6 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Jake Potrebic <jake.m.potrebic@gmail.com>
|
|
Date: Sat, 8 May 2021 15:02:00 -0700
|
|
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 4e6273c609630be7c196d4eed54fbca097eaf7d4..6eae173f589cb90eb6e41b5b75e13a3c02e7901d 100644
|
|
--- a/src/main/java/org/bukkit/Material.java
|
|
+++ b/src/main/java/org/bukkit/Material.java
|
|
@@ -4156,6 +4156,21 @@ public enum Material implements Keyed, net.kyori.adventure.translation.Translata
|
|
public io.papermc.paper.inventory.ItemRarity getItemRarity() {
|
|
return Bukkit.getUnsafe().getItemRarity(this);
|
|
}
|
|
+
|
|
+ /**
|
|
+ * Returns an immutable multimap of attributes for the slot.
|
|
+ * {@link #isItem()} must be true for this material.
|
|
+ *
|
|
+ * @param equipmentSlot the slot to get the attributes for
|
|
+ * @throws IllegalArgumentException if {@link #isItem()} is false
|
|
+ * @return an immutable multimap of attributes
|
|
+ * @deprecated use {@link #getDefaultAttributeModifiers(EquipmentSlot)}
|
|
+ */
|
|
+ @NotNull
|
|
+ @Deprecated
|
|
+ public Multimap<Attribute, AttributeModifier> getItemAttributes(@NotNull EquipmentSlot equipmentSlot) {
|
|
+ return Bukkit.getUnsafe().getItemAttributes(this, equipmentSlot);
|
|
+ }
|
|
// Paper end
|
|
|
|
/**
|
|
diff --git a/src/main/java/org/bukkit/UnsafeValues.java b/src/main/java/org/bukkit/UnsafeValues.java
|
|
index 248453b259781aa45516133a0ed824f4e6f6a369..a3045b63c4e63f8eac902beb0f48367a5e3e5d20 100644
|
|
--- a/src/main/java/org/bukkit/UnsafeValues.java
|
|
+++ b/src/main/java/org/bukkit/UnsafeValues.java
|
|
@@ -190,6 +190,18 @@ public interface UnsafeValues {
|
|
*/
|
|
public boolean isValidRepairItemStack(@org.jetbrains.annotations.NotNull ItemStack itemToBeRepaired, @org.jetbrains.annotations.NotNull ItemStack repairMaterial);
|
|
|
|
+ /**
|
|
+ * Returns an immutable multimap of attributes for the material and slot.
|
|
+ * {@link Material#isItem()} must be true for this material.
|
|
+ *
|
|
+ * @param material the material
|
|
+ * @param equipmentSlot the slot to get the attributes for
|
|
+ * @throws IllegalArgumentException if {@link Material#isItem()} is false
|
|
+ * @return an immutable multimap of attributes
|
|
+ */
|
|
+ @org.jetbrains.annotations.NotNull
|
|
+ public Multimap<Attribute, AttributeModifier> getItemAttributes(@org.jetbrains.annotations.NotNull Material material, @org.jetbrains.annotations.NotNull EquipmentSlot equipmentSlot);
|
|
+
|
|
/**
|
|
* Returns the server's protocol version.
|
|
*
|