function raycursive(W,o,O)newdir=(W+o)-W local l,b=workspace:findPartOnRay(Ray.new(W,newdir.unit*999.999),O)if l then if not l.CanCollide and(l.Name~="\076\101\102\116 \065\114\109"and(l.Name~="\076\101\102\116 \076\101\103"and(l.Name~="\082\105\103\104\116 \065\114\109"and l.Name~="\082\105\103\104\116 \076\101\103")))then return raycursive(b,o,l)else return l,b end else return l,b end end


function raycursive(start,dir,ignore)
	newdir = (start+dir)-start
	local a,b = workspace:findPartOnRay(Ray.new(start,newdir.unit*999.999),ignore)
	if a then
		if not a.CanCollide and (a.Name ~= "Left Arm" and a.Name ~= "Left Leg" and a.Name ~= "Right Arm" and a.Name ~= "Right Leg") then
			return raycursive(b,dir,a)
		else
			return a,b
		end
	else
		return a,b
	end
end
