Currently the handleDamage EH does not only trigger for hitpoints that have been damaged by something. It triggers for every Hitpoint of a vehicle if any of the vehicles hitpoints received miniscule damage.
Since the handleDamage EH returns current hitpointdamage (instead of damage caused by the given projectile) AND triggers for every hitpoint, results in the EH beeing super useless in finding out which hitpoints have actually been damaged.
To find out how much damage was caused to what, one has to store every hitpoint and status seperatly in variables. And on every hit, every hitpoint has to be compared against the stored variables. This is extremely messy and costing performance just for checking on unnecessary stuff.
An addition of a 10th parameter, which returns the damage actually caused by the projectile would do wonders.
With that, filtering out undamaged hitpoints would be super easy, and the very unperformant variable storing and synching wouldnt have to be done in sqf (but rather in engine, where all the information is anyway).