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

I cant get an NPC to teleport to a certain position?

Basically I have a folder of Customer in the workspace. I try to teleport one of them to a certain position, but It doesn't work and they don't show up. Sometimes its just deletes all the brick parts inside them for some reason

local guiFolder = script.Parent.Gui
local timer = guiFolder.Timer
local jobPartsFolder = game.Workspace:WaitForChild("burgerJobParts")
local charSpawn = jobPartsFolder:WaitForChild("burgerCharacterSpawn")
local charPos = jobPartsFolder:WaitForChild("burgerCharacterPos")
jobRunning = script.Parent:WaitForChild("jobRunning")
local plr = game.Players.LocalPlayer;
local jobFolder = plr.PlayerGui:WaitForChild("Jobs")
local customerFolder = game.Workspace:WaitForChild("Customers")
local numberCustomers = 0

-- Gets the customers and puts them in an array
local customers = customerFolder:GetChildren()
for i = 1, #customers do
	local customer = customers[i]
	numberCustomers = numberCustomers + 1
end

-- Chooses random customer
local rn = Random.new ()
local num = rn:NextInteger ( 1, numberCustomers)

-- Enables Timer
timer.Enabled = true
timer.timerScript.Disabled = false
jobRunning.Value = true


-- Manages Timer
while(jobRunning.Value) do
	if (customers[num]:FindFirstChild("Humanoid"):IsA("Humanoid")) then --// Same principles
		customers[num]:MoveTo(charSpawn.CFrame.Position)
	else
		print(customers[num].Name.." doesn't have a Humanoid.")	
    end

	num = rn:NextInteger ( 1, numberCustomers)
	wait(10)
end

1 answer

Are you trying to call the Humanoid's "MoveTo()" function? If so...

Line 32

    customers[num]:MoveTo(charSpawn.CFrame.Position)

Must be...

    customers[num].Humanoid:MoveTo(charSpawn.CFrame.Position)

If you want them to teleport completely...

    customers[num]:SetPrimaryPartCFrame(charSpawn.CFrame.Position + Vector3.new(0,3,0)) -- Teleports the customer a little higher than the charSpawn's actual height to make them not sink. Remove this if your charSpawn is above the floor.

The above method requires you to set the customer's models' PrimaryPart first. Click on the PrimaryPart property then set it to the model's HumanoidRootPart or whatever part is in the center of it.

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