Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local Players = game:GetService("Players")
- local localPlayer = Players.LocalPlayer
- -- Create GUI
- local screenGui = Instance.new("ScreenGui")
- screenGui.Name = "TPGui"
- screenGui.ResetOnSpawn = false
- screenGui.Parent = localPlayer:WaitForChild("PlayerGui")
- local frame = Instance.new("Frame")
- frame.Size = UDim2.new(0, 320, 0, 180)
- frame.Position = UDim2.new(0.5, -160, 0.5, -90)
- frame.BackgroundColor3 = Color3.fromRGB(40, 40, 40)
- frame.BorderSizePixel = 0
- frame.Active = true
- frame.Draggable = true
- frame.Parent = screenGui
- local title = Instance.new("TextLabel")
- title.Text = "Teleport & Bring GUI"
- title.Size = UDim2.new(1, 0, 0, 30)
- title.BackgroundColor3 = Color3.fromRGB(25, 25, 25)
- title.TextColor3 = Color3.new(1, 1, 1)
- title.Font = Enum.Font.GothamBold
- title.TextSize = 18
- title.Parent = frame
- local playerBox = Instance.new("TextBox")
- playerBox.PlaceholderText = "Enter Username or Display Name or .RANDOM"
- playerBox.Size = UDim2.new(1, -20, 0, 30)
- playerBox.Position = UDim2.new(0, 10, 0, 40)
- playerBox.BackgroundColor3 = Color3.fromRGB(60, 60, 60)
- playerBox.TextColor3 = Color3.new(1, 1, 1)
- playerBox.Font = Enum.Font.Gotham
- playerBox.TextSize = 16
- playerBox.ClearTextOnFocus = false
- playerBox.Parent = frame
- local tpButton = Instance.new("TextButton")
- tpButton.Text = "Teleport To Player"
- tpButton.Size = UDim2.new(0.48, -10, 0, 30)
- tpButton.Position = UDim2.new(0, 10, 0, 80)
- tpButton.BackgroundColor3 = Color3.fromRGB(100, 100, 200)
- tpButton.TextColor3 = Color3.new(1, 1, 1)
- tpButton.Font = Enum.Font.GothamBold
- tpButton.TextSize = 16
- tpButton.Parent = frame
- local bringButton = Instance.new("TextButton")
- bringButton.Text = "Bring Player To Me"
- bringButton.Size = UDim2.new(0.48, -10, 0, 30)
- bringButton.Position = UDim2.new(0.52, 0, 0, 80)
- bringButton.BackgroundColor3 = Color3.fromRGB(200, 100, 100)
- bringButton.TextColor3 = Color3.new(1, 1, 1)
- bringButton.Font = Enum.Font.GothamBold
- bringButton.TextSize = 16
- bringButton.Parent = frame
- local feedback = Instance.new("TextLabel")
- feedback.Size = UDim2.new(1, -20, 0, 20)
- feedback.Position = UDim2.new(0, 10, 0, 120)
- feedback.BackgroundTransparency = 1
- feedback.TextColor3 = Color3.fromRGB(255, 100, 100)
- feedback.Font = Enum.Font.Gotham
- feedback.TextSize = 14
- feedback.Text = ""
- feedback.Parent = frame
- -- Helper function to find player by name or display name
- local function findPlayerByName(input)
- local loweredInput = input:lower()
- for _, player in ipairs(Players:GetPlayers()) do
- if player.Name:lower() == loweredInput then
- return player
- end
- end
- for _, player in ipairs(Players:GetPlayers()) do
- if player.DisplayName:lower() == loweredInput then
- return player
- end
- end
- for _, player in ipairs(Players:GetPlayers()) do
- if string.find(player.DisplayName:lower(), loweredInput) then
- return player
- end
- end
- return nil
- end
- -- Teleport to target function
- local function teleportTo(targetPlayer)
- local character = localPlayer.Character
- if not character then return false, "Your character not loaded." end
- local hrp = character:FindFirstChild("HumanoidRootPart")
- local humanoid = character:FindFirstChildOfClass("Humanoid")
- if not hrp or not humanoid then return false, "Your character missing parts." end
- if not targetPlayer.Character or not targetPlayer.Character:FindFirstChild("HumanoidRootPart") then
- return false, "Target character not available."
- end
- humanoid:ChangeState(Enum.HumanoidStateType.Jumping)
- wait(0.1)
- hrp.CFrame = targetPlayer.Character.HumanoidRootPart.CFrame + Vector3.new(0, 3, 0)
- return true
- end
- -- Bring player to me function
- local function bringPlayer(targetPlayer)
- if not targetPlayer.Character or not targetPlayer.Character:FindFirstChild("HumanoidRootPart") then
- return false, "Target character not available."
- end
- local myCharacter = localPlayer.Character
- if not myCharacter then return false, "Your character not loaded." end
- local myHRP = myCharacter:FindFirstChild("HumanoidRootPart")
- if not myHRP then return false, "Your character missing parts." end
- targetPlayer.Character.HumanoidRootPart.CFrame = myHRP.CFrame + Vector3.new(0, 3, 0)
- return true
- end
- -- Teleport button click
- tpButton.MouseButton1Click:Connect(function()
- local inputName = playerBox.Text
- if inputName == "" then
- feedback.Text = "Please enter a player name or .RANDOM"
- return
- end
- if inputName:lower() == ".random" then
- local players = Players:GetPlayers()
- if #players <= 1 then
- feedback.Text = "No other players to teleport to."
- return
- end
- -- Remove self from list
- local others = {}
- for _, p in ipairs(players) do
- if p ~= localPlayer then
- table.insert(others, p)
- end
- end
- local randomPlayer = others[math.random(1, #others)]
- local success, message = teleportTo(randomPlayer)
- feedback.Text = success and ("Teleported to "..randomPlayer.Name) or message
- return
- end
- local targetPlayer = findPlayerByName(inputName)
- if not targetPlayer then
- feedback.Text = "Player not found."
- return
- end
- local success, message = teleportTo(targetPlayer)
- feedback.Text = success and ("Teleported to "..targetPlayer.Name) or message
- end)
- -- Bring button click
- bringButton.MouseButton1Click:Connect(function()
- local inputName = playerBox.Text
- if inputName == "" then
- feedback.Text = "Please enter a player name to bring."
- return
- end
- local targetPlayer = findPlayerByName(inputName)
- if not targetPlayer then
- feedback.Text = "Player not found."
- return
- end
- if targetPlayer == localPlayer then
- feedback.Text = "Can't bring yourself!"
- return
- end
- local success, message = bringPlayer(targetPlayer)
- feedback.Text = success and ("Brought "..targetPlayer.Name.." to you") or message
- end)
Advertisement
Add Comment
Please, Sign In to add comment