mirror of
https://github.com/PaperMC/Paper.git
synced 2024-09-06 20:08:13 +02:00
Upstream has released updates that appears to apply and compile correctly. This update has not been tested by PaperMC and as with ANY update, please do your own testing Please note that this build includes changes to meet upstreams requirements for nullability annotations. While we aim for a level of accuracy, these might not be 100% correct, if there are any issues, please speak to us on discord, or open an issue on the tracker to discuss. Bukkit Changes: 9a6a1de3 Remove nullability annotations from enum constructors 3f0591ea SPIGOT-2540: Add nullability annotations to entire Bukkit API CraftBukkit Changes:8d8475fc
SPIGOT-4666: Force parameter in HumanEntity#sleep8b1588e2
Fix ExplosionPrimeEvent#setFire not working with EnderCrystals39a287b7
Don't ignore newlines in PlayerListHeader/Footer Spigot Changes: cf694d87 Add nullability annotations
53 lines
1.6 KiB
Diff
53 lines
1.6 KiB
Diff
From 2286649eb07e4a21436f8d660059dd6fa2f47641 Mon Sep 17 00:00:00 2001
|
|
From: Jedediah Smith <jedediah@silencegreys.com>
|
|
Date: Fri, 4 Mar 2016 03:13:18 -0500
|
|
Subject: [PATCH] Arrow pickup rule API
|
|
|
|
|
|
diff --git a/src/main/java/org/bukkit/entity/Arrow.java b/src/main/java/org/bukkit/entity/Arrow.java
|
|
index 99f73a2b..b63f2fd9 100644
|
|
--- a/src/main/java/org/bukkit/entity/Arrow.java
|
|
+++ b/src/main/java/org/bukkit/entity/Arrow.java
|
|
@@ -149,4 +149,38 @@ public interface Arrow extends Projectile {
|
|
@Override
|
|
Spigot spigot();
|
|
// Spigot end
|
|
+
|
|
+ // Paper start
|
|
+ /**
|
|
+ * Gets the {@link PickupRule} for this arrow.
|
|
+ *
|
|
+ * <p>This is generally {@link PickupRule#ALLOWED} only if the arrow was
|
|
+ * <b>not</b> fired from a bow with the infinity enchantment.</p>
|
|
+ *
|
|
+ * @return The pickup rule
|
|
+ * @deprecated Use {@link Arrow#getPickupStatus()} as an upstream compatible replacement for this function
|
|
+ */
|
|
+ @Deprecated
|
|
+ default PickupRule getPickupRule() {
|
|
+ return PickupRule.valueOf(this.getPickupStatus().name());
|
|
+ }
|
|
+
|
|
+ /**
|
|
+ * Set the rule for which players can pickup this arrow as an item.
|
|
+ *
|
|
+ * @param rule The pickup rule
|
|
+ * @deprecated Use {@link Arrow#setPickupStatus(PickupStatus)} with {@link PickupStatus} as an upstream compatible replacement for this function
|
|
+ */
|
|
+ @Deprecated
|
|
+ default void setPickupRule(PickupRule rule) {
|
|
+ this.setPickupStatus(PickupStatus.valueOf(rule.name()));
|
|
+ }
|
|
+
|
|
+ @Deprecated
|
|
+ enum PickupRule {
|
|
+ DISALLOWED,
|
|
+ ALLOWED,
|
|
+ CREATIVE_ONLY;
|
|
+ }
|
|
+ // Paper end
|
|
}
|
|
--
|
|
2.21.0
|
|
|