0% found this document useful (0 votes)
14 views5 pages

Text

The document is a Lua script for a Roblox game that defines a core functionality for a user interface and chat system. It includes methods for sending messages in various formats, managing user settings, and handling UI interactions. The script also incorporates language support and allows for experimentation with different message formats based on user-defined options.

Uploaded by

snowedits883
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
14 views5 pages

Text

The document is a Lua script for a Roblox game that defines a core functionality for a user interface and chat system. It includes methods for sending messages in various formats, managing user settings, and handling UI interactions. The script also incorporates language support and allows for experimentation with different message formats based on user-defined options.

Uploaded by

snowedits883
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 5

-- ══════════════════════════════════════

-- Core
-- ══════════════════════════════════════
local Find = function(Table) for _, Item in pairs(Table or {}) do if typeof(Item)
== "table" then return Item end; end; end
local Options = Find(({...})) or {
Keybind = "Home",

Language = {
UI = "pt-br",
Words = "pt-br"
},

Experiments = { },

Tempo = 0.6,
Rainbow = false,
}

local Version = "2.1"


local Parent = gethui() or game:GetService("CoreGui");
local require = function(Name)
return
loadstring(game:HttpGet(string.format("https://raw.githubusercontent.com/Zv-yz/
AutoJJs/main/%s.lua", Name)))()
end

-- ══════════════════════════════════════
-- Services
-- ══════════════════════════════════════
local TweenService = game:GetService("TweenService")
local Players = game:GetService("Players")
local LP = Players.LocalPlayer

-- ══════════════════════════════════════
-- Modules
-- ══════════════════════════════════════
local UI = require("UI")

local Extenso = require("Modules/Extenso")


local Character = require("Modules/Character")
local RemoteChat = require("Modules/RemoteChat")
local Request = require("Modules/Request")

-- ══════════════════════════════════════
-- Constants
-- ══════════════════════════════════════
local Char = Character.new(LP)
local UIElements = UI.UIElements;
local Connections = {};

local Threading;
local FinishedThread = false;
local Toggled = false;

local Settings = {
Keybind = Options.Keybind or "Home",

Started = false,
Jump = false,

Config = {
Start = nil,
End = nil,
Prefix = nil,
}
}

-- ══════════════════════════════════════
-- Methods
-- ══════════════════════════════════════

local Methods = {
["Normal"] = function(Message: string, Prefix: string)
if Settings["Jump"] then
Char:Jump()
end

RemoteChat:Send(string.format("%s%s", Message, Prefix))


end,

["Lowercase"] = function(Message: string, Prefix: string)


if Settings["Jump"] then
Char:Jump()
end

RemoteChat:Send(string.format("%s%s", string.lower(Message), Prefix))


end,

["GJ"] = function(Message: string, Prefix: string)


if Settings["Jump"] then
Char:Jump()
end

RemoteChat:Send(string.format("%s%s", string.sub(Message, 1, 1) ..
string.lower(string.sub(Message, 2)), Prefix))
end,

["HJ"] = function(Message: string, Prefix: string)


for I = 1, #Message do
if Settings["Jump"] then
Char:Jump()
end

RemoteChat:Send(string.format("%s%s", string.sub(Message, I, I),


Prefix))
task.wait(Options.Tempo)
end

if Settings["Jump"] then
Char:Jump()
end

RemoteChat:Send(string.format("%s%s", Message, Prefix))


end,
}

-- ══════════════════════════════════════
-- Functions
-- ══════════════════════════════════════

local function Listen(Name, Element)


if Element:GetAttribute("IntBox") then
table.insert(Connections,
Element:GetPropertyChangedSignal("Text"):Connect(function()
Element.Text = string.gsub(Element.Text, "[^%d]", "")
end))
end

table.insert(Connections, Element.FocusLost:Connect(function()
local CurrentText = Element.Text
if not CurrentText or string.match(CurrentText, "^%s*$") then return end
Settings.Config[Name] = Element.Text
end))
end

local function EndThread(Success)


if Threading then
if not FinishedThread then
task.cancel(Threading)
end

Threading = nil
FinishedThread = false
Settings["Started"] = false
end
end

local function DoJJ(Name: string, Number: number, Prefix: string)


local Success: boolean, String: string? = Extenso:Convert(Number)
local Prefix = Prefix and Prefix or ""

local Method: (String: string, Prefix: string) -> ()? = Methods[Name]

if Success then
Method(String, Prefix)
end
end

local function StartThread()


local Config = Settings.Config;

if not Config["Start"] or not Config["End"] then return end


if Threading then EndThread(false) return end

local Method =
table.find(Options.Experiments, "hell_jacks_2024_02-dev") and "HJ" or
table.find(Options.Experiments, "lowercase_jjs_2024_12") and "Lowercase" or
table.find(Options.Experiments, "grammar_jacks_2025_06") and "GJ" or
"Normal"

Threading = task.spawn(function()
for Amount = Config.Start, Config.End do
DoJJ(Method, Amount, Config["Prefix"])

if Amount ~= tonumber(Config.End) then


task.wait(Options.Tempo)
end
end

FinishedThread = true
EndThread(true)
end)
end

local function GetLanguage(Lang: string)


local Success, Result = pcall(function()
return require(string.format("I18N/%s", Lang))
end)

if Success then
return Result
end

return {}
end

local function MigrateSettings()


local Lang = Options["Language"];
local Experiments = Options["Experiments"];

if not Experiments then


Options["Experiments"] = {};
end

if typeof(Lang) == "string" then


Options["Language"] = { UI = Lang, Words = Lang };
end
end

MigrateSettings()

-- ══════════════════════════════════════
-- Main
-- ══════════════════════════════════════
local UILang, WordsLang = GetLanguage(Options.Language.UI),
GetLanguage(Options.Language.Words)

UI:SetVersion(Version)
UI:SetLanguage(UILang.UI)
UI:SetRainbow(Options.Rainbow)
UI:SetParent(Parent)

Extenso:SetLang(WordsLang)

for Name, Element in pairs(UIElements["Box"]) do


task.spawn(Listen, Name, Element)
end

table.insert(Connections, UIElements["Circle"].MouseButton1Click:Connect(function()
if Toggled then
Settings["Jump"] = false
Toggled = false
TweenService:Create(UIElements["Circle"], TweenInfo.new(0.3,
Enum.EasingStyle.Quad, Enum.EasingDirection.Out), { Position = UDim2.new(0.22, 0,
0.5, 0) }):Play()
TweenService:Create(UIElements["Slide"], TweenInfo.new(0.3),
{ BackgroundColor3 = Color3.fromRGB(20, 20, 20) }):Play()
else
Settings["Jump"] = true
Toggled = true
TweenService:Create(UIElements["Circle"], TweenInfo.new(0.3,
Enum.EasingStyle.Quad, Enum.EasingDirection.Out), { Position = UDim2.new(0.772, 0,
0.5, 0) }):Play()
TweenService:Create(UIElements["Slide"], TweenInfo.new(0.3),
{ BackgroundColor3 = Color3.fromRGB(37, 150, 255) }):Play()
end
end))

table.insert(Connections, UIElements["Play"].MouseButton1Up:Connect(function()
if not Settings.Config["Start"] or not Settings.Config["End"] then return end
if not Settings["Started"] then
Settings["Started"] = true
StartThread()
else
Settings["Started"] = false
EndThread(false)
end
end))

Request:Post("https://scripts-zvyz.glitch.me/api/count")

You might also like