Interface IForgeTileEntity

    • Field Detail

      • INFINITE_EXTENT_AABB

        static final AxisAlignedBB INFINITE_EXTENT_AABB
        Sometimes default render bounding box: infinite in scope. Used to control rendering on TileEntitySpecialRenderer.
    • Method Detail

      • getTileEntity

        default TileEntity getTileEntity()
      • onDataPacket

        default void onDataPacket​(NetworkManager net,
                                  SUpdateTileEntityPacket pkt)
        Called when you receive a TileEntityData packet for the location this TileEntity is currently in. On the client, the NetworkManager will always be the remote server. On the server, it will be whomever is responsible for sending the packet.
        Parameters:
        net - The NetworkManager the packet originated from
        pkt - The data packet
      • handleUpdateTag

        default void handleUpdateTag​(BlockState state,
                                     CompoundNBT tag)
        Called when the chunk's TE update tag, gotten from #getUpdateTag(), is received on the client.

        Used to handle this tag in a special way. By default this simply calls #readFromNBT(NBTTagCompound).

        Parameters:
        tag - The NBTTagCompound sent from #getUpdateTag()
      • getTileData

        CompoundNBT getTileData()
        Gets a NBTTagCompound that can be used to store custom data for this tile entity. It will be written, and read from disc, so it persists over world saves.
        Returns:
        A compound tag for custom data
      • onChunkUnloaded

        default void onChunkUnloaded()
      • onLoad

        default void onLoad()
        Called when this is first added to the world (by World#addTileEntity(TileEntity)). Override instead of adding if (firstTick) stuff in update.
      • getRenderBoundingBox

        default AxisAlignedBB getRenderBoundingBox()
        Return an AxisAlignedBB that controls the visible scope of a TileEntitySpecialRenderer associated with this TileEntity Defaults to the collision bounding box Block#getCollisionBoundingBoxFromPool(World, int, int, int) associated with the block at this location.
        Returns:
        an appropriately size AxisAlignedBB for the TileEntity
      • requestModelDataUpdate

        default void requestModelDataUpdate()
        Requests a refresh for the model data of your TE Call this every time your getModelData() changes
      • getModelData

        @Nonnull
        default IModelData getModelData()
        Allows you to return additional model data. This data can be used to provide additional functionality in your IBakedModel You need to schedule a refresh of you model data via requestModelDataUpdate() if the result of this function changes. Note that this method may be called on a chunk render thread instead of the main client thread
        Returns:
        Your model data