Scripting Helpers is winding down operations and is now read-only. More info→
Ad
Log in to vote
0

How do I keep my npc from randomly stopping when going to a waypoint?

Asked by
gavpa 0
2 years ago
Edited 2 years ago

Hello. My npc is coded to go to one waypoint, and then another (the waypoints are 2 parts in a workspace folder called "waypoints")

He goes to the first waypoint just fine, but stops when almost reaching the second waypoint. Apparently its too far for him or something.

I don't know how to get him to the end. Help would be appreciated!

my code:

local npc = script.Parent local waypoints = workspace.Waypoints:GetChildren() local waypoint = 0

function move()

local choosing = waypoint + 1

local destination = waypoints[choosing]

npc:MoveTo(destination.Position)

npc.MoveToFinished:Wait()

nextstep()

end

function nextstep()

waypoint = waypoint + 1

if waypoint == 4 then

waypoint = 0

end

move()

end

1 answer

Log in to vote
0
Answered by 2 years ago

I think your problem is that you aren't putting it in a loop, so maybe try this:

local npc = script.Parent local waypoints = workspace.Waypoints:GetChildren() 
local waypoint = 0

while wait() do
function move()

local choosing = waypoint + 1

local destination = waypoints[choosing]

npc:MoveTo(destination.Position)

npc.MoveToFinished:Wait()

nextstep()

end

function nextstep()

waypoint = waypoint + 1

if waypoint == 4 then

waypoint = 0

end

move()

end
end

If that doesn't work, try doing this:

local npc = script.Parent local waypoints = workspace.Waypoints:GetChildren()
local waypoint = 0

local function nextstep()

waypoint = waypoint + 1

if waypoint == 4 then

waypoint = 0

end

move()

end

function move()

local choosing = waypoint + 1

local destination = waypoints[choosing]

npc:MoveTo(destination.Position)

npc.MoveToFinished:Wait()

nextstep()

end


Sorry if it doesn't work, I'm not really the best with scripting.

Ad

Answer this question