local Players = game:GetService("Players") local StarterGui = game:GetService("StarterGui") local player = Players.LocalPlayer -- Aviso inicial StarterGui:SetCore("SendNotification", { Title = "⚠️ AVISO"; Text = "Não compartilhe sua key. Ela pode não funcionar para outras pessoas."; Duration = 6; }) -- Variável para controlar keys usadas (local) local usedKeys = {} -- Criar GUI local screenGui = Instance.new("ScreenGui", player:WaitForChild("PlayerGui")) screenGui.Name = "KeySystemUI" local frame = Instance.new("Frame", screenGui) frame.Size = UDim2.new(0, 350, 0, 200) frame.Position = UDim2.new(0.5, -175, 0.5, -100) frame.BackgroundColor3 = Color3.fromRGB(20, 20, 20) frame.BorderSizePixel = 0 frame.Active = true frame.Draggable = true -- deixa a janela arrastável local title = Instance.new("TextLabel", frame) title.Size = UDim2.new(1, 0, 0, 40) title.Text = "JEFF Key System" title.BackgroundColor3 = Color3.fromRGB(30, 30, 30) title.TextColor3 = Color3.fromRGB(255, 255, 255) title.TextScaled = true title.Font = Enum.Font.GothamBold local textBox = Instance.new("TextBox", frame) textBox.Position = UDim2.new(0.1, 0, 0.35, 0) textBox.Size = UDim2.new(0.8, 0, 0, 40) textBox.PlaceholderText = "Digite sua key aqui..." textBox.Text = "" textBox.TextScaled = true textBox.BackgroundColor3 = Color3.fromRGB(35, 35, 35) textBox.TextColor3 = Color3.fromRGB(230, 230, 230) textBox.ClearTextOnFocus = false textBox.Font = Enum.Font.Gotham local getKeyButton = Instance.new("TextButton", frame) getKeyButton.Position = UDim2.new(0.1, 0, 0.65, 0) getKeyButton.Size = UDim2.new(0.35, 0, 0, 40) getKeyButton.Text = "Get Key" getKeyButton.TextScaled = true getKeyButton.BackgroundColor3 = Color3.fromRGB(60, 60, 60) getKeyButton.TextColor3 = Color3.fromRGB(255, 255, 255) getKeyButton.Font = Enum.Font.GothamSemibold getKeyButton.AutoButtonColor = false local verifyButton = Instance.new("TextButton", frame) verifyButton.Position = UDim2.new(0.55, 0, 0.65, 0) verifyButton.Size = UDim2.new(0.35, 0, 0, 40) verifyButton.Text = "Verificar" verifyButton.TextScaled = true verifyButton.BackgroundColor3 = Color3.fromRGB(40, 120, 40) verifyButton.TextColor3 = Color3.fromRGB(255, 255, 255) verifyButton.Font = Enum.Font.GothamSemibold verifyButton.AutoButtonColor = false local message = Instance.new("TextLabel", frame) message.Position = UDim2.new(0, 0, 0.85, 0) message.Size = UDim2.new(1, 0, 0.15, 0) message.Text = "" message.TextColor3 = Color3.fromRGB(255, 80, 80) message.BackgroundTransparency = 1 message.TextScaled = true message.Font = Enum.Font.GothamSemibold -- Função copiar link getKeyButton.MouseButton1Click:Connect(function() setclipboard("https://59397c25-5a9b-4dd1-862b-e7aa9bbeabd0-00-36f80sl0spb5h.kirk.replit.dev/") message.Text = "Link copiado! Cole no navegador para gerar sua key." end) -- Função para validar o formato da key local function isValidKeyFormat(key) return string.match(key, "^JEFF%-%w%w%w%w%-%w%w%w%w$") ~= nil end -- Função para enviar notificações local function notify(title, text, duration) StarterGui:SetCore("SendNotification", { Title = title; Text = text; Duration = duration or 5; }) end -- Verificar key verifyButton.MouseButton1Click:Connect(function() local inputKey = textBox.Text:upper() if not isValidKeyFormat(inputKey) then message.Text = "❌ Formato de key inválido." notify("Erro", "Formato da key inválido!", 4) return end if usedKeys[inputKey] then message.Text = "❌ Essa key já foi usada! Use outra." notify("Erro", "❌ Essa key é repetida. Use outra!", 5) return end -- Key válida e nunca usada antes usedKeys[inputKey] = true message.Text = "✅ Key correta! Você entrou na whitelist." notify("Sucesso", "✅ Key correta! Dando whitelist...", 5) wait(1) screenGui:Destroy() -- Aqui seu código liberado para quem tem a key válida -- loadstring("Your script Url")() end)