WiraPro Teleport SCRIPT
Key RequiredUniversal

WiraPro Teleport SCRIPT

Universal ScriptWiraProWiraPro 1.3K views 1.7K executesUpdated Nov 8, 2025
5.0/ 5(1 votes)
10100% Positive
Lua Script•154 lines (4408 chars)
local toggleKey = Enum.KeyCode.F2

local Players = game:GetService("Players")
local UIS = game:GetService("UserInputService")
local localPlayer = Players.LocalPlayer
local playerGui = localPlayer:WaitForChild("PlayerGui")


local screenGui = Instance.new("ScreenGui")
screenGui.Name = "WiraProUI"
screenGui.ResetOnSpawn = false
screenGui.Parent = playerGui


local mainFrame = Instance.new("Frame")
mainFrame.Name = "MainFrame"
mainFrame.Size = UDim2.new(0, 260, 0, 340)
mainFrame.Position = UDim2.new(0.5, -130, 0.35, -170)
mainFrame.BackgroundColor3 = Color3.fromRGB(40, 40, 40)
mainFrame.Active = true
mainFrame.Draggable = true
mainFrame.Visible = true
mainFrame.Parent = screenGui


local titleBar = Instance.new("Frame")
titleBar.Name = "TitleBar"
titleBar.Size = UDim2.new(1, 0, 0, 36)
titleBar.Position = UDim2.new(0, 0, 0, 0)
titleBar.BackgroundColor3 = Color3.fromRGB(30, 30, 30)
titleBar.Parent = mainFrame

local titleLabel = Instance.new("TextLabel")
titleLabel.Name = "TitleLabel"
titleLabel.Size = UDim2.new(1, -70, 1, 0)
titleLabel.Position = UDim2.new(0, 10, 0, 0)
titleLabel.BackgroundTransparency = 1
titleLabel.Text = "WiraPro v.0.1"
titleLabel.Font = Enum.Font.GothamBold
titleLabel.TextSize = 16
titleLabel.TextColor3 = Color3.fromRGB(255,255,255)
titleLabel.TextXAlignment = Enum.TextXAlignment.Left
titleLabel.Parent = titleBar


local closeBtn = Instance.new("TextButton")
closeBtn.Name = "CloseBtn"
closeBtn.Size = UDim2.new(0, 32, 0, 24)
closeBtn.Position = UDim2.new(1, -40, 0.5, -12)
closeBtn.BackgroundColor3 = Color3.fromRGB(180, 60, 60)
closeBtn.Text = "X"
closeBtn.Font = Enum.Font.SourceSansBold
closeBtn.TextSize = 18
closeBtn.TextColor3 = Color3.fromRGB(255,255,255)
closeBtn.Parent = titleBar


local openBtn = Instance.new("TextButton")
openBtn.Name = "OpenBtn"
openBtn.Size = UDim2.new(0, 100, 0, 30)
openBtn.Position = UDim2.new(0.02, 0, 0.02, 0)
openBtn.BackgroundColor3 = Color3.fromRGB(45,45,45)
openBtn.Text = "WiraPro"
openBtn.Font = Enum.Font.GothamSemibold
openBtn.TextSize = 14
openBtn.TextColor3 = Color3.fromRGB(255,255,255)
openBtn.Visible = false
openBtn.Parent = screenGui
openBtn.Active = true
openBtn.Draggable = true

local scrollFrame = Instance.new("ScrollingFrame")
scrollFrame.Name = "ScrollFrame"
scrollFrame.Size = UDim2.new(1, 0, 1, -36)
scrollFrame.Position = UDim2.new(0, 0, 0, 36)
scrollFrame.CanvasSize = UDim2.new(0, 0, 0, 0)
scrollFrame.BackgroundColor3 = Color3.fromRGB(45,45,45)
scrollFrame.BorderSizePixel = 0
scrollFrame.ScrollBarThickness = 6
scrollFrame.Parent = mainFrame

local function createPlayerButton(playerName)
	local btn = Instance.new("TextButton")
	btn.Name = playerName
	btn.Size = UDim2.new(1, -10, 0, 30)
	btn.BackgroundColor3 = Color3.fromRGB(60,60,60)
	btn.TextColor3 = Color3.new(1,1,1)
	btn.Text = playerName
	btn.Font = Enum.Font.GothamSemibold
	btn.TextSize = 14
	return btn
end


local function teleportToPlayer(targetPlayer)
	if not targetPlayer or not targetPlayer.Character or not localPlayer.Character then return end
	local targetRoot = targetPlayer.Character:FindFirstChild("HumanoidRootPart")
	local myRoot = localPlayer.Character:FindFirstChild("HumanoidRootPart")
	if targetRoot and myRoot then
		myRoot.CFrame = targetRoot.CFrame + Vector3.new(0,2,0)
	end
end


local function refreshList()
	for _, child in ipairs(scrollFrame:GetChildren()) do
		if child:IsA("TextButton") then
			child:Destroy()
		end
	end

	local yPos = 5
	for _, p in ipairs(Players:GetPlayers()) do
		if p ~= localPlayer then
			local btn = createPlayerButton(p.Name)
			btn.Position = UDim2.new(0, 5, 0, yPos)
			btn.Parent = scrollFrame
			yPos = yPos + 35

			btn.MouseButton1Click:Connect(function()
				teleportToPlayer(p)
			end)
		end
	end
	scrollFrame.CanvasSize = UDim2.new(0, 0, 0, yPos)
end

refreshList()
Players.PlayerAdded:Connect(refreshList)
Players.PlayerRemoving:Connect(refreshList)


closeBtn.MouseButton1Click:Connect(function()
	mainFrame.Visible = false
	openBtn.Visible = true
end)

openBtn.MouseButton1Click:Connect(function()
	mainFrame.Visible = true
	openBtn.Visible = false
end)


UIS.InputBegan:Connect(function(input, processed)
	if processed then return end
	if input.KeyCode == toggleKey then
		local newVis = not mainFrame.Visible
		mainFrame.Visible = newVis
		openBtn.Visible = not newVis
	end
end)

-- Sync visibility if script sets mainFrame initially
openBtn.Visible = not mainFrame.Visible

Features & Information

UNIVERSAL TELEPORT SCRIPT
#UNIVERSALSCRIPT

Community Comments (1)

Kat_NKat_NFeb 27, 2026

thanks

More Scripts for Universal Scripts