diff --git a/paper-api/src/main/java/org/bukkit/entity/Item.java b/paper-api/src/main/java/org/bukkit/entity/Item.java index 4f0caf5a70..3f2736fbdd 100644 --- a/paper-api/src/main/java/org/bukkit/entity/Item.java +++ b/paper-api/src/main/java/org/bukkit/entity/Item.java @@ -1,7 +1,9 @@ package org.bukkit.entity; +import java.util.UUID; import org.bukkit.inventory.ItemStack; import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; /** * Represents a dropped item. @@ -36,4 +38,41 @@ public interface Item extends Entity { * @param delay New delay */ public void setPickupDelay(int delay); + + /** + * Sets the owner of this item. + * + * Other entities will not be able to pickup this item when an owner is set. + * + * @param owner UUID of new owner + */ + public void setOwner(@Nullable UUID owner); + + /** + * Get the owner of this item. + * + * @return UUID of owner + */ + @Nullable + public UUID getOwner(); + + /** + * Set the thrower of this item. + * + * The thrower is the entity which dropped the item. This affects the + * trigger criteria for item pickups, for things such as advancements. + * + * @param uuid UUID of thrower + */ + public void setThrower(@Nullable UUID uuid); + + /** + * Get the thrower of this item. + * + * The thrower is the entity which dropped the item. + * + * @return UUID of thrower + */ + @Nullable + public UUID getThrower(); }