
Key Required
OP Money Autofarm
Lua Script•127 lines (3444 chars)
local stands = workspace:WaitForChild("stands")
local player = game.Players.LocalPlayer
local remotes = game.ReplicatedStorage:WaitForChild("remotes")
local clientNPCaction = remotes:WaitForChild("clientNPCaction")
local respawn = remotes:WaitForChild("respawn")
local vim = game:GetService("VirtualInputManager")
local cam = workspace.CurrentCamera
local ts = game:GetService("TweenService")
local function getCharacter()
return player.Character or player.CharacterAdded:Wait()
end
local function getHrp()
local char = getCharacter()
return char:WaitForChild("HumanoidRootPart")
end
local lemonadeStands = {}
for _, stand in ipairs(stands:GetChildren()) do
local npc = stand:FindFirstChild("Lemonade man")
if npc then
local promptPart = npc:FindFirstChild("prompt") or stand:FindFirstChild("prompt")
local prompt = promptPart and promptPart:FindFirstChildWhichIsA("ProximityPrompt")
if prompt then
table.insert(lemonadeStands, {
stand = stand,
npc = npc,
prompt = prompt,
promptPart = promptPart
})
end
end
end
local function holdE(t)
vim:SendKeyEvent(true, Enum.KeyCode.E, false, game)
task.wait(t)
vim:SendKeyEvent(false, Enum.KeyCode.E, false, game)
end
local function tweenTo(hrp, pos)
local tween = ts:Create(hrp, TweenInfo.new(3, Enum.EasingStyle.Linear), {CFrame = CFrame.new(pos)})
tween:Play()
tween.Completed:Wait()
end
local function lookAt(pos)
local cframe = CFrame.new(cam.CFrame.Position, pos)
cam.CFrame = cframe
end
local function canSeePrompt(promptPart)
local origin = cam.CFrame.Position
local direction = (promptPart.Position - origin).Unit
local ray = Ray.new(origin, direction * 100)
local hit, pos = workspace:FindPartOnRay(ray, player.Character)
if hit then
local distance = (pos - promptPart.Position).Magnitude
return distance < 1
end
return false
end
local function getGlueLabel()
local gui = player.PlayerGui:FindFirstChild("RunTIme")
if gui then
return gui:FindFirstChild("glued")
end
return nil
end
local function waitForGlueLabel()
local label
repeat
label = getGlueLabel()
task.wait(0.1)
until label and label.Visible == true
end
local corners = {
Vector3.new(-254, 2, 254),
Vector3.new(254, 2, 254),
Vector3.new(254, 2, -254),
Vector3.new(-254, 2, -254)
}
while true do
local data = lemonadeStands[math.random(1, #lemonadeStands)]
clientNPCaction:FireServer("instantSwitch", data.npc)
task.wait(0.3)
local hrp = getHrp()
local head = data.npc:FindFirstChild("Head")
if head then
hrp.CFrame = CFrame.new(head.Position)
task.wait(0.2)
end
if data.promptPart then
for i = 1, 10 do
lookAt(data.promptPart.Position)
task.wait(0.1)
if canSeePrompt(data.promptPart) then
break
end
hrp.CFrame = hrp.CFrame + (data.promptPart.Position - hrp.Position).Unit * 2
end
end
task.wait(0.5)
holdE(0.5)
local start = tick()
local i = 1
while tick() - start < 60 do
hrp = getHrp()
tweenTo(hrp, corners[i])
i = i + 1
if i > #corners then i = 1 end
end
waitForGlueLabel()
respawn:FireServer()
task.wait(5)
endFeatures & Information
Auto farms money for you by triggering the lemonade stands and auto farming for you.
Community Comments (0)
No comments yet for this script.
