From what I understand in that linked thread, their solution detects if unit was damaged by an orb effect. You mentioned that this ability has health cost instead of mana cost, so it is something that should be detected before arrow is being shot.
If you use the linked solution, it will look like this:
1. caster shoots enchanted arrow
2. arrow flies towards target over some time
3. arrow hits target, caster's health is decreased
Second step will have variable length depending on projectile speed and distance between caster and target. It could take a second for the projectile to reach the target. Meaning the health cost would be delayed as well. During that time the caster may shoot another arrow, stacking the health cost to levels where you would normally not allow the ability to be cast.
----
On a side note, that thread is very old - their solution is using dynamically created and destroyed triggers to detect when any unit is damaged, because at that time there was only "<specific unit> is damaged" event. Nowadays we have "any unit is damaged" events, so you can have a single GUI trigger.