Why are you calling the function remove_projectile(); //remove me once distance is met, if you are using already a trigger event?

And in the event function do you need those waits and sleeps?