"Has lineOfSight" simply checks if the Player object "sees" the Projectile in a range of 50 pixels.
So of course, being at a "near" distance will always trigger before the actual collision (impact).
In your current setup, the projectile will always come from the bottom up to the top.
You could check is if the Projectile Y is less than Player's Y position as an added condition to your event 5.
This way, you could then only check that is was near, when the projectile did pass the player.