-- [[ Rscripts Risk Notice ]] -- This script is not verified by rscripts.net. Deal with caution. -- -- Stay safe: -- • Never log in on unofficial Roblox sites or lookalike domains. -- • Real Roblox links use roblox.com (check the .com ending). -- • Treat fake Roblox login / "claim reward" pages as phishing. -- [[ End Rscripts Risk Notice ]] local speed = 150 local flyHeight = 5 local Players = game:GetService("Players") local RunService = game:GetService("RunService") local player = Players.LocalPlayer local autofarm = true local function flyToPosition(targetPos) local character = player.Character if not character then return false end local rootPart = character:FindFirstChild("HumanoidRootPart") local humanoid = character:FindFirstChildOfClass("Humanoid") if not rootPart or not humanoid or humanoid.Health <= 0 then return false end humanoid:SetStateEnabled(Enum.HumanoidStateType.FallingDown, false) humanoid:SetStateEnabled(Enum.HumanoidStateType.Physics, false) humanoid.PlatformStand = true local targetCFrame = CFrame.new(targetPos + Vector3.new(0, flyHeight, 0)) local bodyVelocity = Instance.new("BodyVelocity") bodyVelocity.MaxForce = Vector3.new(1e9, 1e9, 1e9) bodyVelocity.Velocity = Vector3.new(0, 0, 0) bodyVelocity.Parent = rootPart local bodyGyro = Instance.new("BodyGyro") bodyGyro.MaxTorque = Vector3.new(1e9, 1e9, 1e9) bodyGyro.CFrame = rootPart.CFrame bodyGyro.Parent = rootPart local startPos = rootPart.Position local distance = (startPos - targetPos).Magnitude if distance < 1 then bodyVelocity:Destroy() bodyGyro:Destroy() humanoid.PlatformStand = false return true end local duration = distance / speed local elapsed = 0 while elapsed < duration do if not autofarm then break end local alpha = elapsed / duration local currentPos = startPos:Lerp(targetPos, alpha) local currentCFrame = CFrame.new(currentPos + Vector3.new(0, flyHeight, 0)) rootPart.CFrame = currentCFrame if elapsed < duration - 0.1 then local nextAlpha = (elapsed + 0.05) / duration local nextPos = startPos:Lerp(targetPos, nextAlpha) local direction = (nextPos - currentPos).unit if direction.Magnitude > 0.1 then bodyGyro.CFrame = CFrame.lookAt(currentPos, currentPos + direction) end end elapsed = elapsed + 0.05 task.wait(0.05) end rootPart.CFrame = CFrame.new(targetPos + Vector3.new(0, flyHeight, 0)) bodyVelocity:Destroy() bodyGyro:Destroy() humanoid.PlatformStand = false humanoid:SetStateEnabled(Enum.HumanoidStateType.FallingDown, true) humanoid:SetStateEnabled(Enum.HumanoidStateType.Physics, true) return true end local function firePrompt(prompt) if not prompt then return false end if fireproximityprompt then fireproximityprompt(prompt) return true end prompt:InputBegan(Enum.UserInputType.Keyboard) task.wait(1.2) prompt:InputEnded(Enum.UserInputType.Keyboard) return true end local function getJobParts() local gameStuff = workspace:FindFirstChild("GameStuff") if not gameStuff then return nil end local jobs = gameStuff:FindFirstChild("Jobs") if not jobs then return nil end local boxJob = jobs:FindFirstChild("BoxJob") if not boxJob then return nil end local deliverySystem = boxJob:FindFirstChild("DeliverySystem") if not deliverySystem then return nil end local folder = deliverySystem:FindFirstChild("DontDeleteTheseObjects") if not folder then return nil end local getJobPart = folder:FindFirstChild("GetJobPart") local targetPart = folder:FindFirstChild("TargetPart") local prompt = getJobPart and getJobPart:FindFirstChildOfClass("ProximityPrompt") if getJobPart and targetPart and prompt then return { getJobPart = getJobPart, targetPart = targetPart, prompt = prompt } end return nil end local function startAutofarm() while autofarm do local jobParts = getJobParts() if jobParts then if flyToPosition(jobParts.getJobPart.Position) then task.wait(0.3) firePrompt(jobParts.prompt) task.wait(0.8) flyToPosition(jobParts.targetPart.Position) task.wait(0.3) end else task.wait(1) end task.wait(0.5) end end task.spawn(startAutofarm)