VehicleBlockCollisionEvent event is not triggered when in a boat:
- I've tested same code with minecart => VehicleBlockCollisionEvent triggered
- Tested by colliding solid blocks around the water => nothing
- Tested by colliding lilipads in water (and so break them) => nothing
- Tested with @EventHandler(ignoreCancelled = false) => nothing
On the contrary (but maybe the attendee result), VehicleEntityCollisionEvent triggers constantly even when NOT moving (I suppose every ticks) between the player and the boat. In a Minecart, it also trigger often but only when moving.
Attached code is a simple class which print in console the name of the event triggered for both VehicleBlockCollisionEvent & VehicleEntityCollisionEvent.
See this discussion:
https://www.spigotmc.org/threads/how-to-check-collision-for-boat.408472