Class MultiBlockComponentEntity

java.lang.Object
net.neoforged.neoforge.attachment.AttachmentHolder
net.minecraft.world.level.block.entity.BlockEntity
team.lodestar.lodestone.modules.toolkit.blockentity.LodestoneBlockEntity
team.lodestar.lodestone.modules.toolkit.multiblock.MultiBlockComponentEntity
All Implemented Interfaces:
net.neoforged.neoforge.attachment.IAttachmentHolder, net.neoforged.neoforge.common.extensions.IBlockEntityExtension, IInventoryCapabilityProvider

public class MultiBlockComponentEntity extends LodestoneBlockEntity implements IInventoryCapabilityProvider
A basic Multiblock component block entity. Defers some important actions to the core of the multiblock.
  • Nested Class Summary

    Nested classes/interfaces inherited from class net.minecraft.world.level.block.entity.BlockEntity

    net.minecraft.world.level.block.entity.BlockEntity.DataComponentInput

    Nested classes/interfaces inherited from class net.neoforged.neoforge.attachment.AttachmentHolder

    net.neoforged.neoforge.attachment.AttachmentHolder.AsField
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    net.minecraft.core.BlockPos
     

    Fields inherited from class net.minecraft.world.level.block.entity.BlockEntity

    level, remove, worldPosition

    Fields inherited from class net.neoforged.neoforge.attachment.AttachmentHolder

    ATTACHMENTS_NBT_KEY
  • Constructor Summary

    Constructors
    Constructor
    Description
    MultiBlockComponentEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state)
     
    MultiBlockComponentEntity(LodestoneBlockEntityType<?> type, net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state)
     
  • Method Summary

    Modifier and Type
    Method
    Description
     
    net.neoforged.neoforge.items.IItemHandler
    getInventory(net.minecraft.core.Direction direction)
     
    protected void
    loadAdditional(net.minecraft.nbt.CompoundTag pTag, net.minecraft.core.HolderLookup.Provider pRegistries)
     
    void
    onBreak(@Nullable net.minecraft.world.entity.player.Player player)
     
    net.minecraft.world.item.ItemStack
    onClone(net.minecraft.world.level.block.state.BlockState state, net.minecraft.world.phys.HitResult target, net.minecraft.world.level.BlockGetter level, net.minecraft.core.BlockPos pos, net.minecraft.world.entity.player.Player player)
     
    net.minecraft.world.ItemInteractionResult
    onUse(net.minecraft.world.entity.player.Player player, net.minecraft.world.InteractionHand hand)
     
    net.minecraft.world.ItemInteractionResult
    onUseWithItem(net.minecraft.world.entity.player.Player player, net.minecraft.world.item.ItemStack stack, net.minecraft.world.InteractionHand hand)
     
    net.minecraft.world.InteractionResult
    onUseWithoutItem(net.minecraft.world.entity.player.Player player)
     
    protected void
    saveAdditional(net.minecraft.nbt.CompoundTag pTag, net.minecraft.core.HolderLookup.Provider pRegistries)
     

    Methods inherited from class net.minecraft.world.level.block.entity.BlockEntity

    addEntityType, applyComponents, applyComponentsFromItemStack, applyImplicitComponents, clearRemoved, collectComponents, collectImplicitComponents, components, fillCrashReportCategory, getBlockPos, getBlockState, getLevel, getPersistentData, getPosFromTag, hasLevel, isRemoved, isValidBlockState, loadCustomOnly, loadStatic, loadWithComponents, onlyOpCanSetNbt, parseCustomNameSafe, removeComponentsFromTag, removeData, saveCustomAndMetadata, saveCustomOnly, saveToItem, saveWithFullMetadata, saveWithId, saveWithoutMetadata, setBlockState, setChanged, setChanged, setComponents, setData, setLevel, setRemoved, syncData, triggerEvent

    Methods inherited from class net.neoforged.neoforge.attachment.AttachmentHolder

    deserializeAttachments, getData, getExistingDataOrNull, hasAttachments, hasData, serializeAttachments

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface net.neoforged.neoforge.attachment.IAttachmentHolder

    getData, getExistingData, getExistingData, getExistingDataOrNull, hasData, removeData, setData, syncData

    Methods inherited from interface net.neoforged.neoforge.common.extensions.IBlockEntityExtension

    getModelData, handleUpdateTag, hasCustomOutlineRendering, invalidateCapabilities, onChunkUnloaded, onDataPacket, onLoad, requestModelDataUpdate
  • Field Details

    • corePos

      public net.minecraft.core.BlockPos corePos
  • Constructor Details

    • MultiBlockComponentEntity

      public MultiBlockComponentEntity(LodestoneBlockEntityType<?> type, net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state)
    • MultiBlockComponentEntity

      public MultiBlockComponentEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state)
  • Method Details

    • getInventory

      public net.neoforged.neoforge.items.IItemHandler getInventory(net.minecraft.core.Direction direction)
      Specified by:
      getInventory in interface IInventoryCapabilityProvider
    • saveAdditional

      protected void saveAdditional(net.minecraft.nbt.CompoundTag pTag, net.minecraft.core.HolderLookup.Provider pRegistries)
      Overrides:
      saveAdditional in class net.minecraft.world.level.block.entity.BlockEntity
    • loadAdditional

      protected void loadAdditional(net.minecraft.nbt.CompoundTag pTag, net.minecraft.core.HolderLookup.Provider pRegistries)
      Overrides:
      loadAdditional in class net.minecraft.world.level.block.entity.BlockEntity
    • onClone

      public net.minecraft.world.item.ItemStack onClone(net.minecraft.world.level.block.state.BlockState state, net.minecraft.world.phys.HitResult target, net.minecraft.world.level.BlockGetter level, net.minecraft.core.BlockPos pos, net.minecraft.world.entity.player.Player player)
      Overrides:
      onClone in class LodestoneBlockEntity
    • onUse

      public net.minecraft.world.ItemInteractionResult onUse(net.minecraft.world.entity.player.Player player, net.minecraft.world.InteractionHand hand)
      Overrides:
      onUse in class LodestoneBlockEntity
    • onUseWithoutItem

      public net.minecraft.world.InteractionResult onUseWithoutItem(net.minecraft.world.entity.player.Player player)
      Overrides:
      onUseWithoutItem in class LodestoneBlockEntity
    • onUseWithItem

      public net.minecraft.world.ItemInteractionResult onUseWithItem(net.minecraft.world.entity.player.Player player, net.minecraft.world.item.ItemStack stack, net.minecraft.world.InteractionHand hand)
      Overrides:
      onUseWithItem in class LodestoneBlockEntity
    • onBreak

      public void onBreak(@Nullable @Nullable net.minecraft.world.entity.player.Player player)
      Overrides:
      onBreak in class LodestoneBlockEntity
    • getCore

      public Optional<MultiBlockCoreEntity> getCore()