-- Criando a Interface Gráfica (GUI) local ScreenGui = Instance.new("ScreenGui") local MainFrame = Instance.new("Frame") local Title = Instance.new("TextLabel") local PosLabel = Instance.new("TextLabel") local SaveInput = Instance.new("TextBox") local SaveBtn = Instance.new("TextButton") local TpCurrentBtn = Instance.new("TextButton") -- NOVO: Botão para teletransportar para a posição atual local ClearAllBtn = Instance.new("TextButton") local ScrollFrame = Instance.new("ScrollingFrame") local UIListLayout = Instance.new("UIListLayout") -- Configurando a Tela Principal ScreenGui.Name = "TeleportSystemGui" ScreenGui.Parent = game.Players.LocalPlayer:WaitForChild("PlayerGui") ScreenGui.ResetOnSpawn = false MainFrame.Name = "MainFrame" MainFrame.Parent = ScreenGui MainFrame.BackgroundColor3 = Color3.fromRGB(35, 35, 35) MainFrame.Position = UDim2.new(0.05, 0, 0.2, 0) MainFrame.Size = UDim2.new(0, 250, 0, 380) -- Aumentado um pouco para caber o novo botão MainFrame.Active = true MainFrame.Draggable = true -- Permite arrastar a janela pela tela Title.Name = "Title" Title.Parent = MainFrame Title.Size = UDim2.new(1, 0, 0, 30) Title.BackgroundColor3 = Color3.fromRGB(20, 20, 20) Title.Text = "Gotta 3🤑" Title.TextColor3 = Color3.fromRGB(255, 255, 255) Title.TextSize = 19 Title.Font = Enum.Font.SourceSansBold -- Mostrador de Posição Atual PosLabel.Name = "PosLabel" PosLabel.Parent = MainFrame PosLabel.Position = UDim2.new(0, 10, 0, 40) PosLabel.Size = UDim2.new(1, -20, 0, 30) PosLabel.Text = "Posição: X: 0, Y: 0, Z: 0" PosLabel.TextColor3 = Color3.fromRGB(0, 255, 128) PosLabel.TextSize = 12 PosLabel.Font = Enum.Font.SourceSansSemibold -- Input para dar nome ao teleporte SaveInput.Name = "SaveInput" SaveInput.Parent = MainFrame SaveInput.Position = UDim2.new(0, 10, 0, 75) SaveInput.Size = UDim2.new(1, -20, 0, 30) SaveInput.PlaceholderText = "Nome do Teleporte..." SaveInput.Text = "" SaveInput.BackgroundColor3 = Color3.fromRGB(50, 50, 50) SaveInput.TextColor3 = Color3.fromRGB(255, 255, 255) -- Botão Salvar Posição Atual SaveBtn.Name = "SaveBtn" SaveBtn.Parent = MainFrame SaveBtn.Position = UDim2.new(0, 10, 0, 110) SaveBtn.Size = UDim2.new(0, 110, 0, 30) SaveBtn.BackgroundColor3 = Color3.fromRGB(0, 120, 255) SaveBtn.Text = "Salvar Posição" SaveBtn.TextColor3 = Color3.fromRGB(255, 255, 255) -- Botão Limpar Tudo ClearAllBtn.Name = "ClearAllBtn" ClearAllBtn.Parent = MainFrame ClearAllBtn.Position = UDim2.new(0, 130, 0, 110) ClearAllBtn.Size = UDim2.new(0, 110, 0, 30) ClearAllBtn.BackgroundColor3 = Color3.fromRGB(200, 50, 50) ClearAllBtn.Text = "Apagar Todos" ClearAllBtn.TextColor3 = Color3.fromRGB(255, 255, 255) -- NOVO: Botão para Forçar Teleporte na Posição Armada/Atual TpCurrentBtn.Name = "TpCurrentBtn" TpCurrentBtn.Parent = MainFrame TpCurrentBtn.Position = UDim2.new(0, 10, 0, 145) TpCurrentBtn.Size = UDim2.new(1, -20, 0, 30) TpCurrentBtn.BackgroundColor3 = Color3.fromRGB(40, 160, 80) TpCurrentBtn.Text = "Teleportar para Pos. Atual (Reset)" TpCurrentBtn.TextColor3 = Color3.fromRGB(255, 255, 255) -- Lista com os teleportes salvos ScrollFrame.Name = "ScrollFrame" ScrollFrame.Parent = MainFrame ScrollFrame.Position = UDim2.new(0, 10, 0, 185) ScrollFrame.Size = UDim2.new(1, -20, 0, 185) ScrollFrame.BackgroundColor3 = Color3.fromRGB(25, 25, 25) ScrollFrame.CanvasSize = UDim2.new(0, 0, 0, 0) ScrollFrame.ScrollBarThickness = 6 UIListLayout.Parent = ScrollFrame UIListLayout.SortOrder = Enum.SortOrder.LayoutOrder UIListLayout.Padding = UDim.new(0, 5) -- Lógica do Script local Player = game.Players.LocalPlayer local saves = {} local checkpointCFrame = nil -- Guarda o CFrame atual para o botão de emergência -- Atualiza o texto da posição atual em tempo real spawn(function() while wait(0.2) do if Player.Character and Player.Character:FindFirstChild("HumanoidRootPart") then local root = Player.Character.HumanoidRootPart checkpointCFrame = root.CFrame PosLabel.Text = string.format("Posição: X: %.1f, Y: %.1f, Z: %.1f", root.Position.X, root.Position.Y, root.Position.Z) end end end) -- Função para atualizar a lista visual de teleportes salvos local function atualizarLista() -- Limpa a lista visual antiga for _, child in pairs(ScrollFrame:GetChildren()) do if child:IsA("Frame") then child:Destroy() end end -- Recria os botões para cada teleporte salvo for name, cframe in pairs(saves) do local ItemFrame = Instance.new("Frame") local TpBtn = Instance.new("TextButton") local DelBtn = Instance.new("TextButton") ItemFrame.Size = UDim2.new(1, 0, 0, 30) ItemFrame.BackgroundColor3 = Color3.fromRGB(45, 45, 45) ItemFrame.Parent = ScrollFrame -- Botão de Teletransportar para o local Salvo TpBtn.Size = UDim2.new(0, 150, 1, 0) TpBtn.BackgroundColor3 = Color3.fromRGB(45, 45, 45) TpBtn.Text = " " .. name TpBtn.TextColor3 = Color3.fromRGB(255, 255, 255) TpBtn.TextXAlignment = Enum.TextXAlignment.Left TpBtn.Parent = ItemFrame TpBtn.MouseButton1Click:Connect(function() if Player.Character and Player.Character:FindFirstChild("HumanoidRootPart") then Player.Character.HumanoidRootPart.CFrame = cframe end end) -- Botão de Deletar um único item DelBtn.Size = UDim2.new(0, 30, 1, 0) DelBtn.Position = UDim2.new(1, -30, 0, 0) DelBtn.BackgroundColor3 = Color3.fromRGB(150, 40, 40) DelBtn.Text = "X" DelBtn.TextColor3 = Color3.fromRGB(255, 255, 255) DelBtn.Parent = ItemFrame DelBtn.MouseButton1Click:Connect(function() saves[name] = nil atualizarLista() end) end ScrollFrame.CanvasSize = UDim2.new(0, 0, 0, UIListLayout.AbsoluteContentSize.Y) end -- Evento do Botão de Teleporte para a Posição Atual (Reset/Forçar) TpCurrentBtn.MouseButton1Click:Connect(function() if checkpointCFrame and Player.Character and Player.Character:FindFirstChild("HumanoidRootPart") then Player.Character.HumanoidRootPart.CFrame = checkpointCFrame end end) -- Evento de Salvar SaveBtn.MouseButton1Click:Connect(function() local name = SaveInput.Text if name == "" then name = "Teleporte " .. math.random(1, 999) end if Player.Character and Player.Character:FindFirstChild("HumanoidRootPart") then saves[name] = Player.Character.HumanoidRootPart.CFrame SaveInput.Text = "" -- Limpa a caixa de texto atualizarLista() end end) -- Evento de Apagar Tudo ClearAllBtn.MouseButton1Click:Connect(function() saves = {} atualizarLista() end)