-- Variables to store positions local originalPosition = nil local teleportPosition = Vector3.new(-1783.60, 1965.48, -2503.98) local baseplateSize = Vector3.new(100, 1, 100) local baseplatePosition = teleportPosition - Vector3.new(0, 5, 0) local teleported = false -- Track whether the player is teleported -- Create the ScreenGui local screenGui = Instance.new("ScreenGui") screenGui.Parent = game.CoreGui -- Parent it to CoreGui so it shows up on the screen -- Create the Button local teleportButton = Instance.new("TextButton") teleportButton.Size = UDim2.new(0, 35, 0, 35) -- Set size to 35x35 teleportButton.Position = UDim2.new(0, 0, 0, 0) -- Top left corner teleportButton.BackgroundColor3 = Color3.new(1, 0, 0) -- Red color teleportButton.Text = "TP" -- Button text teleportButton.TextColor3 = Color3.new(1, 1, 1) -- White text teleportButton.Parent = screenGui -- Parent it to the ScreenGui -- Create the baseplate local baseplate = Instance.new("Part") baseplate.Size = baseplateSize baseplate.Position = baseplatePosition baseplate.Anchored = true baseplate.BrickColor = BrickColor.new("Earth green") baseplate.Parent = workspace -- Add it to the game world -- Teleport function local function teleportPlayer() local player = game.Players.LocalPlayer if player and player.Character and player.Character:FindFirstChild("HumanoidRootPart") then local humanoidRootPart = player.Character.HumanoidRootPart if not teleported then -- Save the original position originalPosition = humanoidRootPart.Position -- Teleport to the target position humanoidRootPart.CFrame = CFrame.new(teleportPosition) teleported = true else -- Teleport back to the original position if originalPosition then humanoidRootPart.CFrame = CFrame.new(originalPosition) end teleported = false end end end -- Connect the button click to the teleport function teleportButton.MouseButton1Click:Connect(teleportPlayer)