Oripipo gui
Key RequiredUniversal

Oripipo gui

Universal ScriptOripipoOripipo 542 views 4 executesUpdated Jan 9, 2026
5.0/ 5(1 votes)
10100% Positive
Lua Script•290 lines (9900 chars)
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()

Features & Information

No description provided for this script.

Community Comments (7)

ProScripter2000ProScripter2000Jan 9, 2026

W script :3

Replying to @ProScripter2000
OripipoOripipoJan 11, 2026

@ProScripter2000 ty

Replying to @Oripipo
ProScripter2000ProScripter2000Jan 11, 2026

@INFORMATIONSEEN np

ProScripter2000ProScripter2000Jan 9, 2026

@reignxb bot

ProScripter2000ProScripter2000Jan 10, 2026

@reignxb so, what u doing promoting a discord server

ProScripter2000ProScripter2000Jan 11, 2026

@reignxb i think its not ur server, now i say a reason for u stop promoting a discord server. U get paid for promote that discord server? U cant spam like if u want, u need get paid atleast for do ur spam. (Except if its smth of urs)

SvuykskvsSvuykskvsJan 22, 2026

For some reason the gui is to big to fit my screen and if you could can you pls make thesapeed faster. Overall this is a noice gui keep up the good work.

More Scripts for Universal Scripts