breakBlock

public static boolean breakBlock(Player player, Block block, Material expected, ItemStack drop)

Removes an unchanged, authorized block synchronously, then emits the authored drop. Null means intentional no drops. The child event can cancel or suppress drops.