Interface EntityTracker


  • public interface EntityTracker
    • Method Detail

      • user

        UserConnection user()
        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
      • 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:
        java.lang.IllegalArgumentException - if entitiy 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:
        java.lang.IllegalArgumentException - if entitiy 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 java.lang.String currentWorld()
        Returns the name of the world the player is currently in.
        Returns:
        world name of the current world
      • setCurrentWorld

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