-- Services local TweenService = game:GetService("TweenService") local RunService = game:GetService("RunService") local UserInputService = game:GetService("UserInputService") local Players = game:GetService("Players") local player = Players.LocalPlayer local character = player.Character or player.CharacterAdded:Wait() -- Update character reference when respawning player.CharacterAdded:Connect(function(newChar) character = newChar end) -- Create GUI Elements local screenGui = Instance.new("ScreenGui", player.PlayerGui) screenGui.Name = "TeleportGui" screenGui.ResetOnSpawn = false local frame = Instance.new("Frame", screenGui) frame.Size = UDim2.new(0, 250, 0, 120) frame.Position = UDim2.new(0.5, -125, 0.4, 0) frame.BackgroundColor3 = Color3.fromRGB(40, 40, 40) frame.BorderSizePixel = 0 frame.Active = true -- Necessary for dragging local textBox = Instance.new("TextBox", frame) textBox.Size = UDim2.new(0.8, 0, 0, 30) textBox.Position = UDim2.new(0.1, 0, 0.15, 0) textBox.PlaceholderText = "Part Name (Case Sensitive)" textBox.Text = "" textBox.BackgroundColor3 = Color3.fromRGB(60, 60, 60) textBox.TextColor3 = Color3.new(1, 1, 1) local button = Instance.new("TextButton", frame) button.Size = UDim2.new(0.8, 0, 0, 40) button.Position = UDim2.new(0.1, 0, 0.55, 0) button.BackgroundColor3 = Color3.fromRGB(60, 180, 80) button.Text = "Go to Part" button.TextColor3 = Color3.new(1, 1, 1) -- [Modern Dragging Logic] local dragging, dragInput, dragStart, startPos local function update(input) local delta = input.Position - dragStart frame.Position = UDim2.new(startPos.X.Scale, startPos.X.Offset + delta.X, startPos.Y.Scale, startPos.Y.Offset + delta.Y) end frame.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then dragging = true dragStart = input.Position startPos = frame.Position input.Changed:Connect(function() if input.UserInputState == Enum.UserInputState.End then dragging = false end end) end end) frame.InputChanged:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType == Enum.UserInputType.Touch then dragInput = input end end) UserInputService.InputChanged:Connect(function(input) if input == dragInput and dragging then update(input) end end) -- N