local R = Ray.new(Player.Character:WaitForChild("HumanoidRootPart").Position, Player.Character:WaitForChild("HumanoidRootPart").CFrame.lookVector * 9)
local IgnoreList = {Player.Character or Player.CharacterAdded:Wait()
}
for i,v in pairs(workspace:GetDescendants()) do
if (v:IsA("Accessory"))
or (v:IsA("Tool"))
or (v:IsA("Part")) and v.CanCollide == false
or (v:IsA("Part"))
or v.Name == "Part" then
table.insert(IgnoreList,v)
end
end
local v = workspace:FindPartOnRayWithIgnoreList(R, IgnoreList)
1 Like
Try this
local R = Ray.new(Player.Character:WaitForChild("HumanoidRootPart").Position, Player.Character:WaitForChild("HumanoidRootPart").CFrame.lookVector * 9)
local IgnoreList = {Player.Character or Player.CharacterAdded:Wait()
}
for i,v in pairs(workspace:GetDescendants()) do
if (v:IsA("Accessory"))
or (v:IsA("Tool"))
or (v:IsA("Part")) and v.CanCollide == false
or (v:IsA("Part"))
or v.Name == "Part" then
IgnoreList [#IgnoreList + 1] = v
end
end
local v = workspace:FindPartOnRayWithIgnoreList(R, IgnoreList)
Hello, AK47xM16!
Currently, workspace:FindPartOnRayWithIgnoreList
is depricated.
Use workspace:Raycast
instead! WorldRoot | Documentation - Roblox Creator Hub
local R = Ray.new(Player.Character:WaitForChild("HumanoidRootPart").Position, Player.Character:WaitForChild("HumanoidRootPart").CFrame.lookVector * 9)
repeat wait() until Player.Character ~= nil
local IgnoreList = {Player.Character} --It gets all the descendants!
local params = RaycastParams.new()
params.FilterType = Enum.RaycastFilterType.Blacklist
params.FilterDescendantsInstances = IgnoreList
local raycastResult = workspace:Raycast(rayOrigin, rayDirection, raycastParams)
if raycastResult then
local hitPart = raycastResult.Instance
local pos = raycastResult.Position
--insert code here
end
end