Class ContainerBlockEntity
java.lang.Object
net.neoforged.neoforge.attachment.AttachmentHolder
net.minecraft.world.level.block.entity.BlockEntity
com.portingdeadmods.portingdeadlibs.api.blockentities.ContainerBlockEntity
- All Implemented Interfaces:
net.neoforged.neoforge.attachment.IAttachmentHolder,net.neoforged.neoforge.common.extensions.IBlockEntityExtension
- Direct Known Subclasses:
ExampleContainerBlockEntity,GhostMultiblockControllerBE
public abstract class ContainerBlockEntity
extends net.minecraft.world.level.block.entity.BlockEntity
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classstatic interfacestatic classstatic classstatic interfacestatic classstatic interfaceNested classes/interfaces inherited from class net.minecraft.world.level.block.entity.BlockEntity
net.minecraft.world.level.block.entity.BlockEntity.DataComponentInputNested classes/interfaces inherited from class net.neoforged.neoforge.attachment.AttachmentHolder
net.neoforged.neoforge.attachment.AttachmentHolder.AsField -
Field Summary
Fields inherited from class net.minecraft.world.level.block.entity.BlockEntity
level, remove, worldPositionFields inherited from class net.neoforged.neoforge.attachment.AttachmentHolder
ATTACHMENTS_NBT_KEY -
Constructor Summary
ConstructorsConstructorDescriptionContainerBlockEntity(net.minecraft.world.level.block.entity.BlockEntityType<?> blockEntityType, net.minecraft.core.BlockPos blockPos, net.minecraft.world.level.block.state.BlockState blockState) -
Method Summary
Modifier and TypeMethodDescriptionprotected voidaddEnergyStorage(ContainerBlockEntity.EnergyStorageFactory<net.neoforged.neoforge.energy.IEnergyStorage> factory, UnaryOperator<ContainerBlockEntity.EnergyStorageBuilder> builder) protected voidaddFluidHandler(ContainerBlockEntity.HandlerFactory<net.neoforged.neoforge.fluids.capability.IFluidHandler, net.neoforged.neoforge.fluids.FluidStack> factory, UnaryOperator<ContainerBlockEntity.FluidHandlerBuilder> builder) protected <C> voidaddHandler(net.minecraft.resources.ResourceLocation key, C handler) protected <C> voidaddHandler(net.minecraft.resources.ResourceLocation key, C handler, Function<C, net.neoforged.neoforge.common.util.INBTSerializable<?>> serializerFactory) protected <C> voidaddHandler(net.neoforged.neoforge.capabilities.BlockCapability<C, net.minecraft.core.Direction> capability, C handler) protected <C> voidaddHandler(net.neoforged.neoforge.capabilities.BlockCapability<C, net.minecraft.core.Direction> capability, C handler, Function<C, net.neoforged.neoforge.common.util.INBTSerializable<?>> serializerFactory) protected voidaddItemHandler(ContainerBlockEntity.HandlerFactory<net.neoforged.neoforge.items.IItemHandler, net.minecraft.world.item.ItemStack> factory, UnaryOperator<ContainerBlockEntity.ItemHandlerBuilder> builder) voiddropItems(net.neoforged.neoforge.items.IItemHandler handler) net.minecraft.world.item.ItemStackforceExtractItem(net.neoforged.neoforge.items.IItemHandlerModifiable handler, int slot, int amount, boolean simulate, Consumer<Integer> onChanged) net.minecraft.world.item.ItemStackforceInsertItem(net.neoforged.neoforge.items.IItemHandlerModifiable handler, int slot, net.minecraft.world.item.ItemStack stack, boolean simulate, Consumer<Integer> onChanged) net.minecraft.world.item.ItemStackforceInsertItem(net.neoforged.neoforge.items.IItemHandlerModifiable handler, List<Integer> slots, net.minecraft.world.item.ItemStack stack, boolean simulate, Consumer<Integer> onChanged) net.neoforged.neoforge.energy.IEnergyStoragenet.neoforged.neoforge.energy.IEnergyStoragegetEnergyStorageOnSide(net.minecraft.core.Direction direction) net.neoforged.neoforge.fluids.capability.IFluidHandlernet.neoforged.neoforge.fluids.capability.IFluidHandlergetFluidHandlerOnSide(net.minecraft.core.Direction direction) <C> CgetHandler(net.minecraft.resources.ResourceLocation key) <C> CgetHandler(net.neoforged.neoforge.capabilities.BlockCapability<C, net.minecraft.core.Direction> capability) <T> TgetHandlerOnSide(net.neoforged.neoforge.capabilities.BlockCapability<T, @Nullable net.minecraft.core.Direction> capability, ContainerBlockEntity.SidedHandlerSupplier<T> handlerSupplier, net.minecraft.core.Direction direction, T baseHandler) net.neoforged.neoforge.items.IItemHandlernet.neoforged.neoforge.items.IItemHandlergetItemHandlerOnSide(net.minecraft.core.Direction direction) @Nullable net.minecraft.world.item.ItemStack[]getItemHandlerStacks(net.neoforged.neoforge.items.IItemHandler handler) List<net.minecraft.world.item.ItemStack> getSidedInteractions(net.neoforged.neoforge.capabilities.BlockCapability<T, @Nullable net.minecraft.core.Direction> capability) Get the input/output config for the blockenitity.@Nullable net.minecraft.network.protocol.Packet<net.minecraft.network.protocol.game.ClientGamePacketListener> @NotNull net.minecraft.nbt.CompoundTaggetUpdateTag(net.minecraft.core.HolderLookup.Provider provider) protected final voidloadAdditional(@NotNull net.minecraft.nbt.CompoundTag nbt, @NotNull net.minecraft.core.HolderLookup.Provider provider) protected voidloadData(net.minecraft.nbt.CompoundTag tag, net.minecraft.core.HolderLookup.Provider provider) voidonDataPacket(net.minecraft.network.Connection net, net.minecraft.network.protocol.game.ClientboundBlockEntityDataPacket pkt, net.minecraft.core.HolderLookup.Provider lookupProvider) protected final voidsaveAdditional(@NotNull net.minecraft.nbt.CompoundTag nbt, @NotNull net.minecraft.core.HolderLookup.Provider provider) protected voidsaveData(net.minecraft.nbt.CompoundTag tag, net.minecraft.core.HolderLookup.Provider provider) voidtick()voidMethods inherited from class net.minecraft.world.level.block.entity.BlockEntity
addEntityType, applyComponents, applyComponentsFromItemStack, applyImplicitComponents, clearRemoved, collectComponents, collectImplicitComponents, components, fillCrashReportCategory, getBlockPos, getBlockState, getLevel, getPersistentData, getPosFromTag, getType, hasLevel, isRemoved, isValidBlockState, loadCustomOnly, loadStatic, loadWithComponents, onlyOpCanSetNbt, parseCustomNameSafe, removeComponentsFromTag, removeData, saveCustomAndMetadata, saveCustomOnly, saveToItem, saveWithFullMetadata, saveWithId, saveWithoutMetadata, setBlockState, setChanged, setChanged, setComponents, setData, setLevel, setRemoved, syncData, triggerEventMethods inherited from class net.neoforged.neoforge.attachment.AttachmentHolder
deserializeAttachments, getData, getExistingDataOrNull, hasAttachments, hasData, serializeAttachmentsMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface net.neoforged.neoforge.attachment.IAttachmentHolder
getData, getExistingData, getExistingData, getExistingDataOrNull, hasData, removeData, setData, syncDataMethods inherited from interface net.neoforged.neoforge.common.extensions.IBlockEntityExtension
getModelData, handleUpdateTag, hasCustomOutlineRendering, invalidateCapabilities, onChunkUnloaded, onLoad, requestModelDataUpdate
-
Constructor Details
-
ContainerBlockEntity
public ContainerBlockEntity(net.minecraft.world.level.block.entity.BlockEntityType<?> blockEntityType, net.minecraft.core.BlockPos blockPos, net.minecraft.world.level.block.state.BlockState blockState)
-
-
Method Details
-
addHandler
protected <C> void addHandler(net.minecraft.resources.ResourceLocation key, C handler) -
addHandler
protected <C> void addHandler(net.neoforged.neoforge.capabilities.BlockCapability<C, net.minecraft.core.Direction> capability, C handler) -
addHandler
protected <C> void addHandler(net.neoforged.neoforge.capabilities.BlockCapability<C, net.minecraft.core.Direction> capability, C handler, Function<C, net.neoforged.neoforge.common.util.INBTSerializable<?>> serializerFactory) -
addHandler
protected <C> void addHandler(net.minecraft.resources.ResourceLocation key, C handler, Function<C, net.neoforged.neoforge.common.util.INBTSerializable<?>> serializerFactory) -
getHandler
public <C> C getHandler(net.minecraft.resources.ResourceLocation key) -
getHandler
public <C> C getHandler(net.neoforged.neoforge.capabilities.BlockCapability<C, net.minecraft.core.Direction> capability) -
getItemHandler
public net.neoforged.neoforge.items.IItemHandler getItemHandler() -
getFluidHandler
public net.neoforged.neoforge.fluids.capability.IFluidHandler getFluidHandler() -
getEnergyStorage
public net.neoforged.neoforge.energy.IEnergyStorage getEnergyStorage() -
addItemHandler
protected void addItemHandler(ContainerBlockEntity.HandlerFactory<net.neoforged.neoforge.items.IItemHandler, net.minecraft.world.item.ItemStack> factory, UnaryOperator<ContainerBlockEntity.ItemHandlerBuilder> builder) -
addFluidHandler
protected void addFluidHandler(ContainerBlockEntity.HandlerFactory<net.neoforged.neoforge.fluids.capability.IFluidHandler, net.neoforged.neoforge.fluids.FluidStack> factory, UnaryOperator<ContainerBlockEntity.FluidHandlerBuilder> builder) -
addEnergyStorage
protected void addEnergyStorage(ContainerBlockEntity.EnergyStorageFactory<net.neoforged.neoforge.energy.IEnergyStorage> factory, UnaryOperator<ContainerBlockEntity.EnergyStorageBuilder> builder) -
tick
public void tick() -
loadAdditional
protected final void loadAdditional(@NotNull @NotNull net.minecraft.nbt.CompoundTag nbt, @NotNull net.minecraft.core.HolderLookup.Provider provider) - Overrides:
loadAdditionalin classnet.minecraft.world.level.block.entity.BlockEntity
-
saveAdditional
protected final void saveAdditional(@NotNull @NotNull net.minecraft.nbt.CompoundTag nbt, @NotNull net.minecraft.core.HolderLookup.Provider provider) - Overrides:
saveAdditionalin classnet.minecraft.world.level.block.entity.BlockEntity
-
loadData
protected void loadData(net.minecraft.nbt.CompoundTag tag, net.minecraft.core.HolderLookup.Provider provider) -
saveData
protected void saveData(net.minecraft.nbt.CompoundTag tag, net.minecraft.core.HolderLookup.Provider provider) -
forceExtractItem
-
forceInsertItem
-
forceInsertItem
-
updateData
public void updateData() -
dropItems
public void dropItems(net.neoforged.neoforge.items.IItemHandler handler) -
getItemHandlerStacks
@Nullable public @Nullable net.minecraft.world.item.ItemStack[] getItemHandlerStacks(net.neoforged.neoforge.items.IItemHandler handler) -
getItemHandlerStacksList
-
getHandlerOnSide
public <T> T getHandlerOnSide(net.neoforged.neoforge.capabilities.BlockCapability<T, @Nullable net.minecraft.core.Direction> capability, ContainerBlockEntity.SidedHandlerSupplier<T> handlerSupplier, net.minecraft.core.Direction direction, T baseHandler) -
getItemHandlerOnSide
public net.neoforged.neoforge.items.IItemHandler getItemHandlerOnSide(net.minecraft.core.Direction direction) -
getFluidHandlerOnSide
public net.neoforged.neoforge.fluids.capability.IFluidHandler getFluidHandlerOnSide(net.minecraft.core.Direction direction) -
getEnergyStorageOnSide
public net.neoforged.neoforge.energy.IEnergyStorage getEnergyStorageOnSide(net.minecraft.core.Direction direction) -
getSidedInteractions
public <T> Map<net.minecraft.core.Direction,it.unimi.dsi.fastutil.Pair<IOAction, getSidedInteractionsint[]>> (net.neoforged.neoforge.capabilities.BlockCapability<T, @Nullable net.minecraft.core.Direction> capability) Get the input/output config for the blockenitity. If directions are not defined in the map, they are assumed to beIOAction.NONEand do not affect any slot.- Returns:
- Map of directions that each map to a pair that defines the IOAction as well as the tanks that are affected. Return an empty map if you do not have an itemhandler
-
getUpdatePacket
@Nullable public @Nullable net.minecraft.network.protocol.Packet<net.minecraft.network.protocol.game.ClientGamePacketListener> getUpdatePacket()- Overrides:
getUpdatePacketin classnet.minecraft.world.level.block.entity.BlockEntity
-
getUpdateTag
@NotNull public @NotNull net.minecraft.nbt.CompoundTag getUpdateTag(net.minecraft.core.HolderLookup.Provider provider) - Overrides:
getUpdateTagin classnet.minecraft.world.level.block.entity.BlockEntity
-
onDataPacket
public void onDataPacket(net.minecraft.network.Connection net, net.minecraft.network.protocol.game.ClientboundBlockEntityDataPacket pkt, net.minecraft.core.HolderLookup.Provider lookupProvider)
-