local function v(P,i)i=i or 120 local n,l=Workspace:FindPartOnRayWithIgnoreList(Ray.new(P,UpVec*i),ignoreList)if n then return n.Transparency~=1 and true or v(l+UpVec,i-(P-l).Magnitude)else return false end end

local function UnderObject(pos, l)
	l = l or 120
	
	local hit, position = Workspace:FindPartOnRayWithIgnoreList(Ray.new(pos, UpVec * l), ignoreList)
	if hit then
		return hit.Transparency ~= 1 and true or UnderObject(position + UpVec, l - (pos - position).Magnitude)
	else
		return false
	end
end
