Interface Dispenser

All Superinterfaces:
BlockInventoryHolder, BlockState, Container, InventoryHolder, Lockable, LockableTileState, Lootable, LootableBlockInventory, LootableInventory, Metadatable, Nameable, PersistentDataHolder, PersistentDataViewHolder, TileState, TileStateInventoryHolder

public interface Dispenser extends Container, Nameable, LootableBlockInventory
Represents a captured state of a dispenser.
  • Method Details

    • getBlockProjectileSource

      @Nullable @Nullable BlockProjectileSource getBlockProjectileSource()
      Gets the BlockProjectileSource object for the dispenser.

      If the block represented by this state is no longer a dispenser, this will return null.

      Returns:
      a BlockProjectileSource if valid, otherwise null
      Throws:
      IllegalStateException - if this block state is not placed
    • dispense

      boolean dispense()
      Attempts to dispense the contents of the dispenser.

      If the block represented by this state is no longer a dispenser, this will return false.

      Returns:
      true if successful, otherwise false
      Throws:
      IllegalStateException - if this block state is not placed