[C] Call EntityChangeBlockEvent for fire arrows hitting TNT blocks. Adds BUKKIT-4355

The Issue:

Fire arrows hitting TNT blocks ignites them. Unlike all other methods of ignition, there is no way in Bukkit to cancel it.

Justification for this PR:

Plugins should be able to cancel the ignition of TNT by fire arrows.

PR Breakdown:

This PR calls the EntityChangeBlockEvent if a fire arrow hits a TNT block. The block is set to the TNT block, the entity to the arrow hitting the block. If the event is cancelled, the TNT will not be ignited.


Testing Results and Materials:

These changes are running fine on our server for a month now. A plugin determines on conditions like shooting player or location if the TNT is allowed to ignite or not.

Relevant PR(s):

-

JIRA Ticket:

BUKKIT-4355 - https://bukkit.atlassian.net/browse/BUKKIT-4355