JJ HUB
Key RequiredUniversal

JJ HUB

Universal Scriptavenzoantiv2avenzoantiv2 4K views 653 executesUpdated Nov 6, 2025
Unrated
00
Lua Script•256 lines (8080 chars)
-- 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)

Features & Information

Ji

Community Comments (0)

No comments yet for this script.

More Scripts for Universal Scripts