-- Serviços local Players = game:GetService("Players") local LocalPlayer = Players.LocalPlayer local PlayerGui = LocalPlayer:WaitForChild("PlayerGui") -- ============================================================== -- Variáveis de estado -- ============================================================== local currentAsset = nil local sources = {} local debugFolder = "Debug require files" local isEnabled = false -- ============================================================== -- Criação direta dos objetos (MELHORADO) -- ============================================================== local DebugGui = Instance.new("ScreenGui") DebugGui.Name = "Debug gui" DebugGui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling DebugGui.ResetOnSpawn = false DebugGui.Parent = gethui() local Main = Instance.new("Frame") Main.BorderSizePixel = 0 Main.BackgroundColor3 = Color3.fromRGB(255, 255, 255) Main.Size = UDim2.new(0, 478, 0, 262) Main.Position = UDim2.new(0, 180, 0, 36) -- posição padrão Main.Name = "Main" Main.Visible = false -- começa fechado Main.Parent = DebugGui local UICorner_Main = Instance.new("UICorner") UICorner_Main.CornerRadius = UDim.new(0, 12) UICorner_Main.Parent = Main local Fake3D = Instance.new("UIStroke") Fake3D.Name = "Fake 3D" Fake3D.Thickness = 2 Fake3D.Color = Color3.fromRGB(255, 255, 255) Fake3D.Parent = Main local UIGradient_Fake3D = Instance.new("UIGradient") UIGradient_Fake3D.Rotation = -50 UIGradient_Fake3D.Color = ColorSequence.new{ ColorSequenceKeypoint.new(0, Color3.fromRGB(0, 0, 0)), ColorSequenceKeypoint.new(1, Color3.fromRGB(194, 203, 255)) } UIGradient_Fake3D.Parent = Fake3D local ListFrame = Instance.new("Frame") ListFrame.BorderSizePixel = 0 ListFrame.BackgroundColor3 = Color3.fromRGB(255, 255, 255) ListFrame.Size = UDim2.new(0, 466, 0, 158) ListFrame.Position = UDim2.new(0, 6, 0, 100) ListFrame.Name = "List Frame" ListFrame.BackgroundTransparency = 1 ListFrame.Parent = Main local SaveInFolder = Instance.new("TextButton") SaveInFolder.BorderSizePixel = 0 SaveInFolder.TextSize = 14 SaveInFolder.TextColor3 = Color3.fromRGB(255, 255, 255) SaveInFolder.BackgroundColor3 = Color3.fromRGB(255, 255, 255) SaveInFolder.FontFace = Font.new("rbxasset://fonts/families/Inconsolata.json", Enum.FontWeight.Regular, Enum.FontStyle.Normal) SaveInFolder.BackgroundTransparency = 1 SaveInFolder.Size = UDim2.new(0, 220, 0, 52) SaveInFolder.Text = "Save in folder" SaveInFolder.Name = "Save In folder" SaveInFolder.Parent = ListFrame local UIListLayout_List = Instance.new("UIListLayout") UIListLayout_List.Padding = UDim.new(0, 8) UIListLayout_List.Parent = ListFrame local CopyOnClipboard = Instance.new("TextButton") CopyOnClipboard.BorderSizePixel = 0 CopyOnClipboard.TextSize = 14 CopyOnClipboard.TextColor3 = Color3.fromRGB(255, 255, 255) CopyOnClipboard.BackgroundColor3 = Color3.fromRGB(255, 255, 255) CopyOnClipboard.FontFace = Font.new("rbxasset://fonts/families/Inconsolata.json", Enum.FontWeight.Regular, Enum.FontStyle.Normal) CopyOnClipboard.BackgroundTransparency = 1 CopyOnClipboard.Size = UDim2.new(0, 220, 0, 52) CopyOnClipboard.Text = "Copy on Clipboard" CopyOnClipboard.Name = "Copy on Clipboard" CopyOnClipboard.Parent = ListFrame local LoadBtn = Instance.new("TextButton") LoadBtn.BorderSizePixel = 0 LoadBtn.TextSize = 14 LoadBtn.TextColor3 = Color3.fromRGB(255, 255, 255) LoadBtn.BackgroundColor3 = Color3.fromRGB(255, 255, 255) LoadBtn.FontFace = Font.new("rbxasset://fonts/families/Inconsolata.json", Enum.FontWeight.Regular, Enum.FontStyle.Normal) LoadBtn.BackgroundTransparency = 1 LoadBtn.Size = UDim2.new(0, 220, 0, 52) LoadBtn.Text = "Load (Use Dex)" LoadBtn.Name = "Load" LoadBtn.Parent = ListFrame local Title = Instance.new("TextLabel") Title.TextWrapped = true Title.BorderSizePixel = 0 Title.TextSize = 18 Title.BackgroundColor3 = Color3.fromRGB(255, 255, 255) Title.FontFace = Font.new("rbxasset://fonts/families/Zekton.json", Enum.FontWeight.Regular, Enum.FontStyle.Normal) Title.TextColor3 = Color3.fromRGB(255, 255, 255) Title.BackgroundTransparency = 1 Title.Size = UDim2.new(0, 250, 0, 24) Title.Text = "Require Script Debug" Title.Name = "Title" Title.Position = UDim2.new(0, 8, 0, 8) Title.Parent = Main local UIListLayout_Title = Instance.new("UIListLayout") UIListLayout_Title.Padding = UDim.new(0, 50) UIListLayout_Title.FillDirection = Enum.FillDirection.Horizontal UIListLayout_Title.Parent = Title local ImageLabel_Title = Instance.new("ImageLabel") ImageLabel_Title.BorderSizePixel = 0 ImageLabel_Title.BackgroundColor3 = Color3.fromRGB(255, 255, 255) ImageLabel_Title.Image = "rbxassetid://98590074045906" ImageLabel_Title.Size = UDim2.new(0, 24, 0, 58) ImageLabel_Title.BackgroundTransparency = 1 ImageLabel_Title.Position = UDim2.new(0, -58, 0, 48) ImageLabel_Title.Parent = Title local UIAspectRatio_TitleImg = Instance.new("UIAspectRatioConstraint") UIAspectRatio_TitleImg.Parent = ImageLabel_Title local UIGradient_Main = Instance.new("UIGradient") UIGradient_Main.Rotation = 50 UIGradient_Main.Color = ColorSequence.new{ ColorSequenceKeypoint.new(0, Color3.fromRGB(0, 0, 0)), ColorSequenceKeypoint.new(1, Color3.fromRGB(194, 203, 255)) } UIGradient_Main.Parent = Main local UIScale_Main = Instance.new("UIScale") UIScale_Main.Parent = Main local InnerFrame = Instance.new("Frame") InnerFrame.BorderSizePixel = 0 InnerFrame.BackgroundColor3 = Color3.fromRGB(0, 0, 0) InnerFrame.Size = UDim2.new(0, 236, 0, 46) InnerFrame.Position = UDim2.new(0, 232, 0, 102) InnerFrame.BackgroundTransparency = 0.5 InnerFrame.Parent = Main local UICorner_Inner = Instance.new("UICorner") UICorner_Inner.CornerRadius = UDim.new(0, 8) UICorner_Inner.Parent = InnerFrame local RequireInserter = Instance.new("TextBox") RequireInserter.Name = "Require inserter" RequireInserter.BorderSizePixel = 0 RequireInserter.TextSize = 12 RequireInserter.TextColor3 = Color3.fromRGB(255, 255, 255) RequireInserter.BackgroundColor3 = Color3.fromRGB(255, 255, 255) RequireInserter.FontFace = Font.new("rbxasset://fonts/families/SourceSansPro.json", Enum.FontWeight.Bold, Enum.FontStyle.Normal) RequireInserter.Size = UDim2.new(0, 234, 0, 46) RequireInserter.Position = UDim2.new(0, 2, 0, 0) RequireInserter.Text = "Put your ID here (example: 1020202094)" RequireInserter.BackgroundTransparency = 1 RequireInserter.TextXAlignment = Enum.TextXAlignment.Left RequireInserter.Parent = InnerFrame local UICorner_Require = Instance.new("UICorner") UICorner_Require.CornerRadius = UDim.new(0, 8) UICorner_Require.Parent = RequireInserter -- BOTÃO FLUTUANTE (Enable/Disable) local EnableDisable = Instance.new("TextButton") -- <-- TextButton (clicável) EnableDisable.BorderSizePixel = 0 EnableDisable.BackgroundColor3 = Color3.fromRGB(255, 255, 255) EnableDisable.Size = UDim2.new(0, 54, 0, 54) EnableDisable.Position = UDim2.new(0, 78, 0, 110) EnableDisable.Name = "Enable/Disable" EnableDisable.Text = "" -- sem texto EnableDisable.AutoButtonColor = false EnableDisable.Parent = DebugGui local UICorner_Enable = Instance.new("UICorner") UICorner_Enable.CornerRadius = UDim.new(0, 12) UICorner_Enable.Parent = EnableDisable local UIAspectRatio_Enable = Instance.new("UIAspectRatioConstraint") UIAspectRatio_Enable.Parent = EnableDisable local UIGradient_Enable = Instance.new("UIGradient") UIGradient_Enable.Rotation = -50 UIGradient_Enable.Color = ColorSequence.new{ ColorSequenceKeypoint.new(0, Color3.fromRGB(0, 0, 0)), ColorSequenceKeypoint.new(1, Color3.fromRGB(194, 203, 255)) } UIGradient_Enable.Parent = EnableDisable local ImageLabel_Enable = Instance.new("ImageLabel") ImageLabel_Enable.BorderSizePixel = 0 ImageLabel_Enable.BackgroundTransparency = 1 ImageLabel_Enable.Size = UDim2.new(0, 42, 0, 42) ImageLabel_Enable.Position = UDim2.new(0, 6, 0, 6) ImageLabel_Enable.Image = "rbxassetid://71869616718407" -- ícone OFF ImageLabel_Enable.Parent = EnableDisable local UIAspectRatio_EnableImg = Instance.new("UIAspectRatioConstraint") UIAspectRatio_EnableImg.Parent = ImageLabel_Enable -- ============================================================== -- FUNÇÕES (SISTEMA DE ARQUIVOS) -- ============================================================== local function updateButtonStatus(button, text, color) button.Text = text if button:FindFirstChild("UIStroke") then button.UIStroke.Color = color end end local function ensureDebugFolder() if not isfolder(debugFolder) then makefolder(debugFolder) end end local function saveRequireScript(content) ensureDebugFolder() writefile(debugFolder.."/RequireScript.lua", content) updateButtonStatus(SaveInFolder, "Saved!", Color3.fromRGB(0,255,100)) task.wait(2) updateButtonStatus(SaveInFolder, "Save in folder", Color3.fromRGB(255,255,255)) end local function loadAsset() local id = RequireInserter.Text:match("%d+") if not id then updateButtonStatus(LoadBtn, "Invalid ID", Color3.fromRGB(255,100,100)) task.wait(2); updateButtonStatus(LoadBtn, "Load (Use Dex)", Color3.fromRGB(255,255,255)) return end updateButtonStatus(LoadBtn, "Loading...", Color3.fromRGB(255,200,100)) local ok, obj = pcall(game.GetObjects, game, "rbxassetid://"..id) if ok and obj[1] then if currentAsset then currentAsset:Destroy() end currentAsset = obj[1]; currentAsset.Parent = workspace updateButtonStatus(LoadBtn, "Loaded!", Color3.fromRGB(0,255,100)) else updateButtonStatus(LoadBtn, "Failed!", Color3.fromRGB(255,100,100)) end task.wait(2); updateButtonStatus(LoadBtn, "Load (Use Dex)", Color3.fromRGB(255,255,255)) end local function copyFunctions() if not currentAsset then updateButtonStatus(CopyOnClipboard, "No Asset", Color3.fromRGB(255,100,100)) task.wait(2); updateButtonStatus(CopyOnClipboard, "Copy on Clipboard", Color3.fromRGB(255,255,255)) return end sources = {} local cnt = 0 for _,v in ipairs(currentAsset:GetDescendants()) do if v:IsA("LuaSourceContainer") then cnt += 1 table.insert(sources, ("--// %s: %s //\n%s\n"):format(v.ClassName, v.Name, v.Source)) end end if cnt>0 then local src = table.concat(sources,"\n") pcall(setclipboard, src) saveRequireScript(src) updateButtonStatus(CopyOnClipboard, cnt.." Copied", Color3.fromRGB(0,255,100)) else updateButtonStatus(CopyOnClipboard, "No Scripts", Color3.fromRGB(255,100,100)) end task.wait(2); updateButtonStatus(CopyOnClipboard, "Copy on Clipboard", Color3.fromRGB(255,255,255)) end -- ============================================================== -- TOGGLE ENABLE/DISABLE – 100% FUNCIONAL -- ============================================================== local function toggleEnable() isEnabled = not isEnabled if isEnabled then -- ABRE Main.Position = UDim2.new(0,180,0,-300) -- fora da tela Main.Visible = true Main:TweenPosition(UDim2.new(0,180,0,36), "Out","Quad",0.3,true) ImageLabel_Enable.Image = "rbxassetid://71869616718407" -- ícone ON EnableDisable:TweenSize(UDim2.new(0,60,0,60), "Out","Quad",0.2,true) ImageLabel_Enable:TweenPosition(UDim2.new(0,9,0,9), "Out","Quad",0.2,true) ImageLabel_Enable.Rotation = 0 else -- FECHA Main:TweenPosition(UDim2.new(0,180,0,-300), "In","Quad",0.3,true,function() Main.Visible = false Main.Position = UDim2.new(0,180,0,36) -- volta ao padrão end) ImageLabel_Enable.Image = "rbxassetid://70727182854178" -- ícone OFF (X) EnableDisable:TweenSize(UDim2.new(0,54,0,54), "Out","Quad",0.2,true) ImageLabel_Enable:TweenPosition(UDim2.new(0,6,0,6), "Out","Quad",0.2,true) ImageLabel_Enable.Rotation = 45 end end -- ============================================================== -- CONEXÕES -- ============================================================== SaveInFolder.MouseButton1Click:Connect(function() if #sources==0 then updateButtonStatus(SaveInFolder, "Nothing to save", Color3.fromRGB(255,100,100)) task.wait(2); updateButtonStatus(SaveInFolder, "Save in folder", Color3.fromRGB(255,255,255)) return end saveRequireScript(table.concat(sources,"\n")) end) CopyOnClipboard.MouseButton1Click:Connect(copyFunctions) LoadBtn.MouseButton1Click:Connect(loadAsset) RequireInserter.FocusLost:Connect(function(enter) if enter then loadAsset() end end) -- CLIQUE NO BOTÃO FLUTUANTE EnableDisable.MouseButton1Click:Connect(toggleEnable) -- ============================================================== -- HOVER (botões + Enable/Disable) -- ============================================================== local function addHover(btn) local orig = btn.Size local big = UDim2.new(orig.X.Scale, orig.X.Offset, orig.Y.Scale, orig.Y.Offset + 4) btn.MouseEnter:Connect(function() btn:TweenSize(big, "Out","Quad",0.2) end) btn.MouseLeave:Connect(function() btn:TweenSize(orig,"Out","Quad",0.2) end) end addHover(SaveInFolder); addHover(CopyOnClipboard); addHover(LoadBtn) EnableDisable.MouseEnter:Connect(function() EnableDisable:TweenSize(UDim2.new(0, isEnabled and 64 or 58, 0, isEnabled and 64 or 58), "Out","Quad",0.2,true) end) EnableDisable.MouseLeave:Connect(function() EnableDisable:TweenSize(UDim2.new(0, isEnabled and 60 or 54, 0, isEnabled and 60 or 54), "Out","Quad",0.2,true) end) -- ============================================================== -- INICIALIZAÇÃO -- ============================================================== spawn(ensureDebugFolder) -- ============================================================== -- RETORNO -- ============================================================== return DebugGui, require