-- Auto JJS de EB até 5000 | Script por ChatGPT ----------------------------- -- Função para converter número em extenso (até 5000) ----------------------------- local function numeroPorExtenso(n) local unidades = { "zero","um","dois","três","quatro","cinco","seis","sete","oito","nove" } local especiais = { [10]="dez",[11]="onze",[12]="doze",[13]="treze",[14]="quatorze", [15]="quinze",[16]="dezesseis",[17]="dezessete",[18]="dezoito",[19]="dezenove" } local dezenas = { [2]="vinte",[3]="trinta",[4]="quarenta",[5]="cinquenta", [6]="sessenta",[7]="setenta",[8]="oitenta",[9]="noventa" } local centenas = { [1]="cem",[2]="duzentos",[3]="trezentos",[4]="quatrocentos", [5]="quinhentos",[6]="seiscentos",[7]="setecentos", [8]="oitocentos",[9]="novecentos" } local texto if n < 10 then texto = unidades[n+1] elseif n < 20 then texto = especiais[n] elseif n < 100 then local d, u = math.floor(n/10), n%10 if u == 0 then texto = dezenas[d] else texto = dezenas[d].." e "..unidades[u+1] end elseif n < 1000 then local c, resto = math.floor(n/100), n%100 if n == 100 then return "CEM" end if resto == 0 then texto = centenas[c] else texto = (c==1 and "cento" or centenas[c]).." e "..numeroPorExtenso(resto) end elseif n <= 5000 then local milhar, resto = math.floor(n/1000), n%1000 local prefixo = (milhar==1) and "mil" or (unidades[milhar+1].." mil") if resto == 0 then texto = prefixo else texto = prefixo.." e "..numeroPorExtenso(resto) end else texto = tostring(n) end return texto:upper() end ----------------------------- -- Função para enviar mensagens ----------------------------- local function enviarMensagem(msg) local ReplicatedStorage = game:GetService("ReplicatedStorage") -- Chat V1 local chatEvent = ReplicatedStorage:FindFirstChild("DefaultChatSystemChatEvents") if chatEvent and chatEvent:FindFirstChild("SayMessageRequest") then chatEvent.SayMessageRequest:FireServer(msg, "All") return end -- Chat V2 local TextChatService = game:GetService("TextChatService") if TextChatService.ChatInputBarConfiguration then TextChatService.ChatInputBarConfiguration.TargetTextChannel:SendAsync(msg) return end warn("⚠ Não foi possível enviar mensagem (chat não encontrado).") end ----------------------------- -- GUI ----------------------------- local ScreenGui = Instance.new("ScreenGui") local MainFrame = Instance.new("Frame") local UICorner = Instance.new("UICorner") local StartBox = Instance.new("TextBox") local EndBox = Instance.new("TextBox") local SufixoBox = Instance.new("TextBox") local SpeedBox = Instance.new("TextBox") local StartButton = Instance.new("TextButton") local StopButton = Instance.new("TextButton") -- Labels local StartLabel = Instance.new("TextLabel") local EndLabel = Instance.new("TextLabel") local SpeedLabel = Instance.new("TextLabel") local SufixoLabel = Instance.new("TextLabel") -- Botão fechar (X) local CloseButton = Instance.new("TextButton") -- Botão pequeno para reabrir local ReOpenButton = Instance.new("TextButton") ScreenGui.Parent = game:GetService("CoreGui") ScreenGui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling MainFrame.Parent = ScreenGui MainFrame.BackgroundColor3 = Color3.fromRGB(30, 30, 30) MainFrame.Position = UDim2.new(0.35, 0, 0.3, 0) MainFrame.Size = UDim2.new(0, 220, 0, 320) MainFrame.Visible = true UICorner.Parent = MainFrame -- Ativar drag MainFrame.Active = true MainFrame.Draggable = true -- Número inicial StartLabel.Parent = MainFrame StartLabel.Text = "Número inicial" StartLabel.BackgroundTransparency = 1 StartLabel.TextColor3 = Color3.fromRGB(255,255,255) StartLabel.Position = UDim2.new(0.1,0,0.05,0) StartLabel.Size = UDim2.new(0,180,0,18) StartBox.Parent = MainFrame StartBox.PlaceholderText = "Ex: 0" StartBox.BackgroundColor3 = Color3.fromRGB(50, 50, 50) StartBox.TextColor3 = Color3.fromRGB(255, 255, 255) StartBox.Text = "" StartBox.Position = UDim2.new(0.1, 0, 0.12, 0) StartBox.Size = UDim2.new(0, 180, 0, 22) -- Número final EndLabel.Parent = MainFrame EndLabel.Text = "Número final" EndLabel.BackgroundTransparency = 1 EndLabel.TextColor3 = Color3.fromRGB(255,255,255) EndLabel.Position = UDim2.new(0.1,0,0.22,0) EndLabel.Size = UDim2.new(0,180,0,18) EndBox.Parent = MainFrame EndBox.PlaceholderText = "Ex: 5000" EndBox.BackgroundColor3 = Color3.fromRGB(50, 50, 50) EndBox.TextColor3 = Color3.fromRGB(255, 255, 255) EndBox.Text = "" EndBox.Position = UDim2.new(0.1, 0, 0.29, 0) EndBox.Size = UDim2.new(0, 180, 0, 22) -- Velocidade SpeedLabel.Parent = MainFrame SpeedLabel.Text = "Velocidade da mensagem" SpeedLabel.BackgroundTransparency = 1 SpeedLabel.TextColor3 = Color3.fromRGB(255,255,255) SpeedLabel.Position = UDim2.new(0.1,0,0.39,0) SpeedLabel.Size = UDim2.new(0,180,0,18) SpeedBox.Parent = MainFrame SpeedBox.PlaceholderText = "Ex: 1 (segundos)" SpeedBox.BackgroundColor3 = Color3.fromRGB(50, 50, 50) SpeedBox.TextColor3 = Color3.fromRGB(255, 255, 255) SpeedBox.Text = "" SpeedBox.Position = UDim2.new(0.1, 0, 0.46, 0) SpeedBox.Size = UDim2.new(0, 180, 0, 22) -- Sufixo SufixoLabel.Parent = MainFrame SufixoLabel.Text = "Sufixo" SufixoLabel.BackgroundTransparency = 1 SufixoLabel.TextColor3 = Color3.fromRGB(255,255,255) SufixoLabel.Position = UDim2.new(0.1,0,0.56,0) SufixoLabel.Size = UDim2.new(0,180,0,18) SufixoBox.Parent = MainFrame SufixoBox.PlaceholderText = "Ex: !" SufixoBox.BackgroundColor3 = Color3.fromRGB(50, 50, 50) SufixoBox.TextColor3 = Color3.fromRGB(255, 255, 255) SufixoBox.Text = "" SufixoBox.Position = UDim2.new(0.1, 0, 0.63, 0) SufixoBox.Size = UDim2.new(0, 180, 0, 22) -- Botão iniciar StartButton.Parent = MainFrame StartButton.Text = "Iniciar Auto JJS" StartButton.BackgroundColor3 = Color3.fromRGB(70, 130, 180) StartButton.TextColor3 = Color3.fromRGB(255, 255, 255) StartButton.Position = UDim2.new(0.1, 0, 0.75, 0) StartButton.Size = UDim2.new(0, 180, 0, 28) -- Botão parar StopButton.Parent = MainFrame StopButton.Text = "Parar" StopButton.BackgroundColor3 = Color3.fromRGB(200, 50, 50) StopButton.TextColor3 = Color3.fromRGB(255, 255, 255) StopButton.Position = UDim2.new(0.1, 0, 0.85, 0) StopButton.Size = UDim2.new(0, 180, 0, 28) -- Botão fechar (X) CloseButton.Parent = MainFrame CloseButton.Text = "X" CloseButton.BackgroundColor3 = Color3.fromRGB(200, 50, 50) CloseButton.TextColor3 = Color3.fromRGB(255, 255, 255) CloseButton.Size = UDim2.new(0, 30, 0, 30) CloseButton.Position = UDim2.new(1, -35, 0, 5) -- Botão pequeno JJS (verde embaixo do Roblox) ReOpenButton.Parent = ScreenGui ReOpenButton.Text = "JJS" ReOpenButton.BackgroundColor3 = Color3.fromRGB(0, 200, 0) -- Verde ReOpenButton.TextColor3 = Color3.fromRGB(255, 255, 255) ReOpenButton.Size = UDim2.new(0, 50, 0, 30) ReOpenButton.Position = UDim2.new(0, 10, 0, 70) -- Debaixo do Roblox ReOpenButton.Visible = true -- Fechar GUI CloseButton.MouseButton1Click:Connect(function() MainFrame.Visible = false end) -- Reabrir GUI ReOpenButton.MouseButton1Click:Connect(function() MainFrame.Visible = not MainFrame.Visible end) ----------------------------- -- Função de Auto JJS ----------------------------- local rodando = false StartButton.MouseButton1Click:Connect(function() if rodando then return end rodando = true local inicio = tonumber(StartBox.Text) or 0 local fim = tonumber(EndBox.Text) or 0 if fim > 5000 then fim = 5000 end local delayTime = tonumber(SpeedBox.Text) or 1 local sufixo = (SufixoBox.Text or ""):upper() for i = inicio, fim do if not rodando then break end local msg = numeroPorExtenso(i).." "..sufixo enviarMensagem(msg) task.wait(delayTime) end rodando = false end) StopButton.MouseButton1Click:Connect(function() rodando = false end)