
Keyless

local plr = game.Players.LocalPlayer
local char = plr.Character or plr.CharacterAdded:Wait()
local hrp = char:WaitForChild("HumanoidRootPart")
local hum = char:WaitForChild("Humanoid")
local rs = game:GetService("RunService")
local speed = 120
local dist = 2
local noclip
local function on()
noclip = rs.Heartbeat:Connect(function()
hum.PlatformStand = true
for _,v in ipairs(char:GetDescendants()) do
if v:IsA("BasePart") then
v.CanCollide = false
end
end
hrp.AssemblyLinearVelocity = Vector3.zero
hrp.AssemblyAngularVelocity = Vector3.zero
end)
end
local function off()
if noclip then noclip:Disconnect() end
hum.PlatformStand = false
end
local function goto(pos)
while (hrp.Position - pos).Magnitude > dist do
local diff = pos - hrp.Position
local step = math.min(speed * task.wait(), diff.Magnitude)
hrp.CFrame = CFrame.new(hrp.Position + diff.Unit * step, pos)
end
end
local function getPrompts()
local t = {}
for _,v in ipairs(workspace:GetDescendants()) do
if v:IsA("ProximityPrompt") and v.ActionText == "Collect Amber" then
table.insert(t, v)
end
end
return t
end
on()
local prompts = getPrompts()
local last = tick()
while true do
if tick() - last > 1 then
prompts = getPrompts()
last = tick()
end
for i = #prompts,1,-1 do
if not prompts[i] or not prompts[i].Parent then
table.remove(prompts,i)
end
end
if #prompts == 0 then
task.wait(.2)
continue
end
local closest, idx, d
for i,p in ipairs(prompts) do
local part = p.Parent:IsA("BasePart") and p.Parent or p.Parent:FindFirstChildWhichIsA("BasePart")
if part then
local distNow = (hrp.Position - part.Position).Magnitude
if not d or distNow < d then
d, idx, closest = distNow, i, p
end
end
end
if closest then
local part = closest.Parent:IsA("BasePart") and closest.Parent or closest.Parent:FindFirstChildWhichIsA("BasePart")
if part then
task.wait(.3)
goto(part.Position + Vector3.new(0,3,0))
pcall(function() fireproximityprompt(closest,1) end)
table.remove(prompts, idx)
task.wait(.4)
else
table.remove(prompts, idx)
end
end
end
How to use it?
No longer works, it keeps teleporting you back where you first move
@BLOODOL try to reduce the speed
No longer works