13
0
geforkt von Mirrors/Paper

#1011: Add Item Unlimited Lifetime APIs

By: Gero <gecam59@gmail.com>
Dieser Commit ist enthalten in:
CraftBukkit/Spigot 2022-03-12 09:26:16 +11:00
Ursprung 06bac38719
Commit a429b2ad16

Datei anzeigen

@ -41,13 +41,30 @@ public class CraftItem extends CraftEntity implements Item {
item.pickupDelay = Math.min(delay, Short.MAX_VALUE); item.pickupDelay = Math.min(delay, Short.MAX_VALUE);
} }
@Override
public void setUnlimitedLifetime(boolean unlimited) {
if (unlimited) {
// See EntityItem#INFINITE_LIFETIME
item.age = Short.MIN_VALUE;
} else {
item.age = getTicksLived();
}
}
@Override
public boolean isUnlimitedLifetime() {
return item.age == Short.MIN_VALUE;
}
@Override @Override
public void setTicksLived(int value) { public void setTicksLived(int value) {
super.setTicksLived(value); super.setTicksLived(value);
// Second field for EntityItem // Second field for EntityItem (don't set if lifetime is unlimited)
if (!isUnlimitedLifetime()) {
item.age = value; item.age = value;
} }
}
@Override @Override
public void setOwner(UUID uuid) { public void setOwner(UUID uuid) {