61 lines
1.4 KiB
Java

package org.bukkit.craftbukkit.entity;
import net.minecraft.server.Entity;
import net.minecraft.server.EntityItem;
import org.bukkit.craftbukkit.CraftServer;
import org.bukkit.craftbukkit.inventory.CraftItemStack;
import org.bukkit.entity.EntityType;
import org.bukkit.entity.Item;
import org.bukkit.inventory.ItemStack;
public class CraftItem extends CraftEntity implements Item {
private final EntityItem item;
public CraftItem(CraftServer server, Entity entity, EntityItem item) {
super(server, entity);
this.item = item;
}
public CraftItem(CraftServer server, EntityItem entity) {
this(server, entity, entity);
}
@Override
public ItemStack getItemStack() {
return CraftItemStack.asCraftMirror(item.getItemStack());
}
@Override
public void setItemStack(ItemStack stack) {
item.setItemStack(CraftItemStack.asNMSCopy(stack));
}
@Override
public int getPickupDelay() {
return item.pickupDelay;
}
@Override
public void setPickupDelay(int delay) {
item.pickupDelay = Math.min(delay, Short.MAX_VALUE);
}
@Override
public void setTicksLived(int value) {
super.setTicksLived(value);
// Second field for EntityItem
item.age = value;
}
@Override
public String toString() {
return "CraftItem";
}
@Override
public EntityType getType() {
return EntityType.DROPPED_ITEM;
}
}