I would just package oncollision and if our vehicle collided with a player, check if the player's z position is lower than the vehicle's z position. Other things would play into the equation but that is just the base of it.
It's not a good idea to try and re-do default logic. It would be better to package the damage method for the player, check the damage type (you'll need to figure out the vehicle damage type first) and then check the damage amount and remaining health to determine if it was fatal or not.