
Key Required

local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local UserInputService = game:GetService("UserInputService")
local player = Players.LocalPlayer
-- ===================== GUI =====================
local gui = Instance.new("ScreenGui")
gui.Name = "SaveTPGui"
gui.ResetOnSpawn = false -- NÃO some ao morrer
gui.IgnoreGuiInset = true
gui.Parent = player:WaitForChild("PlayerGui")
-- Painel principal
local main = Instance.new("Frame")
main.Size = UDim2.new(0,270,0,220)
main.Position = UDim2.new(0.5,-135,0.5,-110)
main.BackgroundColor3 = Color3.fromRGB(0,0,0)
main.Parent = gui
local mainCorner = Instance.new("UICorner")
mainCorner.CornerRadius = UDim.new(0,25)
mainCorner.Parent = main
local mainStroke = Instance.new("UIStroke")
mainStroke.Thickness = 2
mainStroke.Color = Color3.new(1,1,1)
mainStroke.Parent = main
-- ===================== BARRA SUPERIOR (ARRASTAR) =====================
local topBar = Instance.new("Frame")
topBar.Size = UDim2.new(1,0,0,45)
topBar.BackgroundColor3 = Color3.fromRGB(25,25,25)
topBar.Parent = main
local topCorner = Instance.new("UICorner")
topCorner.CornerRadius = UDim.new(0,25)
topCorner.Parent = topBar
-- ===================== TEXTO INFERIOR =====================
local credit = Instance.new("TextLabel")
credit.Size = UDim2.new(1,0,0,30)
credit.Position = UDim2.new(0,0,1,-30)
credit.BackgroundTransparency = 1
credit.Text = "YouTuber: LoginEditXZ"
credit.TextScaled = true
credit.TextColor3 = Color3.new(1,1,1)
credit.Parent = main
-- ===================== BOTÃO SALVAR =====================
local saveButton = Instance.new("TextButton")
saveButton.Size = UDim2.new(0,210,0,55)
saveButton.Position = UDim2.new(0.5,-105,0.4,-25)
saveButton.Text = "Salvar Posição"
saveButton.TextColor3 = Color3.new(1,1,1)
saveButton.Parent = main
local saveCorner = Instance.new("UICorner", saveButton)
saveCorner.CornerRadius = UDim.new(0,30)
local saveStroke = Instance.new("UIStroke", saveButton)
saveStroke.Thickness = 3
-- ===================== BOTÃO TP =====================
local tpButton = Instance.new("TextButton")
tpButton.Size = UDim2.new(0,210,0,55)
tpButton.Position = UDim2.new(0.5,-105,0.7,-25)
tpButton.Text = "TP"
tpButton.TextColor3 = Color3.new(1,1,1)
tpButton.Parent = main
local tpCorner = Instance.new("UICorner", tpButton)
tpCorner.CornerRadius = UDim.new(0,30)
local tpStroke = Instance.new("UIStroke", tpButton)
tpStroke.Thickness = 3
-- ===================== ARRASTAR SUAVE (CELULAR E PC) =====================
local dragging = false
local dragStart
local startPos
topBar.InputBegan:Connect(function(input)
if input.UserInputType == Enum.UserInputType.Touch
or input.UserInputType == Enum.UserInputType.MouseButton1 then
dragging = true
dragStart = input.Position
startPos = main.Position
end
end)
topBar.InputEnded:Connect(function(input)
if input.UserInputType == Enum.UserInputType.Touch
or input.UserInputType == Enum.UserInputType.MouseButton1 then
dragging = false
end
end)
UserInputService.InputChanged:Connect(function(input)
if dragging and (input.UserInputType == Enum.UserInputType.Touch
or input.UserInputType == Enum.UserInputType.MouseMovement) then
local delta = input.Position - dragStart
main.Position = UDim2.new(
startPos.X.Scale,
startPos.X.Offset + delta.X,
startPos.Y.Scale,
startPos.Y.Offset + delta.Y
)
end
end)
-- ===================== ARCO-ÍRIS =====================
local hue = 0
RunService.RenderStepped:Connect(function()
hue += 0.004
if hue > 1 then hue = 0 end
local color = Color3.fromHSV(hue,1,1)
saveButton.BackgroundColor3 = color
saveStroke.Color = color
tpButton.BackgroundColor3 = color
tpStroke.Color = color
end)
-- ===================== SISTEMA SALVAR + TP =====================
local savedPosition = nil
saveButton.MouseButton1Click:Connect(function()
local character = player.Character
if character and character:FindFirstChild("HumanoidRootPart") then
savedPosition = character.HumanoidRootPart.Position
saveButton.Text = "Salvo!"
task.wait(1)
saveButton.Text = "Salvar Posição"
end
end)
tpButton.MouseButton1Click:Connect(function()
local character = player.Character
if character and character:FindFirstChild("HumanoidRootPart") and savedPosition then
character:MoveTo(savedPosition)
end
end)No comments yet for this script.



