MinecraftForge/MinecraftForge — pull request #715 by copyboy (2013-08-08 18:53:08+00:00)
Title: Change when PlayerInteractEvent gets fired

- Cancelling the event will not send a packet to the server, so no event will be fired on it.
- Left click block fires on client side.
- Setting useItem to DENY will prevent the block from being broken, but will still send a dig packet (block will still break in creative if server doesn't set it to DENY as well).
- Setting useBlock to DENY will prevent the block's onBlockClicked method to be called.
- Cancelling the event will to the same as setting useItem and useBlock to DENY (except sending a packet).
- Left click block fires before the check for adventure mode, and setting useItem to ALLOW will allow blocks to be broken in adventure mode (needs to be set on both client and server to work).
- Right click air, clicking without an item in hand will still send a packet to the server, causing a right click air event.

I believe these changes are for the better, they allow for more control over block breaking and generally make things more consistent - in my opinion. But depending on if and how people have used PlayerInteractEvents, they may have to rewrite their stuff to adjust for these changes.