BlockEvent.PLACE is fired after the block has been placed on Fabric, cancellation causes problems
TropheusJ opened this issue ยท 1 comments
The place event is not called until after the block has been placed on Fabric.
It's invoked here, in BlockItem.place, at the getClickedPos call.
This code will only be run if a block is successfully placed.

This leads to discrepancies. If a mod cancels, an item will not be consumed, even though the block was placed.
An example of this is a Create Deployer in a chunk claimed by FTB Chunks. The deployer tries to place, but FTB Chunks cancels. No item is consumed since it failed. This results in duplicating blocks.
There's actually a PR open for this: #395