Class ActiveTile<T extends ActiveTile<T>>

java.lang.Object
net.minecraftforge.common.capabilities.CapabilityProvider<net.minecraft.world.level.block.entity.BlockEntity>
net.minecraft.world.level.block.entity.BlockEntity
com.hrznstudio.titanium.block.tile.BasicTile<T>
com.hrznstudio.titanium.block.tile.ActiveTile<T>
All Implemented Interfaces:
IScreenAddonProvider, IScreenInfoProvider, ITickableBlockEntity<T>, IHasAssetProvider, IComponentHarness, IFacingComponentHarness, IContainerAddonProvider, IButtonHandler, net.minecraft.world.inventory.MenuConstructor, net.minecraft.world.MenuProvider, net.minecraftforge.common.capabilities.ICapabilityProvider, net.minecraftforge.common.capabilities.ICapabilityProviderImpl<net.minecraft.world.level.block.entity.BlockEntity>, net.minecraftforge.common.capabilities.ICapabilitySerializable<net.minecraft.nbt.CompoundTag>, net.minecraftforge.common.extensions.IForgeBlockEntity, net.minecraftforge.common.util.INBTSerializable<net.minecraft.nbt.CompoundTag>
Direct Known Subclasses:
PoweredTile

public abstract class ActiveTile<T extends ActiveTile<T>> extends BasicTile<T> implements IScreenAddonProvider, ITickableBlockEntity<T>, net.minecraft.world.MenuProvider, IButtonHandler, IFacingComponentHarness, IContainerAddonProvider, IHasAssetProvider
  • Constructor Details

    • ActiveTile

      public ActiveTile(BasicTileBlock<T> base, net.minecraft.world.level.block.entity.BlockEntityType<?> blockEntityType, net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state)
  • Method Details

    • onActivated

      @ParametersAreNonnullByDefault public net.minecraft.world.InteractionResult onActivated(net.minecraft.world.entity.player.Player player, net.minecraft.world.InteractionHand hand, net.minecraft.core.Direction facing, double hitX, double hitY, double hitZ)
      Overrides:
      onActivated in class BasicTile<T extends ActiveTile<T>>
    • onNeighborChanged

      public void onNeighborChanged(net.minecraft.world.level.block.Block blockIn, net.minecraft.core.BlockPos fromPos)
      Overrides:
      onNeighborChanged in class BasicTile<T extends ActiveTile<T>>
    • openGui

      public void openGui(net.minecraft.world.entity.player.Player player)
    • createMenu

      @Nullable public net.minecraft.world.inventory.AbstractContainerMenu createMenu(int menu, net.minecraft.world.entity.player.Inventory inventoryPlayer, net.minecraft.world.entity.player.Player entityPlayer)
      Specified by:
      createMenu in interface net.minecraft.world.inventory.MenuConstructor
    • getDisplayName

      @Nonnull public net.minecraft.network.chat.Component getDisplayName()
      Specified by:
      getDisplayName in interface net.minecraft.world.MenuProvider
    • addInventory

      public void addInventory(InventoryComponent<T> handler)
    • addProgressBar

      public void addProgressBar(ProgressBarComponent<T> progressBarComponent)
    • addTank

      public void addTank(FluidTankComponent<T> tank)
    • addButton

      public void addButton(ButtonComponent button)
    • addFilter

      public void addFilter(IFilter<?> filter)
    • addBundle

      public void addBundle(IComponentBundle bundle)
    • initClient

      public void initClient()
      Overrides:
      initClient in class BasicTile<T extends ActiveTile<T>>
    • getCapability

      @Nonnull public <U> net.minecraftforge.common.util.LazyOptional<U> getCapability(@Nonnull net.minecraftforge.common.capabilities.Capability<U> cap, @Nullable net.minecraft.core.Direction side)
      Specified by:
      getCapability in interface net.minecraftforge.common.capabilities.ICapabilityProvider
      Overrides:
      getCapability in class net.minecraftforge.common.capabilities.CapabilityProvider<net.minecraft.world.level.block.entity.BlockEntity>
    • getMultiInventoryComponent

      public MultiInventoryComponent<T> getMultiInventoryComponent()
    • addGuiAddonFactory

      public void addGuiAddonFactory(IFactory<? extends IScreenAddon> factory)
    • addContainerAddonFactory

      public void addContainerAddonFactory(IFactory<? extends IContainerAddon> factory)
    • getScreenAddons

      public List<IFactory<? extends IScreenAddon>> getScreenAddons()
      Specified by:
      getScreenAddons in interface IScreenAddonProvider
    • getContainerAddons

      public List<IFactory<? extends IContainerAddon>> getContainerAddons()
      Specified by:
      getContainerAddons in interface IContainerAddonProvider
    • getAssetProvider

      public IAssetProvider getAssetProvider()
      Specified by:
      getAssetProvider in interface IHasAssetProvider
    • serverTick

      public void serverTick(net.minecraft.world.level.Level level, net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state, T blockEntity)
      Specified by:
      serverTick in interface ITickableBlockEntity<T extends ActiveTile<T>>
    • getFacingHandlerWorkTime

      public int getFacingHandlerWorkTime()
    • getFacingHandlerWorkAmount

      public int getFacingHandlerWorkAmount()
    • getMultiButtonComponent

      public MultiButtonComponent getMultiButtonComponent()
    • getFacingDirection

      public net.minecraft.core.Direction getFacingDirection()
    • getHandlerFromName

      public IFacingComponent getHandlerFromName(String string)
      Specified by:
      getHandlerFromName in interface IFacingComponentHarness
    • handleButtonMessage

      public void handleButtonMessage(int id, net.minecraft.world.entity.player.Player playerEntity, net.minecraft.nbt.CompoundTag compound)
      Specified by:
      handleButtonMessage in interface IButtonHandler
    • getSelf

      @Nonnull public abstract T getSelf()
    • getComponentWorld

      public net.minecraft.world.level.Level getComponentWorld()
      Specified by:
      getComponentWorld in interface IComponentHarness
    • markComponentDirty

      public void markComponentDirty()
      Specified by:
      markComponentDirty in interface IComponentHarness
    • markComponentForUpdate

      public void markComponentForUpdate(boolean referenced)
      Description copied from interface: IComponentHarness
      Allows a Component to force an updated
      Specified by:
      markComponentForUpdate in interface IComponentHarness
      Parameters:
      referenced - whether or not this update would be covered by an IntReferenceHolder in a container, AKA should I sync this, if I don't need it outside a container.
    • getWorldPosCallable

      public net.minecraft.world.inventory.ContainerLevelAccess getWorldPosCallable()
    • invalidateCaps

      public void invalidateCaps()
      Specified by:
      invalidateCaps in interface net.minecraftforge.common.capabilities.ICapabilityProviderImpl<T extends ActiveTile<T>>
      Overrides:
      invalidateCaps in class net.minecraftforge.common.capabilities.CapabilityProvider<net.minecraft.world.level.block.entity.BlockEntity>
    • canInteract

      public boolean canInteract()
      Specified by:
      canInteract in interface IContainerAddonProvider
    • getMultiTankComponent

      public MultiTankComponent<T> getMultiTankComponent()
    • getMultiFilterComponent

      public MultiFilterComponent getMultiFilterComponent()