local Players = game:GetService("Players") local UIS = game:GetService("UserInputService") local player = Players.LocalPlayer local playerGui = player:WaitForChild("PlayerGui") local gui = Instance.new("ScreenGui") gui.Name = "ItemCollector" gui.ResetOnSpawn = false gui.Parent = playerGui local frame = Instance.new("Frame") frame.Size = UDim2.new(0,320,0,420) frame.Position = UDim2.new(0.5,-160,0.5,-210) frame.BackgroundColor3 = Color3.fromRGB(40,40,80) frame.BorderSizePixel = 0 frame.Parent = gui local frameCorner = Instance.new("UICorner") frameCorner.CornerRadius = UDim.new(0,15) frameCorner.Parent = frame local title = Instance.new("TextButton") title.Size = UDim2.new(1,0,0,35) title.BackgroundColor3 = Color3.fromRGB(0,170,255) title.Text = "Item Collector" title.TextColor3 = Color3.new(1,1,1) title.Font = Enum.Font.GothamBold title.TextSize = 20 title.Parent = frame local titleCorner = Instance.new("UICorner") titleCorner.CornerRadius = UDim.new(0,15) titleCorner.Parent = title local close = Instance.new("TextButton") close.Size = UDim2.new(0,24,0,24) close.Position = UDim2.new(1,-30,0,5) close.Text = "X" close.BackgroundColor3 = Color3.fromRGB(255,60,60) close.TextColor3 = Color3.new(1,1,1) close.Font = Enum.Font.GothamBold close.Parent = frame local closeCorner = Instance.new("UICorner") closeCorner.CornerRadius = UDim.new(1,0) closeCorner.Parent = close close.MouseButton1Click:Connect(function() gui:Destroy() end) local scrolling = Instance.new("ScrollingFrame") scrolling.Size = UDim2.new(1,-10,1,-50) scrolling.Position = UDim2.new(0,5,0,40) scrolling.BackgroundColor3 = Color3.fromRGB(60,60,120) scrolling.BorderSizePixel = 0 scrolling.CanvasSize = UDim2.new(0,0,0,0) scrolling.Parent = frame local scrollCorner = Instance.new("UICorner") scrollCorner.CornerRadius = UDim.new(0,15) scrollCorner.Parent = scrolling -- Dragging local dragging = false local dragStart local startPos title.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then dragging = true dragStart = input.Position startPos = frame.Position end end) UIS.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then dragging = false end end) UIS.InputChanged:Connect(function(input) if dragging and ( input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType == Enum.UserInputType.Touch ) then local delta = input.Position - dragStart frame.Position = UDim2.new( startPos.X.Scale, startPos.X.Offset + delta.X, startPos.Y.Scale, startPos.Y.Offset + delta.Y ) end end) local function refreshItems() for _,v in ipairs(scrolling:GetChildren()) do if v:IsA("TextButton") then v:Destroy() end end local y = 5 local found = {} for _,obj in ipairs(game:GetDescendants()) do if obj:IsA("Tool") and not found[obj.Name] then found[obj.Name] = true local button = Instance.new("TextButton") button.Size = UDim2.new(1,-10,0,32) button.Position = UDim2.new(0,5,0,y) button.Text = obj.Name button.TextColor3 = Color3.new(1,1,1) button.Font = Enum.Font.GothamBold button.TextSize = 15 button.BackgroundColor3 = Color3.fromRGB( math.random(80,255), math.random(80,255), math.random(80,255) ) button.Parent = scrolling local buttonCorner = Instance.new("UICorner") buttonCorner.CornerRadius = UDim.new(0,10) buttonCorner.Parent = button button.MouseButton1Click:Connect(function() if obj and obj:IsA("Tool") then local clone = obj:Clone() local backpack = player:FindFirstChild("Backpack") if backpack then clone.Parent = backpack end end end) y = y + 37 end end scrolling.CanvasSize = UDim2.new(0,0,0,y) end refreshItems() while gui.Parent do task.wait(5) refreshItems() end