Interface EntityTracker


public interface EntityTracker
  • Method Details

    • user

      Deprecated.
      User connection the tracker belongs to.
      Returns:
      user connection
    • addEntity

      void addEntity(int id, EntityType type)
      Tracks an entity.
      Parameters:
      id - entity id
      type - entity type
    • hasEntity

      boolean hasEntity(int id)
      Returns whether the entity is currently tracked.
      Parameters:
      id - entity id
      Returns:
      whether the entity is tracked
    • entity

      @Nullable TrackedEntity entity(int entityId)
      Returns the tracked entity for the given entity id if present.
      Parameters:
      entityId - entity id
      Returns:
      tracked entity if tracked
    • entityType

      @Nullable EntityType entityType(int id)
      Entity type of the entity if tracked. This returning null does not necessarily mean no entity by the id exists.
      Parameters:
      id - entity id
      Returns:
      entity type of the entity if tracked
    • removeEntity

      void removeEntity(int id)
      Untracks an entity.
      Parameters:
      id - entity id
    • clearEntities

      void clearEntities()
      Clears stored entity types and data.
    • entityData

      @Nullable StoredEntityData entityData(int id)
      Returns the stored entity data if an entity with the id is tracked, else null. If no data has been initialized yet, it will be done and returned by this method.
      Parameters:
      id - entity id
      Returns:
      stored entity data if an entity with the id is tracked, else null
      Throws:
      IllegalArgumentException - if entity data storage has not been enabled via the implementation
    • entityDataIfPresent

      @Nullable StoredEntityData entityDataIfPresent(int id)
      Returns stored entity data if it has previously been initialized by entityData(int), else null.
      Parameters:
      id - entity id
      Returns:
      stored entity data if it has previously been initialized by entityData(int)
      Throws:
      IllegalArgumentException - if entity data storage has not been enabled via the implementation
    • clientEntityId

      int clientEntityId()
      Returns the client entity id or -1 if unset.
      Returns:
      client entity id or -1 if unset
    • setClientEntityId

      void setClientEntityId(int clientEntityId)
      Sets the client entity id.
      Parameters:
      clientEntityId - client entity id
    • currentWorldSectionHeight

      int currentWorldSectionHeight()
      Returns the current world section height (block height / 16). This is always 16 for sub 1.17 worlds.
      Returns:
      current world section height
    • setCurrentWorldSectionHeight

      void setCurrentWorldSectionHeight(int currentWorldSectionHeight)
      Sets the current world section height.
      Parameters:
      currentWorldSectionHeight - world section height
    • currentMinY

      int currentMinY()
      Returns the minimum y of the current player world.
      Returns:
      minimum y of the current world
    • setCurrentMinY

      void setCurrentMinY(int currentMinY)
      Sets the minimum y of the current player world.
      Parameters:
      currentMinY - minimum y of the current world
    • currentWorld

      @Nullable String currentWorld()
      Returns the name of the world the player is currently in.
      Returns:
      world name of the current world
    • setCurrentWorld

      void setCurrentWorld(String currentWorld)
      Sets the name of the world the player is currently in.
      Parameters:
      currentWorld - name of the current world
    • biomesSent

      int biomesSent()
    • setBiomesSent

      void setBiomesSent(int biomesSent)
    • playerType

      EntityType playerType()
    • dimensionData

      @Nullable DimensionData dimensionData(String dimension)
    • dimensionData

      @Nullable DimensionData dimensionData(int dimensionId)
    • setDimensions

      void setDimensions(Map<String,DimensionData> dimensions)
    • trackClientEntity

      boolean trackClientEntity()
      Adds the client player entity to the tracker. If the client entity has not been set yet, this will return false.
      Returns:
      whether the client has been tracked