Class BaseEntity

java.lang.Object
com.sk89q.worldedit.entity.BaseEntity
All Implemented Interfaces:
NbtValued

public class BaseEntity extends Object implements NbtValued
Represents a mutable "snapshot" of an entity.

An instance of this class contains all the information needed to accurately reproduce the entity, provided that the instance was made correctly. In some implementations, it may not be possible to get a snapshot of entities correctly, so, for example, the NBT data for an entity may be missing.

This class identifies entities using its entity type string, although this is not very efficient as the types are currently not interned. This may be changed in the future.

  • Constructor Details

    • BaseEntity

      @Deprecated public BaseEntity(EntityType type, CompoundTag nbtData)
      Create a new base entity.
      Parameters:
      type - the entity type
      nbtData - NBT data
    • BaseEntity

      public BaseEntity(EntityType type, LazyReference<org.enginehub.linbus.tree.LinCompoundTag> nbtData)
      Create a new base entity.
      Parameters:
      type - the entity type
      nbtData - NBT data
    • BaseEntity

      public BaseEntity(EntityType type)
      Create a new base entity with no NBT data.
      Parameters:
      type - the entity type
    • BaseEntity

      public BaseEntity(BaseEntity other)
      Make a clone of a BaseEntity.
      Parameters:
      other - the object to clone
  • Method Details

    • getNbtReference

      @Nullable public LazyReference<org.enginehub.linbus.tree.LinCompoundTag> getNbtReference()
      Description copied from interface: NbtValued
      Get the object's NBT data (tile entity data).

      This only needs to be used if you don't want to immediately resolve the data. Otherwise, you probably want NbtValued.getNbt().

      Note: This method may be non-null while NbtValued.getNbt() returns null. Do NOT rely on this method to determine whether the object has NBT data.

      Specified by:
      getNbtReference in interface NbtValued
      Returns:
      compound tag, or null
    • setNbtReference

      public void setNbtReference(@Nullable LazyReference<org.enginehub.linbus.tree.LinCompoundTag> nbtData)
      Description copied from interface: NbtValued
      Set the object's NBT data (tile entity data).
      Specified by:
      setNbtReference in interface NbtValued
      Parameters:
      nbtData - NBT data, or null if no data
    • getType

      public EntityType getType()
      Get the type of entity.
      Returns:
      the entity type