Interface IForgeBlockEntity
- All Superinterfaces:
ICapabilityProvider
- All Known Implementing Classes:
AbstractFurnaceBlockEntity,BannerBlockEntity,BarrelBlockEntity,BaseContainerBlockEntity,BeaconBlockEntity,BedBlockEntity,BeehiveBlockEntity,BellBlockEntity,BlastFurnaceBlockEntity,BlockEntity,BrewingStandBlockEntity,BrushableBlockEntity,CalibratedSculkSensorBlockEntity,CampfireBlockEntity,ChestBlockEntity,ChiseledBookShelfBlockEntity,CommandBlockEntity,ComparatorBlockEntity,ConduitBlockEntity,CrafterBlockEntity,DaylightDetectorBlockEntity,DecoratedPotBlockEntity,DispenserBlockEntity,DropperBlockEntity,EnchantingTableBlockEntity,EnderChestBlockEntity,FluidHandlerBlockEntity,FurnaceBlockEntity,HangingSignBlockEntity,HopperBlockEntity,JigsawBlockEntity,JukeboxBlockEntity,LecternBlockEntity,PistonMovingBlockEntity,RandomizableContainerBlockEntity,SculkCatalystBlockEntity,SculkSensorBlockEntity,SculkShriekerBlockEntity,ShulkerBoxBlockEntity,SignBlockEntity,SkullBlockEntity,SmokerBlockEntity,SpawnerBlockEntity,StructureBlockEntity,TheEndGatewayBlockEntity,TheEndPortalBlockEntity,TrappedChestBlockEntity,TrialSpawnerBlockEntity,VaultBlockEntity
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final AABBSometimes default render bounding box: infinite in scope. -
Method Summary
Modifier and TypeMethodDescriptiondefault @NotNull ModelDataAllows you to return additional model data.default AABBReturn anAABBthat controls the visible scope of aBlockEntityWithoutLevelRendererassociated with thisBlockEntityDefaults to the collision bounding boxBlockBehaviour.BlockStateBase.getCollisionShape(BlockGetter, BlockPos)associated with the block at this location.default voidhandleUpdateTag(CompoundTag tag, HolderLookup.Provider holders) Called when the chunk's TE update tag, gotten from, is received on the client.invalid reference
BlockEntity#getUpdateTag()default booleanhasCustomOutlineRendering(Player player) Returns whether thisBlockEntityhas custom outline rendering behavior.default voiddefault voidonDataPacket(Connection connection, ClientboundBlockEntityDataPacket pkt, HolderLookup.Provider lookup) Called when you receive a TileEntityData packet for the location this TileEntity is currently in.default voidonLoad()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 voidRequests a refresh for the model data of your TE Call this every time yourgetModelData()changesprivate BlockEntityself()Methods inherited from interface net.minecraftforge.common.capabilities.ICapabilityProvider
getCapability, getCapability
-
Field Details
-
INFINITE_EXTENT_AABB
Sometimes default render bounding box: infinite in scope. Used to control rendering onBlockEntityWithoutLevelRenderer.
-
-
Method Details
-
self
-
onDataPacket
default void onDataPacket(Connection connection, ClientboundBlockEntityDataPacket pkt, HolderLookup.Provider lookup) 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:
pkt- The data packetnet- The NetworkManager the packet originated from
-
handleUpdateTag
Called when the chunk's TE update tag, gotten from, is received on the client.invalid reference
BlockEntity#getUpdateTag()Used to handle this tag in a special way. By default this simply calls
BlockEntity.loadWithComponents(CompoundTag, HolderLookup.Provider).- Parameters:
tag- TheCompoundTagsent frominvalid reference
BlockEntity#getUpdateTag()
-
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. -
getRenderBoundingBox
Return anAABBthat controls the visible scope of aBlockEntityWithoutLevelRendererassociated with thisBlockEntityDefaults to the collision bounding boxBlockBehaviour.BlockStateBase.getCollisionShape(BlockGetter, BlockPos)associated with the block at this location.- Returns:
- an appropriately size
AABBfor theBlockEntity
-
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 yourBakedModelYou 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 thisBlockEntityhas custom outline rendering behavior.- Parameters:
player- the local player currently viewing thisBlockEntity- Returns:
trueto enable outline processing
-