Interface BlockType

All Superinterfaces:
ComponentLike, DataHolder, DataHolder.Immutable<BlockType>, DefaultedRegistryValue, StateContainer<BlockState>, Taggable<BlockType>, ValueContainer

Describes a base type of block.

Blocks are further differentiated using a BlockState. Complex data, such as inventory contents, are considered data, which is provided via BlockEntity.

  • Method Details

    • item

      Return the ItemType that represents this block.
      Returns:
      The item type or Optional.empty() otherwise
    • doesUpdateRandomly

      boolean doesUpdateRandomly()
      Gets if this BlockType is set to receive random block ticks.

      Random block updates are most commonly used for growth of plants.

      Returns:
      If the BlockType updates randomly
    • setUpdateRandomly

      void setUpdateRandomly(boolean updateRandomly)
      Sets if the BlockType should receive random block updates.

      Random block updates are most commonly used for growth of plants.

      Parameters:
      updateRandomly - If the BlockType should update randomly
    • soundGroup

      BlockSoundGroup soundGroup()
      Gets the BlockSoundGroup for this block.
      Returns:
      This block's sound group.
    • isAnyOf

      boolean isAnyOf(Supplier<? extends BlockType>... types)
      Returns true if this type is any of the given block types
      Parameters:
      types - the block types to check
      Returns:
      true if this type is any of the given block types
    • isAnyOf

      boolean isAnyOf(BlockType... types)
      Returns true if this type is any of the given block types
      Parameters:
      types - the block types to check
      Returns:
      true if this type is any of the given block types
    • hasBlockEntity

      boolean hasBlockEntity()
      Returns true if this type will have a block entity when placed in the world
      Returns:
      true if this type will have a block entity when placed in the world