local localPlayer = game.Players.LocalPlayer local character = localPlayer.Character or localPlayer.CharacterAdded:Wait() local humanoidRootPart = character:WaitForChild("HumanoidRootPart") local checkpoints = workspace:WaitForChild("Checkpoints"):GetChildren() table.sort(checkpoints, function(a, b) return tonumber(a.Name) < tonumber(b.Name) end) for _, checkpoint in ipairs(checkpoints) do if checkpoint:IsA("Part") then humanoidRootPart.CFrame = CFrame.new(checkpoint.Position) wait(1) end end