create events for external research

these events get trigered when a block is placed or used, when a block is used it will check if the event is canceled
There's no functional changes in the lines below. Modifications should be removed.