--[[ Frog Universal Hub - Universal LocalScript GUI Улучшенная версия с исправлениями ]] local Players = game:GetService("Players") local UserInputService = game:GetService("UserInputService") local RunService = game:GetService("RunService") local TweenService = game:GetService("TweenService") local player = Players.LocalPlayer local character = player.Character or player.CharacterAdded:Wait() local humanoid = character:WaitForChild("Humanoid") local hrp = character:WaitForChild("HumanoidRootPart") -- Rebind on respawn player.CharacterAdded:Connect(function(char) character = char humanoid = char:WaitForChild("Humanoid") hrp = char:WaitForChild("HumanoidRootPart") end) -- GUI local gui = Instance.new("ScreenGui") gui.Name = "FrogUniversalHub" gui.ResetOnSpawn = false gui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling gui.Parent = player:WaitForChild("PlayerGui") local main = Instance.new("Frame") main.Size = UDim2.new(0, 280, 0, 350) main.Position = UDim2.new(0.5, -140, 0.5, -175) main.BackgroundColor3 = Color3.fromRGB(30, 30, 30) main.BackgroundTransparency = 0.1 main.Active = true main.Draggable = true main.Parent = gui local corner = Instance.new("UICorner") corner.CornerRadius = UDim.new(0, 12) corner.Parent = main local topBar = Instance.new("Frame") topBar.Size = UDim2.new(1, 0, 0, 40) topBar.BackgroundColor3 = Color3.fromRGB(25, 25, 25) topBar.BorderSizePixel = 0 topBar.Parent = main local topCorner = Instance.new("UICorner") topCorner.CornerRadius = UDim.new(0, 12, 0, 0) topCorner.Parent = topBar local title = Instance.new("TextLabel") title.Size = UDim2.new(1, -20, 1, 0) title.Position = UDim2.new(0, 10, 0, 0) title.Text = "???? Frog Universal Hub" title.TextColor3 = Color3.new(1, 1, 1) title.BackgroundTransparency = 1 title.Font = Enum.Font.GothamBold title.TextSize = 18 title.TextXAlignment = Enum.TextXAlignment.Left title.Parent = topBar local closeBtn = Instance.new("TextButton") closeBtn.Size = UDim2.new(0, 30, 0, 30) closeBtn.Position = UDim2.new(1, -35, 0.5, -15) closeBtn.Text = "X" closeBtn.BackgroundColor3 = Color3.fromRGB(220, 60, 60) closeBtn.TextColor3 = Color3.new(1, 1, 1) closeBtn.Font = Enum.Font.GothamBold closeBtn.TextSize = 14 closeBtn.Parent = topBar local closeCorner = Instance.new("UICorner") closeCorner.CornerRadius = UDim.new(0, 8) closeCorner.Parent = closeBtn closeBtn.MouseButton1Click:Connect(function() gui:Destroy() end) local content = Instance.new("Frame") content.Size = UDim2.new(1, -20, 1, -60) content.Position = UDim2.new(0, 10, 0, 50) content.BackgroundTransparency = 1 content.Parent = main -- Helper functions local function makeBox(y, text) local container = Instance.new("Frame") container.Size = UDim2.new(1, 0, 0, 40) container.Position = UDim2.new(0, 0, 0, y) container.BackgroundTransparency = 1 container.Parent = content local lbl = Instance.new("TextLabel") lbl.Size = UDim2.new(0, 150, 1, 0) lbl.Text = text lbl.TextColor3 = Color3.new(1, 1, 1) lbl.BackgroundTransparency = 1 lbl.Font = Enum.Font.Gotham lbl.TextSize = 14 lbl.TextXAlignment = Enum.TextXAlignment.Left lbl.Parent = container local box = Instance.new("TextBox") box.Position = UDim2.new(1, -90, 0, 5) box.Size = UDim2.new(0, 80, 0, 30) box.PlaceholderText = "Number" box.Text = "" box.BackgroundColor3 = Color3.fromRGB(45, 45, 45) box.BorderSizePixel = 0 box.TextColor3 = Color3.new(1, 1, 1) box.Font = Enum.Font.Gotham box.TextSize = 13 box.Parent = container local boxCorner = Instance.new("UICorner") boxCorner.CornerRadius = UDim.new(0, 6) boxCorner.Parent = box return box end local function makeToggle(y, text, initialState) local btn = Instance.new("TextButton") btn.Size = UDim2.new(1, 0, 0, 36) btn.Position = UDim2.new(0, 0, 0, y) btn.Text = text .. " : " .. (initialState and "ON" or "OFF") btn.BackgroundColor3 = initialState and Color3.fromRGB(60, 120, 60) or Color3.fromRGB(45, 45, 45) btn.BorderSizePixel = 0 btn.TextColor3 = Color3.new(1, 1, 1) btn.Font = Enum.Font.Gotham btn.TextSize = 14 btn.Parent = content local btnCorner = Instance.new("UICorner") btnCorner.CornerRadius = UDim.new(0, 8) btnCorner.Parent = btn return btn end -- WalkSpeed local wsBox = makeBox(0, "WalkSpeed") wsBox.Text = tostring(humanoid.WalkSpeed) wsBox.FocusLost:Connect(function(enterPressed) local val = tonumber(wsBox.Text) if val and val > 0 and val <= 500 then humanoid.WalkSpeed = val else wsBox.Text = tostring(humanoid.WalkSpeed) end end) -- JumpPower local jpBox = makeBox(45, "JumpPower") jpBox.Text = tostring(humanoid.JumpPower) jpBox.FocusLost:Connect(function(enterPressed) local val = tonumber(jpBox.Text) if val and val > 0 and val <= 500 then humanoid.JumpPower = val else jpBox.Text = tostring(humanoid.JumpPower) end end) -- Fly local flying = false local flyBtn = makeToggle(100, "Fly", false) local flyBV, flyBG flyBtn.MouseButton1Click:Connect(function() flying = not flying flyBtn.Text = "Fly : " .. (flying and "ON" or "OFF") flyBtn.BackgroundColor3 = flying and Color3.fromRGB(60, 120, 60) or Color3.fromRGB(45, 45, 45) if flying then -- Save original properties local originalGravity = workspace.Gravity workspace.Gravity = 0 flyBV = Instance.new("BodyVelocity") flyBV.MaxForce = Vector3.new(1e9, 1e9, 1e9) flyBV.Velocity = Vector3.zero flyBV.Parent = hrp flyBG = Instance.new("BodyGyro") flyBG.MaxTorque = Vector3.new(1e9, 1e9, 1e9) flyBG.P = 10000 flyBG.D = 1000 flyBG.Parent = hrp local flyConnection flyConnection = RunService.Heartbeat:Connect(function() if not flying or not hrp then flyConnection:Disconnect() return end local cam = workspace.CurrentCamera local move = Vector3.zero if UserInputService:IsKeyDown(Enum.KeyCode.W) then move = move + cam.CFrame.LookVector end if UserInputService:IsKeyDown(Enum.KeyCode.S) then move = move - cam.CFrame.LookVector end if UserInputService:IsKeyDown(Enum.KeyCode.A) then move = move - cam.CFrame.RightVector end if UserInputService:IsKeyDown(Enum.KeyCode.D) then move = move + cam.CFrame.RightVector end if UserInputService:IsKeyDown(Enum.KeyCode.Space) then move = move + Vector3.new(0, 1, 0) end if UserInputService:IsKeyDown(Enum.KeyCode.LeftControl) then move = move - Vector3.new(0, 1, 0) end if move.Magnitude > 0 then move = move.Unit * 60 end if flyBV then flyBV.Velocity = move end if flyBG then flyBG.CFrame = cam.CFrame end end) else workspace.Gravity = 196.2 -- Default gravity if flyBV then flyBV:Destroy() flyBV = nil end if flyBG then flyBG:Destroy() flyBG = nil end end end) -- Noclip local noclip = false local noclipBtn = makeToggle(145, "Noclip", false) noclipBtn.MouseButton1Click:Connect(function() noclip = not noclip noclipBtn.Text = "Noclip : " .. (noclip and "ON" or "OFF") noclipBtn.BackgroundColor3 = noclip and Color3.fromRGB(60, 120, 60) or Color3.fromRGB(45, 45, 45) end) local noclipConnection noclipConnection = RunService.Stepped:Connect(function() if noclip and character then for _, v in pairs(character:GetDescendants()) do if v:IsA("BasePart") then v.CanCollide = false end end end end) -- Clean up connections when GUI is destroyed gui.Destroying:Connect(function() if noclipConnection then noclipConnection:Disconnect() end if flying then if flyBV then flyBV:Destroy() end if flyBG then flyBG:Destroy() end end end) -- Info text local hint = Instance.new("TextLabel") hint.Size = UDim2.new(1, 0, 0, 40) hint.Position = UDim2.new(0, 0, 1, -40) hint.Text = "Drag GUI | Universal Client-Side" hint.TextColor3 = Color3.fromRGB(180, 180, 180) hint.BackgroundTransparency = 1 hint.Font = Enum.Font.Gotham hint.TextSize = 12 hint.Parent = content -- Minimize button (optional feature) local minimizeBtn = Instance.new("TextButton") minimizeBtn.Size = UDim2.new(0, 30, 0, 30) minimizeBtn.Position = UDim2.new(1, -70, 0.5, -15) minimizeBtn.Text = "_" minimizeBtn.BackgroundColor3 = Color3.fromRGB(70, 70, 70) minimizeBtn.TextColor3 = Color3.new(1, 1, 1) minimizeBtn.Font = Enum.Font.GothamBold minimizeBtn.TextSize = 14 minimizeBtn.Parent = topBar local minimizeCorner = Instance.new("UICorner") minimizeCorner.CornerRadius = UDim.new(0, 8) minimizeCorner.Parent = minimizeBtn local minimized = false minimizeBtn.MouseButton1Click:Connect(function() minimized = not minimized if minimized then TweenService:Create(main, TweenInfo.new(0.3), {Size = UDim2.new(0, 280, 0, 40)}):Play() content.Visible = false minimizeBtn.Text = "+" else TweenService:Create(main, TweenInfo.new(0.3), {Size = UDim2.new(0, 280, 0, 350)}):Play() content.Visible = true minimizeBtn.Text = "_" end end) print("???? Frog Universal Hub loaded successfully!")