Scripting HelpersARCHIVE
A little piece of Roblox history. Preserved for everyone, one question at a time.Read about the archive →
COMMUNITY QUESTION

"FindPartOnRayWithIgnoreList is not a valid member of DataModel 'Baseplate'" How do I fix this?

--Variables
local player = game.Players.LocalPlayer
local char = player.Character
local RunService = game:GetService("RunService")

--MainScript
char.Humanoid.CameraOffset = Vector3.new(0, 0, -1)

for i,v in pairs(char:GetChildren()) do
	if v:IsA("BasePart") and v.Name ~= "Head" then
		v.LocalTransparencyModifier = v.Transparency
		v:GetPropertyChangedSignal("LocalTransparencyModifier"):Connect(function()
			v.LocalTransparencyModifier = v.Transparency
		end)
	end
end

RunService.RenderStepped:Connect(function(step)
	local ray = Ray.new(char.Head.Position, ((char.Head.CFrame + char.Head.CFrame.LookVector * 2) - char.Head.Position).Position.Unit)
	
	local IgnoreList = char:GetChildren()
	
	local hit, pos = game:FindPartOnRayWithIgnoreList(ray, IgnoreList)
	
	if hit then
		char.Humanod.CameraOffset = Vector3.new(0,0, -(char.Head.Position - pos).magnitude)
	else
		char.Humanoid.CameraOffset = Vector3.new(0,0,-1)
	end
end)

1 answer

FindPartOnRayWithIgnoreList is a function of WorldRoot, not DataModels.

Change it to this:

local hit, pos = game.Workspace:FindPartOnRayWithIgnoreList(ray, IgnoreList)

This discussion is preserved as it was. New answers, comments, and votes are closed.