Class BlockCanBuildEvent


  • public class BlockCanBuildEvent
    extends BlockEvent
    Called when we try to place a block, to see if we can build it here or not.

    Note:

    • The Block returned by getBlock() is the block we are trying to place on, not the block we are trying to place.
    • If you want to figure out what is being placed, use getMaterial() instead.
    • Field Detail

      • buildable

        protected boolean buildable
    • Constructor Detail

      • BlockCanBuildEvent

        @Deprecated
        public BlockCanBuildEvent​(@NotNull
                                  Block block,
                                  @NotNull
                                  BlockData type,
                                  boolean canBuild)
        Deprecated.
      • BlockCanBuildEvent

        public BlockCanBuildEvent​(@NotNull
                                  Block block,
                                  @Nullable
                                  Player player,
                                  @NotNull
                                  BlockData type,
                                  boolean canBuild)
        Parameters:
        block - the block involved in this event
        player - the player placing the block
        type - the id of the block to place
        canBuild - whether we can build
    • Method Detail

      • isBuildable

        public boolean isBuildable()
        Gets whether or not the block can be built here.

        By default, returns Minecraft's answer on whether the block can be built here or not.

        Returns:
        boolean whether or not the block can be built
      • setBuildable

        public void setBuildable​(boolean cancel)
        Sets whether the block can be built here or not.
        Parameters:
        cancel - true if you want to allow the block to be built here despite Minecraft's default behaviour
      • getMaterial

        @NotNull
        public Material getMaterial()
        Gets the Material that we are trying to place.
        Returns:
        The Material that we are trying to place
      • getBlockData

        @NotNull
        public BlockData getBlockData()
        Gets the BlockData that we are trying to place.
        Returns:
        The BlockData that we are trying to place
      • getPlayer

        @Nullable
        public Player getPlayer()
        Gets the player who placed the block involved in this event.
        May be null for legacy calls of the event.
        Returns:
        The Player who placed the block involved in this event
      • getHandlerList

        @NotNull
        public static HandlerList getHandlerList()