Baconcoder

tp

Jun 29th, 2025 (edited)
46
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.71 KB | None | 0 0
  1. local Players = game:GetService("Players")
  2. local localPlayer = Players.LocalPlayer
  3.  
  4. -- Create GUI
  5. local screenGui = Instance.new("ScreenGui")
  6. screenGui.Name = "TPGui"
  7. screenGui.ResetOnSpawn = false
  8. screenGui.Parent = localPlayer:WaitForChild("PlayerGui")
  9.  
  10. local frame = Instance.new("Frame")
  11. frame.Size = UDim2.new(0, 320, 0, 180)
  12. frame.Position = UDim2.new(0.5, -160, 0.5, -90)
  13. frame.BackgroundColor3 = Color3.fromRGB(40, 40, 40)
  14. frame.BorderSizePixel = 0
  15. frame.Active = true
  16. frame.Draggable = true
  17. frame.Parent = screenGui
  18.  
  19. local title = Instance.new("TextLabel")
  20. title.Text = "Teleport & Bring GUI"
  21. title.Size = UDim2.new(1, 0, 0, 30)
  22. title.BackgroundColor3 = Color3.fromRGB(25, 25, 25)
  23. title.TextColor3 = Color3.new(1, 1, 1)
  24. title.Font = Enum.Font.GothamBold
  25. title.TextSize = 18
  26. title.Parent = frame
  27.  
  28. local playerBox = Instance.new("TextBox")
  29. playerBox.PlaceholderText = "Enter Username or Display Name or .RANDOM"
  30. playerBox.Size = UDim2.new(1, -20, 0, 30)
  31. playerBox.Position = UDim2.new(0, 10, 0, 40)
  32. playerBox.BackgroundColor3 = Color3.fromRGB(60, 60, 60)
  33. playerBox.TextColor3 = Color3.new(1, 1, 1)
  34. playerBox.Font = Enum.Font.Gotham
  35. playerBox.TextSize = 16
  36. playerBox.ClearTextOnFocus = false
  37. playerBox.Parent = frame
  38.  
  39. local tpButton = Instance.new("TextButton")
  40. tpButton.Text = "Teleport To Player"
  41. tpButton.Size = UDim2.new(0.48, -10, 0, 30)
  42. tpButton.Position = UDim2.new(0, 10, 0, 80)
  43. tpButton.BackgroundColor3 = Color3.fromRGB(100, 100, 200)
  44. tpButton.TextColor3 = Color3.new(1, 1, 1)
  45. tpButton.Font = Enum.Font.GothamBold
  46. tpButton.TextSize = 16
  47. tpButton.Parent = frame
  48.  
  49. local bringButton = Instance.new("TextButton")
  50. bringButton.Text = "Bring Player To Me"
  51. bringButton.Size = UDim2.new(0.48, -10, 0, 30)
  52. bringButton.Position = UDim2.new(0.52, 0, 0, 80)
  53. bringButton.BackgroundColor3 = Color3.fromRGB(200, 100, 100)
  54. bringButton.TextColor3 = Color3.new(1, 1, 1)
  55. bringButton.Font = Enum.Font.GothamBold
  56. bringButton.TextSize = 16
  57. bringButton.Parent = frame
  58.  
  59. local feedback = Instance.new("TextLabel")
  60. feedback.Size = UDim2.new(1, -20, 0, 20)
  61. feedback.Position = UDim2.new(0, 10, 0, 120)
  62. feedback.BackgroundTransparency = 1
  63. feedback.TextColor3 = Color3.fromRGB(255, 100, 100)
  64. feedback.Font = Enum.Font.Gotham
  65. feedback.TextSize = 14
  66. feedback.Text = ""
  67. feedback.Parent = frame
  68.  
  69. -- Helper function to find player by name or display name
  70. local function findPlayerByName(input)
  71. local loweredInput = input:lower()
  72. for _, player in ipairs(Players:GetPlayers()) do
  73. if player.Name:lower() == loweredInput then
  74. return player
  75. end
  76. end
  77. for _, player in ipairs(Players:GetPlayers()) do
  78. if player.DisplayName:lower() == loweredInput then
  79. return player
  80. end
  81. end
  82. for _, player in ipairs(Players:GetPlayers()) do
  83. if string.find(player.DisplayName:lower(), loweredInput) then
  84. return player
  85. end
  86. end
  87. return nil
  88. end
  89.  
  90. -- Teleport to target function
  91. local function teleportTo(targetPlayer)
  92. local character = localPlayer.Character
  93. if not character then return false, "Your character not loaded." end
  94. local hrp = character:FindFirstChild("HumanoidRootPart")
  95. local humanoid = character:FindFirstChildOfClass("Humanoid")
  96. if not hrp or not humanoid then return false, "Your character missing parts." end
  97. if not targetPlayer.Character or not targetPlayer.Character:FindFirstChild("HumanoidRootPart") then
  98. return false, "Target character not available."
  99. end
  100.  
  101. humanoid:ChangeState(Enum.HumanoidStateType.Jumping)
  102. wait(0.1)
  103. hrp.CFrame = targetPlayer.Character.HumanoidRootPart.CFrame + Vector3.new(0, 3, 0)
  104. return true
  105. end
  106.  
  107. -- Bring player to me function
  108. local function bringPlayer(targetPlayer)
  109. if not targetPlayer.Character or not targetPlayer.Character:FindFirstChild("HumanoidRootPart") then
  110. return false, "Target character not available."
  111. end
  112. local myCharacter = localPlayer.Character
  113. if not myCharacter then return false, "Your character not loaded." end
  114. local myHRP = myCharacter:FindFirstChild("HumanoidRootPart")
  115. if not myHRP then return false, "Your character missing parts." end
  116.  
  117. targetPlayer.Character.HumanoidRootPart.CFrame = myHRP.CFrame + Vector3.new(0, 3, 0)
  118. return true
  119. end
  120.  
  121. -- Teleport button click
  122. tpButton.MouseButton1Click:Connect(function()
  123. local inputName = playerBox.Text
  124. if inputName == "" then
  125. feedback.Text = "Please enter a player name or .RANDOM"
  126. return
  127. end
  128.  
  129. if inputName:lower() == ".random" then
  130. local players = Players:GetPlayers()
  131. if #players <= 1 then
  132. feedback.Text = "No other players to teleport to."
  133. return
  134. end
  135. -- Remove self from list
  136. local others = {}
  137. for _, p in ipairs(players) do
  138. if p ~= localPlayer then
  139. table.insert(others, p)
  140. end
  141. end
  142. local randomPlayer = others[math.random(1, #others)]
  143. local success, message = teleportTo(randomPlayer)
  144. feedback.Text = success and ("Teleported to "..randomPlayer.Name) or message
  145. return
  146. end
  147.  
  148. local targetPlayer = findPlayerByName(inputName)
  149. if not targetPlayer then
  150. feedback.Text = "Player not found."
  151. return
  152. end
  153.  
  154. local success, message = teleportTo(targetPlayer)
  155. feedback.Text = success and ("Teleported to "..targetPlayer.Name) or message
  156. end)
  157.  
  158. -- Bring button click
  159. bringButton.MouseButton1Click:Connect(function()
  160. local inputName = playerBox.Text
  161. if inputName == "" then
  162. feedback.Text = "Please enter a player name to bring."
  163. return
  164. end
  165.  
  166. local targetPlayer = findPlayerByName(inputName)
  167. if not targetPlayer then
  168. feedback.Text = "Player not found."
  169. return
  170. end
  171. if targetPlayer == localPlayer then
  172. feedback.Text = "Can't bring yourself!"
  173. return
  174. end
  175.  
  176. local success, message = bringPlayer(targetPlayer)
  177. feedback.Text = success and ("Brought "..targetPlayer.Name.." to you") or message
  178. end)
  179.  
Advertisement
Add Comment
Please, Sign In to add comment