projectiles hit barriers and walls. refactored intersect code