Interface IBlockEntityExtension
- All Known Implementing Classes:
AbstractFurnaceBlockEntity
,BannerBlockEntity
,BarrelBlockEntity
,BaseContainerBlockEntity
,BeaconBlockEntity
,BedBlockEntity
,BeehiveBlockEntity
,BellBlockEntity
,BlastFurnaceBlockEntity
,BlockEntity
,BlockPropertyTests.LightBlockEntity
,BrewingStandBlockEntity
,BrushableBlockEntity
,CalibratedSculkSensorBlockEntity
,CampfireBlockEntity
,ChestBlockEntity
,ChiseledBookShelfBlockEntity
,CommandBlockEntity
,ComparatorBlockEntity
,ConduitBlockEntity
,CrafterBlockEntity
,CustomHeadTest.CustomSkullBlockEntity
,CustomItemDisplayContextTest.ItemHangerBlockEntity
,CustomSignsTest.CustomHangingSignBlockEntity
,CustomSignsTest.CustomSignBlockEntity
,DaylightDetectorBlockEntity
,DecoratedPotBlockEntity
,DispenserBlockEntity
,DropperBlockEntity
,EnchantingTableBlockEntity
,EnderChestBlockEntity
,FullPotsAccessorDemo.DioriteFlowerPotBlockEntity
,FurnaceBlockEntity
,GameTestTest.EnergyBlockEntity
,HangingSignBlockEntity
,HopperBlockEntity
,JigsawBlockEntity
,JukeboxBlockEntity
,LecternBlockEntity
,MegaModelTest.TestBlock.Entity
,PistonMovingBlockEntity
,RandomizableContainerBlockEntity
,SculkCatalystBlockEntity
,SculkSensorBlockEntity
,SculkShriekerBlockEntity
,ShulkerBoxBlockEntity
,SignBlockEntity
,SkullBlockEntity
,SmokerBlockEntity
,SpawnerBlockEntity
,StructureBlockEntity
,TheEndGatewayBlockEntity
,TheEndPortalBlockEntity
,TrappedChestBlockEntity
,TrialSpawnerBlockEntity
,VaultBlockEntity
public interface IBlockEntityExtension
-
Method Summary
Modifier and TypeMethodDescriptiondefault ModelData
Allows you to return additional model data.Gets aCompoundTag
that can be used to store custom data for this block entity.default void
handleUpdateTag
(CompoundTag tag, HolderLookup.Provider lookupProvider) Called when the chunk's TE update tag, gotten fromBlockEntity.getUpdateTag(HolderLookup.Provider)
, is received on the client.default boolean
hasCustomOutlineRendering
(Player player) Returns whether thisBlockEntity
has custom outline rendering behavior.default void
Notify all listeners that the capabilities at the positions of this block entity might have changed.default void
default void
onDataPacket
(Connection net, ClientboundBlockEntityDataPacket pkt, HolderLookup.Provider lookupProvider) Called when you receive a TileEntityData packet for the location this TileEntity is currently in.default void
onLoad()
Called when this is first added to the world (byLevelChunk.addAndRegisterBlockEntity(BlockEntity)
) or right before the first tick when the chunk is generated or loaded from disk.default void
Requests a refresh for the model data of your TE Call this every time yourgetModelData()
changesprivate BlockEntity
self()
-
Method Details
-
self
-
onDataPacket
default void onDataPacket(Connection net, ClientboundBlockEntityDataPacket pkt, HolderLookup.Provider lookupProvider) 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 frompkt
- The data packet
-
handleUpdateTag
Called when the chunk's TE update tag, gotten fromBlockEntity.getUpdateTag(HolderLookup.Provider)
, is received on the client.Used to handle this tag in a special way. By default this simply calls
BlockEntity.loadWithComponents(CompoundTag, HolderLookup.Provider)
.- Parameters:
tag
- TheCompoundTag
sent fromBlockEntity.getUpdateTag(HolderLookup.Provider)
-
getPersistentData
CompoundTag getPersistentData()Gets aCompoundTag
that can be used to store custom data for this block entity. It will be written, and read from disc, so it persists over world saves.- Returns:
- A compound tag for custom persistent data
-
onChunkUnloaded
default void onChunkUnloaded() -
onLoad
default void onLoad()Called when this is first added to the world (byLevelChunk.addAndRegisterBlockEntity(BlockEntity)
) or right before the first tick when the chunk is generated or loaded from disk. Override instead of addingif (firstTick)
stuff in update. -
requestModelDataUpdate
default void requestModelDataUpdate()Requests a refresh for the model data of your TE Call this every time yourgetModelData()
changes -
getModelData
Allows you to return additional model data. This data can be used to provide additional functionality in yourBakedModel
You need to schedule a refresh of you model data viarequestModelDataUpdate()
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
-
hasCustomOutlineRendering
Returns whether thisBlockEntity
has custom outline rendering behavior.- Parameters:
player
- the local player currently viewing thisBlockEntity
- Returns:
true
to enable outline processing
-
invalidateCapabilities
@NonExtendable default void invalidateCapabilities()Notify all listeners that the capabilities at the positions of this block entity might have changed. This includes new capabilities becoming available.This is just a convenience method for
ILevelExtension.invalidateCapabilities(BlockPos)
.
-