-- === Fly + Noclip + ESP + Speed Booster + Inf Jump GUI (фикс) === local Players = game:GetService("Players") local RunService = game:GetService("RunService") local UserInputService = game:GetService("UserInputService") local player = Players.LocalPlayer -- === ScreenGui === local screenGui = Instance.new("ScreenGui") screenGui.Name = "MyGui" screenGui.ResetOnSpawn = false screenGui.Parent = player:WaitForChild("PlayerGui") -- === Функция для кнопок === local function createButton(name, pos, size, color, text, textSize) local btn = Instance.new("TextButton") btn.Size = size btn.Position = pos btn.AnchorPoint = Vector2.new(0,1) btn.BackgroundColor3 = color btn.Text = text btn.TextColor3 = Color3.new(1,1,1) btn.Font = Enum.Font.SourceSansBold btn.TextSize = textSize btn.Name = name btn.Parent = screenGui return btn end -- === Кнопки === local flyBtn = createButton("FlyBtn", UDim2.new(0,24,1,-68), UDim2.new(0,120,0,44), Color3.fromRGB(60,120,200), "Fly: OFF", 28) local plusBtn = createButton("PlusBtn", UDim2.new(0,154,1,-68), UDim2.new(0,44,0,44), Color3.fromRGB(80,180,80), "+", 32) local minusBtn = createButton("MinusBtn", UDim2.new(0,204,1,-68), UDim2.new(0,44,0,44), Color3.fromRGB(180,80,80), "-", 32) local closeBtn = createButton("CloseBtn", UDim2.new(0,254,1,-68), UDim2.new(0,44,0,44), Color3.fromRGB(200,60,60), "X", 28) local espBtn = createButton("ESPBtn", UDim2.new(0,304,1,-68), UDim2.new(0,80,0,44), Color3.fromRGB(100,60,200), "ESP: OFF", 24) local noclipBtn = createButton("NoclipBtn", UDim2.new(0,394,1,-68), UDim2.new(0,80,0,44), Color3.fromRGB(200,120,50), "Noclip: OFF", 24) local speedBtn = createButton("SpeedBtn", UDim2.new(0,484,1,-68), UDim2.new(0,100,0,44), Color3.fromRGB(50,160,200), "Speed: OFF", 24) local infJumpBtn = createButton("InfJumpBtn", UDim2.new(0,594,1,-68), UDim2.new(0,110,0,44), Color3.fromRGB(200,80,200), "InfJump: OFF", 22) -- === Закрытие GUI === closeBtn.MouseButton1Click:Connect(function() screenGui:Destroy() end) -- === Fly === local flying = false local flySpeed = 60 local bodyGyro, bodyVelocity local function startFlying() local char = player.Character if not char then return end local root = char:FindFirstChild("HumanoidRootPart") if not root then return end bodyGyro = Instance.new("BodyGyro") bodyGyro.MaxTorque = Vector3.new(400000,400000,400000) bodyGyro.P = 10000 bodyGyro.Parent = root bodyVelocity = Instance.new("BodyVelocity") bodyVelocity.MaxForce = Vector3.new(400000,400000,400000) bodyVelocity.Parent = root local hum = char:FindFirstChildOfClass("Humanoid") if hum then hum.PlatformStand = true end flying = true flyBtn.Text = "Fly: ON" end local function stopFlying() if bodyGyro then bodyGyro:Destroy() bodyGyro=nil end if bodyVelocity then bodyVelocity:Destroy() bodyVelocity=nil end local hum = player.Character and player.Character:FindFirstChildOfClass("Humanoid") if hum then hum.PlatformStand = false end flying = false flyBtn.Text = "Fly: OFF" end flyBtn.MouseButton1Click:Connect(function() if flying then stopFlying() else startFlying() end end) plusBtn.MouseButton1Click:Connect(function() flySpeed += 20 end) minusBtn.MouseButton1Click:Connect(function() flySpeed = math.max(20, flySpeed - 20) end) UserInputService.InputBegan:Connect(function(input, processed) if processed then return end if input.KeyCode == Enum.KeyCode.Z then if flying then stopFlying() else startFlying() end end end) RunService.RenderStepped:Connect(function() if flying and bodyVelocity then local char = player.Character local root = char and char:FindFirstChild("HumanoidRootPart") local cam = workspace.CurrentCamera if not root or not cam then return end bodyGyro.CFrame = CFrame.new(root.Position, root.Position + cam.CFrame.LookVector) local dir = Vector3.zero if UserInputService:IsKeyDown(Enum.KeyCode.W) then dir += Vector3.new(0,0,1) end if UserInputService:IsKeyDown(Enum.KeyCode.S) then dir += Vector3.new(0,0,-1) end if UserInputService:IsKeyDown(Enum.KeyCode.A) then dir += Vector3.new(-1,0,0) end if UserInputService:IsKeyDown(Enum.KeyCode.D) then dir += Vector3.new(1,0,0) end if UserInputService:IsKeyDown(Enum.KeyCode.LeftShift) then dir += Vector3.new(0,1,0) end if UserInputService:IsKeyDown(Enum.KeyCode.LeftControl) then dir += Vector3.new(0,-1,0) end if dir.Magnitude > 0 then dir = dir.Unit local move = cam.CFrame.RightVector * dir.X + cam.CFrame.LookVector * dir.Z + Vector3.new(0,dir.Y,0) bodyVelocity.Velocity = move * flySpeed else bodyVelocity.Velocity = Vector3.zero end end end) -- === Noclip === local noclipEnabled = false local noclipConn local torsoParts = { ["HumanoidRootPart"] = true, ["UpperTorso"] = true, ["LowerTorso"] = true, ["Torso"] = true } local function setCollisions(noclipOn) local char = player.Character if not char then return end for _, part in ipairs(char:GetDescendants()) do if part:IsA("BasePart") then if noclipOn then part.CanCollide = false else if torsoParts[part.Name] then part.CanCollide = true else part.CanCollide = false end end end end end local function enableNoclip() noclipEnabled = true noclipBtn.Text = "Noclip: ON" if noclipConn then noclipConn:Disconnect() end noclipConn = RunService.Stepped:Connect(function() setCollisions(true) end) end local function disableNoclip() noclipEnabled = false noclipBtn.Text = "Noclip: OFF" if noclipConn then noclipConn:Disconnect() noclipConn = nil end setCollisions(false) end noclipBtn.MouseButton1Click:Connect(function() if noclipEnabled then disableNoclip() else enableNoclip() end end) player.CharacterAdded:Connect(function() if noclipEnabled then task.wait(0.5) setCollisions(true) end end) -- === SPEED BOOSTER === local speedEnabled = false local normalSpeed = 16 local boostedSpeed = 100 local function enableSpeed() speedEnabled = true speedBtn.Text = "Speed: ON" if player.Character and player.Character:FindFirstChild("Humanoid") then player.Character.Humanoid.WalkSpeed = boostedSpeed end end local function disableSpeed() speedEnabled = false speedBtn.Text = "Speed: OFF" if player.Character and player.Character:FindFirstChild("Humanoid") then player.Character.Humanoid.WalkSpeed = normalSpeed end end speedBtn.MouseButton1Click:Connect(function() if speedEnabled then disableSpeed() else enableSpeed() end end) player.CharacterAdded:Connect(function(char) task.wait(0.3) if speedEnabled then char:WaitForChild("Humanoid").WalkSpeed = boostedSpeed else char:WaitForChild("Humanoid").WalkSpeed = normalSpeed end end) -- === Infinite Jump === local infJumpEnabled = false infJumpBtn.MouseButton1Click:Connect(function() infJumpEnabled = not infJumpEnabled infJumpBtn.Text = infJumpEnabled and "InfJump: ON" or "InfJump: OFF" end) UserInputService.JumpRequest:Connect(function() if infJumpEnabled then local char = player.Character local hum = char and char:FindFirstChildOfClass("Humanoid") if hum then hum:ChangeState(Enum.HumanoidStateType.Jumping) end end end) -- === ESP === local espEnabled = false local function applyHighlight(char) if not char then return end local old = char:FindFirstChild("DEV_Highlight") if old then old:Destroy() end local h = Instance.new("Highlight") h.Name = "DEV_Highlight" h.FillColor = Color3.fromRGB(255,80,80) h.OutlineColor = Color3.fromRGB(255,255,255) h.DepthMode = Enum.HighlightDepthMode.AlwaysOnTop h.Parent = char end local function removeHighlight(char) local h = char and char:FindFirstChild("DEV_Highlight") if h then h:Destroy() end end local function enableESP() espEnabled = true espBtn.Text = "ESP: ON" for _, pl in ipairs(Players:GetPlayers()) do if pl ~= player and pl.Character then applyHighlight(pl.Character) end end end local function disableESP() espEnabled = false espBtn.Text = "ESP: OFF" for _, pl in ipairs(Players:GetPlayers()) do if pl.Character then removeHighlight(pl.Character) end end end espBtn.MouseButton1Click:Connect(function() if espEnabled then disableESP() else enableESP() end end) Players.PlayerAdded:Connect(function(pl) pl.CharacterAdded:Connect(function(char) if espEnabled then task.wait(0.5) applyHighlight(char) end end) end) task.spawn(function() while true do if espEnabled then for _, pl in ipairs(Players:GetPlayers()) do if pl ~= player and pl.Character then applyHighlight(pl.Character) end end end task.wait(2) end end)