diff options
Diffstat (limited to 'patches/server/0450-Item-no-age-no-player-pickup.patch')
-rw-r--r-- | patches/server/0450-Item-no-age-no-player-pickup.patch | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/patches/server/0450-Item-no-age-no-player-pickup.patch b/patches/server/0450-Item-no-age-no-player-pickup.patch new file mode 100644 index 0000000000..1fffbaf558 --- /dev/null +++ b/patches/server/0450-Item-no-age-no-player-pickup.patch @@ -0,0 +1,49 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Alfie Smith <[email protected]> +Date: Sat, 7 Nov 2020 01:20:33 +0000 +Subject: [PATCH] Item no age & no player pickup + + +diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftItem.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftItem.java +index 5620a0849fda49313c68edfd747fedd09641a3d5..4a15c3786edbfeae3367c0b20fb6aee11d62aea6 100644 +--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftItem.java ++++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftItem.java +@@ -9,6 +9,11 @@ import org.bukkit.inventory.ItemStack; + + public class CraftItem extends CraftEntity implements Item { + ++ // Paper start ++ private final static int NO_AGE_TIME = (int) Short.MIN_VALUE; ++ private final static int NO_PICKUP_TIME = (int) Short.MAX_VALUE; ++ // Paper end ++ + public CraftItem(CraftServer server, ItemEntity entity) { + super(server, entity); + } +@@ -73,6 +78,26 @@ public class CraftItem extends CraftEntity implements Item { + public void setCanMobPickup(boolean canMobPickup) { + this.getHandle().canMobPickup = canMobPickup; + } ++ ++ @Override ++ public boolean canPlayerPickup() { ++ return this.getHandle().pickupDelay != NO_PICKUP_TIME; ++ } ++ ++ @Override ++ public void setCanPlayerPickup(boolean canPlayerPickup) { ++ this.getHandle().pickupDelay = canPlayerPickup ? 0 : NO_PICKUP_TIME; ++ } ++ ++ @Override ++ public boolean willAge() { ++ return this.getHandle().age != NO_AGE_TIME; ++ } ++ ++ @Override ++ public void setWillAge(boolean willAge) { ++ this.getHandle().age = willAge ? 0 : NO_AGE_TIME; ++ } + // Paper end + + @Override |