Class ItemEntity

All Implemented Interfaces:
CommandSource, SyncedDataHolder, TraceableEntity, EntityAccess, Nameable, ScoreHolder, IAttachmentHolder, IEntityExtension, INBTSerializable<CompoundTag>

public class ItemEntity extends Entity implements TraceableEntity
  • Field Details

    • DATA_ITEM

      private static final EntityDataAccessor<ItemStack> DATA_ITEM
    • FLOAT_HEIGHT

      private static final float FLOAT_HEIGHT
      See Also:
    • EYE_HEIGHT

      public static final float EYE_HEIGHT
      See Also:
    • LIFETIME

      private static final int LIFETIME
      See Also:
    • INFINITE_PICKUP_DELAY

      private static final int INFINITE_PICKUP_DELAY
      See Also:
    • INFINITE_LIFETIME

      private static final int INFINITE_LIFETIME
      See Also:
    • age

      private int age
    • pickupDelay

      private int pickupDelay
    • health

      private int health
    • thrower

      @Nullable private UUID thrower
    • cachedThrower

      @Nullable private Entity cachedThrower
    • target

      @Nullable private UUID target
    • bobOffs

      public final float bobOffs
    • lifespan

      public int lifespan
      The maximum age of this EntityItem. The item is expired once this is reached.
  • Constructor Details

    • ItemEntity

      public ItemEntity(EntityType<? extends ItemEntity> entityType, Level level)
    • ItemEntity

      public ItemEntity(Level level, double posX, double posY, double posZ, ItemStack itemStack)
    • ItemEntity

      public ItemEntity(Level level, double posX, double posY, double posZ, ItemStack itemStack, double deltaX, double deltaY, double deltaZ)
    • ItemEntity

      private ItemEntity(ItemEntity other)
  • Method Details

    • dampensVibrations

      public boolean dampensVibrations()
      Overrides:
      dampensVibrations in class Entity
    • getOwner

      @Nullable public Entity getOwner()
      Specified by:
      getOwner in interface TraceableEntity
    • restoreFrom

      public void restoreFrom(Entity entity)
      Prepares this entity in new dimension by copying NBT data from entity in old dimension
      Overrides:
      restoreFrom in class Entity
    • getMovementEmission

      protected Entity.MovementEmission getMovementEmission()
      Overrides:
      getMovementEmission in class Entity
    • defineSynchedData

      protected void defineSynchedData(SynchedEntityData.Builder builder)
      Specified by:
      defineSynchedData in class Entity
    • getDefaultGravity

      protected double getDefaultGravity()
      Overrides:
      getDefaultGravity in class Entity
    • tick

      public void tick()
      Overrides:
      tick in class Entity
    • getBlockPosBelowThatAffectsMyMovement

      public BlockPos getBlockPosBelowThatAffectsMyMovement()
      Overrides:
      getBlockPosBelowThatAffectsMyMovement in class Entity
    • setUnderwaterMovement

      private void setUnderwaterMovement()
    • setUnderLavaMovement

      private void setUnderLavaMovement()
    • mergeWithNeighbours

      private void mergeWithNeighbours()
    • isMergable

      private boolean isMergable()
    • tryToMerge

      private void tryToMerge(ItemEntity itemEntity)
    • areMergable

      public static boolean areMergable(ItemStack destinationStack, ItemStack originStack)
    • merge

      public static ItemStack merge(ItemStack destinationStack, ItemStack originStack, int amount)
    • merge

      private static void merge(ItemEntity destinationEntity, ItemStack destinationStack, ItemStack originStack)
    • merge

      private static void merge(ItemEntity destinationEntity, ItemStack destinationStack, ItemEntity originEntity, ItemStack originStack)
    • fireImmune

      public boolean fireImmune()
      Overrides:
      fireImmune in class Entity
    • hurt

      public boolean hurt(DamageSource source, float amount)
      Called when the entity is attacked.
      Overrides:
      hurt in class Entity
    • addAdditionalSaveData

      public void addAdditionalSaveData(CompoundTag compound)
      Specified by:
      addAdditionalSaveData in class Entity
    • readAdditionalSaveData

      public void readAdditionalSaveData(CompoundTag compound)
      (abstract) Protected helper method to read subclass entity data from NBT.
      Specified by:
      readAdditionalSaveData in class Entity
    • playerTouch

      public void playerTouch(Player entity)
      Called by a player entity when they collide with an entity
      Overrides:
      playerTouch in class Entity
    • getName

      public Component getName()
      Specified by:
      getName in interface Nameable
      Overrides:
      getName in class Entity
    • isAttackable

      public boolean isAttackable()
      Overrides:
      isAttackable in class Entity
    • changeDimension

      @Nullable public Entity changeDimension(DimensionTransition transition)
      Overrides:
      changeDimension in class Entity
    • getItem

      public ItemStack getItem()
    • setItem

      public void setItem(ItemStack stack)
      Sets the item that this entity represents.
    • onSyncedDataUpdated

      public void onSyncedDataUpdated(EntityDataAccessor<?> key)
      Specified by:
      onSyncedDataUpdated in interface SyncedDataHolder
      Overrides:
      onSyncedDataUpdated in class Entity
    • setTarget

      public void setTarget(@Nullable UUID target)
    • getTarget

      @Nullable public UUID getTarget()
      Neo: Add getter for ItemEntity's target.
      Returns:
      The target that can pick up this item entity (if null, anyone can pick it up)
    • setThrower

      public void setThrower(Entity thrower)
    • getAge

      public int getAge()
    • setDefaultPickUpDelay

      public void setDefaultPickUpDelay()
    • setNoPickUpDelay

      public void setNoPickUpDelay()
    • setNeverPickUp

      public void setNeverPickUp()
    • setPickUpDelay

      public void setPickUpDelay(int pickupDelay)
    • hasPickUpDelay

      public boolean hasPickUpDelay()
    • setUnlimitedLifetime

      public void setUnlimitedLifetime()
    • setExtendedLifetime

      public void setExtendedLifetime()
    • makeFakeItem

      public void makeFakeItem()
    • getSpin

      public float getSpin(float partialTicks)
    • copy

      public ItemEntity copy()
    • getSoundSource

      public SoundSource getSoundSource()
      Overrides:
      getSoundSource in class Entity
    • getVisualRotationYInDegrees

      public float getVisualRotationYInDegrees()
      Overrides:
      getVisualRotationYInDegrees in class Entity
    • getSlot

      public SlotAccess getSlot(int slot)
      Overrides:
      getSlot in class Entity