local player = game:GetService("Players").LocalPlayer repeat task.wait() until player:FindFirstChild("PlayerGui") local gui = Instance.new("ScreenGui") gui.Name = "ORIPIPO_GUI" gui.ResetOnSpawn = false gui.Parent = player.PlayerGui local panel = Instance.new("Frame") panel.Size = UDim2.new(0, 700, 0, 740) panel.Position = UDim2.new(0.5, -350, 0.5, -370) panel.BackgroundColor3 = Color3.fromRGB(255, 0, 0) panel.BorderSizePixel = 0 panel.Active = true panel.ClipsDescendants = true panel.Parent = gui local panelCorner = Instance.new("UICorner") panelCorner.CornerRadius = UDim.new(0, 20) panelCorner.Parent = panel local panelStroke = Instance.new("UIStroke") panelStroke.Thickness = 6 panelStroke.Color = Color3.fromRGB(0, 0, 0) panelStroke.ApplyStrokeMode = Enum.ApplyStrokeMode.Border panelStroke.Parent = panel local titulo = Instance.new("TextLabel") titulo.Size = UDim2.new(1, 0, 0, 100) titulo.BackgroundTransparency = 1 titulo.Text = "ORIPIPO GUI" titulo.Font = Enum.Font.GothamBlack titulo.TextColor3 = Color3.fromRGB(0, 0, 0) titulo.TextSize = 58 titulo.ZIndex = 10 titulo.Parent = panel local UIS = game:GetService("UserInputService") local RS = game:GetService("RunService") local TS = game:GetService("TweenService") local dragging, dragStart, startPos titulo.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then dragging = true dragStart = input.Position startPos = panel.Position input.Changed:Connect(function() if input.UserInputState == Enum.UserInputState.End then dragging = false end end) 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 panel.Position = UDim2.new(startPos.X.Scale, startPos.X.Offset + delta.X, startPos.Y.Scale, startPos.Y.Offset + delta.Y) end end) local flyActivo, flyBV, flyBG local function toggleFly() local char = player.Character or player.CharacterAdded:Wait() local hrp = char:FindFirstChild("HumanoidRootPart") if not flyActivo then flyActivo = true flyBV = Instance.new("BodyVelocity", hrp) flyBV.MaxForce = Vector3.new(math.huge, math.huge, math.huge) flyBG = Instance.new("BodyGyro", hrp) flyBG.MaxTorque = Vector3.new(math.huge, math.huge, math.huge) flyBG.P = 5000 RS:BindToRenderStep("Fly", 201, function() local cam = workspace.CurrentCamera.CFrame local move = Vector3.new() if UIS:IsKeyDown(Enum.KeyCode.W) then move += cam.LookVector end if UIS:IsKeyDown(Enum.KeyCode.S) then move -= cam.LookVector end if UIS:IsKeyDown(Enum.KeyCode.A) then move -= cam.RightVector end if UIS:IsKeyDown(Enum.KeyCode.D) then move += cam.RightVector end flyBV.Velocity = move * 60 flyBG.CFrame = cam end) else flyActivo = false RS:UnbindFromRenderStep("Fly") if hrp:FindFirstChild("BodyVelocity") then hrp.BodyVelocity:Destroy() end if hrp:FindFirstChild("BodyGyro") then hrp.BodyGyro:Destroy() end end end local function toggleCorrer() local hum = player.Character:FindFirstChildOfClass("Humanoid") hum.WalkSpeed = hum.WalkSpeed == 16 and 50 or 16 end local noclipActivo, noclipConn local function toggleNoclip() if not noclipActivo then noclipActivo = true noclipConn = RS.Stepped:Connect(function() if noclipActivo and player.Character then for _, v in pairs(player.Character:GetDescendants()) do if v:IsA("BasePart") then v.CanCollide = false end end end end) else noclipActivo = false if noclipConn then noclipConn:Disconnect() end end end local xrayActivo = false local function toggleXray() xrayActivo = not xrayActivo for _, v in pairs(workspace:GetDescendants()) do if v:IsA("BasePart") and not v:IsDescendantOf(player.Character) then if xrayActivo then if not v:FindFirstChild("OriginalTransparency") then local val = Instance.new("NumberValue", v) val.Name = "OriginalTransparency" val.Value = v.Transparency end v.Transparency = 0.5 else if v:FindFirstChild("OriginalTransparency") then v.Transparency = v.OriginalTransparency.Value else v.Transparency = 0 end end end end end local superSaltoActivo = false local function toggleSalto() local hum = player.Character:FindFirstChildOfClass("Humanoid") if hum then superSaltoActivo = not superSaltoActivo hum.UseJumpPower = true hum.JumpPower = superSaltoActivo and 120 or 50 end end local infJumpActivo, infJumpConn local function toggleInfJump() if not infJumpActivo then infJumpActivo = true infJumpConn = UIS.JumpRequest:Connect(function() if infJumpActivo then player.Character:FindFirstChildOfClass("Humanoid"):ChangeState("Jumping") end end) else infJumpActivo = false if infJumpConn then infJumpConn:Disconnect() end end end local spectatorActivo = false local moveSpeed, fastMultiplier, slowMultiplier = 1, 4, 0.25 local rotX, rotY = 0, 0 local vel, smoothVel, smoothRot = Vector3.new(), Vector3.new(), Vector2.new() local rotating = false local connRender local function toggleSpectator() spectatorActivo = not spectatorActivo local char = player.Character local hum = char:FindFirstChildOfClass("Humanoid") local hrp = char:FindFirstChild("HumanoidRootPart") local cam = workspace.CurrentCamera if spectatorActivo then cam.CameraType = Enum.CameraType.Scriptable if hrp then hrp.Anchored = true end if hum then hum.PlatformStand = true end local cf = cam.CFrame local x, y, z = cf:ToEulerAnglesYXZ() rotX, rotY = math.deg(x), math.deg(y) connRender = RS.RenderStepped:Connect(function(dt) local move = Vector3.new() if UIS:IsKeyDown(Enum.KeyCode.W) then move += Vector3.new(0,0,-1) end if UIS:IsKeyDown(Enum.KeyCode.S) then move += Vector3.new(0,0,1) end if UIS:IsKeyDown(Enum.KeyCode.A) then move += Vector3.new(-1,0,0) end if UIS:IsKeyDown(Enum.KeyCode.D) then move += Vector3.new(1,0,0) end if UIS:IsKeyDown(Enum.KeyCode.E) then move += Vector3.new(0,1,0) end if UIS:IsKeyDown(Enum.KeyCode.Q) then move += Vector3.new(0,-1,0) end local speed = moveSpeed if UIS:IsKeyDown(Enum.KeyCode.LeftShift) then speed *= fastMultiplier end if UIS:IsKeyDown(Enum.KeyCode.LeftControl) then speed *= slowMultiplier end vel = move * speed * 60 smoothVel = smoothVel:Lerp(vel, 0.12) if rotating then local delta = UIS:GetMouseDelta() rotY -= delta.X * 0.15 rotX -= delta.Y * 0.15 rotX = math.clamp(rotX, -89.9, 89.9) end smoothRot = smoothRot:Lerp(Vector2.new(rotX, rotY), 0.2) cam.CFrame = CFrame.new(cam.CFrame.Position) * CFrame.Angles(0, math.rad(smoothRot.Y), 0) * CFrame.Angles(math.rad(smoothRot.X), 0, 0) cam.CFrame += cam.CFrame:VectorToWorldSpace(smoothVel * dt) end) else if connRender then connRender:Disconnect() end if hrp then hrp.Anchored = false end if hum then hum.PlatformStand = false end cam.CameraType = Enum.CameraType.Custom cam.CameraSubject = hum end end UIS.InputBegan:Connect(function(i) if i.UserInputType == Enum.UserInputType.MouseButton2 then rotating = true UIS.MouseBehavior = Enum.MouseBehavior.LockCenter end end) UIS.InputEnded:Connect(function(i) if i.UserInputType == Enum.UserInputType.MouseButton2 then rotating = false UIS.MouseBehavior = Enum.MouseBehavior.Default end end) local tpActivo = false local tpGhost = nil local function toggleTeleport() tpActivo = not tpActivo if tpActivo then tpGhost = Instance.new("Part", workspace) tpGhost.Shape = Enum.PartType.Cylinder tpGhost.Size = Vector3.new(0.2, 5, 5) tpGhost.Transparency = 0.5 tpGhost.Color = Color3.fromRGB(0, 0, 0) tpGhost.Anchored = true tpGhost.CanCollide = false tpGhost.Rotation = Vector3.new(0, 0, 90) local mouse = player:GetMouse() mouse.TargetFilter = tpGhost local conn conn = RS.RenderStepped:Connect(function() if not tpActivo then conn:Disconnect() if tpGhost then tpGhost:Destroy() end return end tpGhost.Position = mouse.Hit.p end) mouse.Button1Down:Connect(function() if tpActivo and player.Character then player.Character.HumanoidRootPart.CFrame = CFrame.new(mouse.Hit.p + Vector3.new(0,3,0)) end end) else if tpGhost then tpGhost:Destroy() end end end local acciones = { {"FLY", toggleFly}, {"RUN", toggleCorrer}, {"NOCLIP", toggleNoclip}, {"SUPER JUMP", toggleSalto}, {"INF JUMP", toggleInfJump}, {"XRAY", toggleXray}, {"SPECTATOR", toggleSpectator}, {"TELEPORT", toggleTeleport} } local mainLineH = Instance.new("Frame") mainLineH.Size = UDim2.new(1, 0, 0, 6) mainLineH.Position = UDim2.new(0, 0, 0, 100) mainLineH.BackgroundColor3 = Color3.fromRGB(0, 0, 0) mainLineH.BorderSizePixel = 0 mainLineH.Parent = panel local mainLineV = Instance.new("Frame") mainLineV.Size = UDim2.new(0, 6, 1, -100) mainLineV.Position = UDim2.new(0.5, -3, 0, 100) mainLineV.BackgroundColor3 = Color3.fromRGB(0, 0, 0) mainLineV.BorderSizePixel = 0 mainLineV.Parent = panel local btnH = (panel.Size.Y.Offset - 100) / 4 for i, dat in ipairs(acciones) do local btn = Instance.new("TextButton") btn.Size = UDim2.new(0.5, 0, 0, btnH) local col = (i-1) % 2 local row = math.floor((i-1) / 2) btn.Position = UDim2.new(col * 0.5, 0, 0, 100 + (row * btnH)) btn.BackgroundTransparency = 1 btn.Text = dat[1] btn.Font = Enum.Font.GothamBlack btn.TextColor3 = Color3.fromRGB(0, 0, 0) btn.TextSize = 42 btn.Parent = panel if row < 3 then local line = Instance.new("Frame") line.Size = UDim2.new(1, 0, 0, 6) line.Position = UDim2.new(0, 0, 1, -3) line.BackgroundColor3 = Color3.fromRGB(0, 0, 0) line.BorderSizePixel = 0 line.Parent = btn end btn.MouseButton1Click:Connect(dat[2]) end panel.Size = UDim2.new(0, 0, 0, 0) TS:Create(panel, TweenInfo.new(0.6, Enum.EasingStyle.Back, Enum.EasingDirection.Out), {Size = UDim2.new(0, 700, 0, 740)}):Play()