loadstring([[ local Players = game:GetService("Players") local TweenService = game:GetService("TweenService") local RunService = game:GetService("RunService") local player = Players.LocalPlayer local on = false -- Create GUI button that stays on death local gui = Instance.new("ScreenGui") gui.ResetOnSpawn = false gui.Parent = player:WaitForChild("PlayerGui") local btn = Instance.new("TextButton", gui) btn.Size = UDim2.new(0, 120, 0, 50) btn.Position = UDim2.new(0, 20, 0, 20) btn.BackgroundColor3 = Color3.fromRGB(50, 50, 50) btn.TextColor3 = Color3.new(1,1,1) btn.Text = "MoneyFarm: OFF" -- Helper to tween player to position local function tweenTo(pos, dur) local root = player.Character and player.Character:FindFirstChild("HumanoidRootPart") if not root then return end TweenService:Create(root, TweenInfo.new(dur or 0.1, Enum.EasingStyle.Linear), {CFrame = CFrame.new(pos)}):Play() wait(dur or 0.1) end -- Spam proximity prompt to pick up cash local function spamPrompt(prompt) if not prompt then return end prompt:InputHoldBegin() wait(0.1) prompt:InputHoldEnd() end -- Main money farm loop local function farmCash() local spawns = workspace:FindFirstChild("MoneySpawns") if not spawns then return end while on do for _, cash in pairs(spawns:GetChildren()) do if not on then break end local pos = cash:IsA("Model") and (cash.PrimaryPart and cash.PrimaryPart.Position or cash:GetPivot().Position) or (cash:IsA("BasePart") and cash.Position) if pos then tweenTo(pos, 0.05) wait(0.1) local prompt = cash:FindFirstChildWhichIsA("ProximityPrompt", true) if prompt then spamPrompt(prompt) end end end wait(0.5) end end -- Toggle button btn.MouseButton1Click:Connect(function() on = not on btn.Text = on and "MoneyFarm: ON" or "MoneyFarm: OFF" if on then coroutine.wrap(farmCash)() end end) ]])()