local path = PathfindingService:CreatePath({
AgentRadius = 3,
AgentCanJump = true,
AgentCanClimb = true,
Costs = {
BuddyAvoid = 100,
PreferPath = 1,
}
})
local goal = buddyFolder.WaypointBlock
local success, errorMessage = pcall(function()
path:ComputeAsync(buddy.PrimaryPart.Position, goal.Position)
end)
if success then
idleAnim:Stop()
runAnim:Play()
for _, waypoint in pairs(path:GetWaypoints()) do
local part = Instance.new("Part")
part.Anchored = true
part.CanCollide = false
part.Shape = "Ball"
part.Material = "Neon"
part.Transparency = 0.5
part.Size = Vector3.new(0.266, 0.266, 0.266)
part.Position = waypoint.Position
part.Name = "waypoint_ball"
part.Parent = game.Workspace
humanoid:MoveTo(waypoint.Position)
humanoid.MoveToFinished:Wait()
task.delay(1, function()
part:Destroy()
end)
end
else
warn(errorMessage, "for", buddy.Name)
end
pathfinding portion