--// GUI PRINCIPAL local player = game.Players.LocalPlayer local gui = Instance.new("ScreenGui") gui.Name = "MainGUI" gui.Parent = player:WaitForChild("PlayerGui") gui.ResetOnSpawn = false gui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling --// FRAME local Frame = Instance.new("Frame", gui) Frame.Size = UDim2.new(0,220,0,120) Frame.Position = UDim2.new(0.3,0,0.3,0) Frame.BackgroundColor3 = Color3.fromRGB(40,40,40) Frame.Active = true Frame.Draggable = true Frame.ZIndex = 10 --// BOTÓN CERRAR local close = Instance.new("TextButton", Frame) close.Size = UDim2.new(0,30,0,30) close.Position = UDim2.new(1,-30,0,0) close.Text = "X" close.BackgroundColor3 = Color3.fromRGB(200,60,60) --// BOTÓN MINIMIZAR local mini = Instance.new("TextButton", Frame) mini.Size = UDim2.new(0,30,0,30) mini.Position = UDim2.new(1,-60,0,0) mini.Text = "-" mini.BackgroundColor3 = Color3.fromRGB(180,180,180) --// BOTÓN FLY local flyBtn = Instance.new("TextButton", Frame) flyBtn.Size = UDim2.new(0,180,0,40) flyBtn.Position = UDim2.new(0.5,-90,0.5,-20) flyBtn.Text = "FLY : OFF" flyBtn.BackgroundColor3 = Color3.fromRGB(80,80,80) flyBtn.TextColor3 = Color3.new(1,1,1) --// BOTÓN FLOTANTE (PERRO 🐶) local floating = Instance.new("ImageButton", gui) floating.Size = UDim2.new(0,60,0,60) floating.Position = UDim2.new(0.1,0,0.4,0) floating.Image = "rbxassetid://139612719364628" floating.BackgroundTransparency = 1 floating.Visible = false floating.Active = true floating.Draggable = true floating.ZIndex = 999999 local corner = Instance.new("UICorner", floating) corner.CornerRadius = UDim.new(1,0) --// FLY FUNCIONAL (TIPO INFINITE YIELD) local flying = false local speed = 50 local bv, bg local function startFly() local char = player.Character local hrp = char:WaitForChild("HumanoidRootPart") local hum = char:WaitForChild("Humanoid") bg = Instance.new("BodyGyro", hrp) bg.P = 9e4 bg.MaxTorque = Vector3.new(9e9,9e9,9e9) bg.CFrame = hrp.CFrame bv = Instance.new("BodyVelocity", hrp) bv.MaxForce = Vector3.new(9e9,9e9,9e9) hum.PlatformStand = true game:GetService("RunService").RenderStepped:Connect(function() if not flying then return end bg.CFrame = workspace.CurrentCamera.CFrame bv.Velocity = (workspace.CurrentCamera.CFrame.LookVector * hum.MoveDirection.Z + workspace.CurrentCamera.CFrame.RightVector * hum.MoveDirection.X + Vector3.new(0, hum.MoveDirection.Y, 0)) * speed end) end local function stopFly() flying = false if bv then bv:Destroy() end if bg then bg:Destroy() end player.Character.Humanoid.PlatformStand = false end flyBtn.MouseButton1Click:Connect(function() flying = not flying if flying then flyBtn.Text = "FLY : ON" startFly() else flyBtn.Text = "FLY : OFF" stopFly() end end) --// MINIMIZAR mini.MouseButton1Click:Connect(function() Frame.Visible = false floating.Visible = true end) --// RESTAURAR DESDE PERRO 🐶 floating.MouseButton1Click:Connect(function() Frame.Visible = true floating.Visible = false end) --// CERRAR close.MouseButton1Click:Connect(function() gui:Destroy() end)