Open Source
Key Required

Open Source

[⏰] Grow a Business💸Zemon07Zemon07 6.5K views 14 executesUpdated May 30, 2025
Unrated
00
Lua Script•128 lines (3642 chars)
--// Services
local Players = game:GetService("Players")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local player = Players.LocalPlayer
local userid = player.UserId

--// Remotes
local RemoteEvents = ReplicatedStorage:WaitForChild("RemoteEvents")
local BuyEmployee = RemoteEvents:WaitForChild("BuyEmployee")
local PlaceEmployee = RemoteEvents:WaitForChild("PlaceEmployee")
local GetShopData = ReplicatedStorage:WaitForChild("RemoteFunctions"):WaitForChild("GetShopData")

--// Flags
local autoBuy = false
local autoPlace = false
local autoCollect = false

--// Create UI
local screenGui = Instance.new("ScreenGui", player:WaitForChild("PlayerGui"))
screenGui.Name = "EmployeeAutoGui"

local function createButton(name, position, callback)
	local button = Instance.new("TextButton")
	button.Size = UDim2.new(0, 150, 0, 40)
	button.Position = position
	button.Text = name .. ": OFF"
	button.BackgroundColor3 = Color3.fromRGB(50, 50, 50)
	button.TextColor3 = Color3.fromRGB(255, 255, 255)
	button.Font = Enum.Font.Gotham
	button.TextSize = 18
	button.Parent = screenGui
	
	local state = false
	button.MouseButton1Click:Connect(function()
		state = not state
		button.Text = name .. ": " .. (state and "ON" or "OFF")
		callback(state)
	end)
end

--// Auto Buy
createButton("Auto Buy", UDim2.new(0, 20, 0, 100), function(state)
	autoBuy = state
	if autoBuy then
		task.spawn(function()
			while autoBuy do
				local shopInfo = GetShopData:InvokeServer()
				for _, v in pairs(shopInfo) do
					BuyEmployee:FireServer(v["Name"])
					task.wait(0.1)
				end
				task.wait(2)
			end
		end)
	end
end)

--// Auto Place
-- Auto Place
createButton("Auto Place", UDim2.new(0, 20, 0, 150), function(state)
	autoPlace = state
	if autoPlace then
		task.spawn(function()
			while autoPlace do
				local assignedPlot = player:GetAttribute("AssignedPlot")
				if assignedPlot then
					for _, plot in pairs(workspace.BasePlots:GetChildren()) do
						if plot.Name == assignedPlot then
							local placement = plot:FindFirstChild("Placement")
							if not placement then return end
							
							local baseCFrame = placement.CFrame
							local size = placement.Size
							
							-- Grid spacing
							local spacing = 5
							local maxX = math.floor(size.X / spacing)
							local maxZ = math.floor(size.Z / spacing)
							
							local index = 0
							
							for _, pack in pairs(player.Backpack:GetChildren()) do
								local EmployeeType = pack:GetAttribute("EmployeeType")
								local Variant = pack:GetAttribute("Variant")
								
								if EmployeeType and Variant then
									local x = (index % maxX - maxX / 2) * spacing
									local z = (math.floor(index / maxX) - maxZ / 2) * spacing
									
									local pos = baseCFrame * CFrame.new(x, 5, z)
									PlaceEmployee:FireServer(EmployeeType, Variant, pos)
									
									index += 1
									task.wait(0.1)
								end
							end
						end
					end
				end
				task.wait(2)
			end
		end)
	end
end)

--// Auto Collect
createButton("Auto Collect", UDim2.new(0, 20, 0, 200), function(state)
	autoCollect = state
	if autoCollect then
		task.spawn(function()
			while autoCollect do
				for _, v in pairs(workspace.PlacedEmployees:GetChildren()) do
					if v:IsA("Model") and v:GetAttribute("OwnerUserId") == userid then
						local CollectCash = v:FindFirstChild("CollectCash")
						if CollectCash then
							local prompt = CollectCash:FindFirstChildOfClass("ProximityPrompt")
							if prompt and prompt.Enabled then
								fireproximityprompt(prompt, 1)
								task.wait(0.05)
							end
						end
					end
				end
				task.wait(1)
			end
		end)
	end
end)

Features & Information

[+] Auto Place [+] Auto Buy [+] Auto Collect

Community Comments (0)

No comments yet for this script.

More Scripts for [⏰] Grow a Business💸