From 2286649eb07e4a21436f8d660059dd6fa2f47641 Mon Sep 17 00:00:00 2001 From: Jedediah Smith 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. + * + *

This is generally {@link PickupRule#ALLOWED} only if the arrow was + * not fired from a bow with the infinity enchantment.

+ * + * @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