Professional Documents
Culture Documents
Message Translator
Made by Aim, updated by cli
Credits to Riptxde for the sending chathook
--]]
if res.Body:match('https://consent.google.com/s') then
print('consent')
googleConsent(res.Body)
res = syn.request({
Url = url,
Method = "GET",
Headers = {cookie="CONSENT=YES+"..googlev}
})
end
return res
end
local languages = {
auto = "Automatic",
af = "Afrikaans",
sq = "Albanian",
am = "Amharic",
ar = "Arabic",
hy = "Armenian",
az = "Azerbaijani",
eu = "Basque",
be = "Belarusian",
bn = "Bengali",
bs = "Bosnian",
bg = "Bulgarian",
ca = "Catalan",
ceb = "Cebuano",
ny = "Chichewa",
['zh-cn'] = "Chinese Simplified",
['zh-tw'] = "Chinese Traditional",
co = "Corsican",
hr = "Croatian",
cs = "Czech",
da = "Danish",
nl = "Dutch",
en = "English",
eo = "Esperanto",
et = "Estonian",
tl = "Filipino",
fi = "Finnish",
fr = "French",
fy = "Frisian",
gl = "Galician",
ka = "Georgian",
de = "German",
el = "Greek",
gu = "Gujarati",
ht = "Haitian Creole",
ha = "Hausa",
haw = "Hawaiian",
iw = "Hebrew",
hi = "Hindi",
hmn = "Hmong",
hu = "Hungarian",
is = "Icelandic",
ig = "Igbo",
id = "Indonesian",
ga = "Irish",
it = "Italian",
ja = "Japanese",
jw = "Javanese",
kn = "Kannada",
kk = "Kazakh",
km = "Khmer",
ko = "Korean",
ku = "Kurdish (Kurmanji)",
ky = "Kyrgyz",
lo = "Lao",
la = "Latin",
lv = "Latvian",
lt = "Lithuanian",
lb = "Luxembourgish",
mk = "Macedonian",
mg = "Malagasy",
ms = "Malay",
ml = "Malayalam",
mt = "Maltese",
mi = "Maori",
mr = "Marathi",
mn = "Mongolian",
my = "Myanmar (Burmese)",
ne = "Nepali",
no = "Norwegian",
ps = "Pashto",
fa = "Persian",
pl = "Polish",
pt = "Portuguese",
pa = "Punjabi",
ro = "Romanian",
ru = "Russian",
sm = "Samoan",
gd = "Scots Gaelic",
sr = "Serbian",
st = "Sesotho",
sn = "Shona",
sd = "Sindhi",
si = "Sinhala",
sk = "Slovak",
sl = "Slovenian",
so = "Somali",
es = "Spanish",
su = "Sundanese",
sw = "Swahili",
sv = "Swedish",
tg = "Tajik",
ta = "Tamil",
te = "Telugu",
th = "Thai",
tr = "Turkish",
uk = "Ukrainian",
ur = "Urdu",
uz = "Uzbek",
vi = "Vietnamese",
cy = "Welsh",
xh = "Xhosa",
yi = "Yiddish",
yo = "Yoruba",
zu = "Zulu"
};
function find(lang)
for i,v in pairs(languages) do
if i == lang or v == lang then
return i
end
end
end
function isSupported(lang)
local key = find(lang)
return key and true or false
end
function getISOCode(lang)
local key = find(lang)
return key
end
function stringifyQuery(dataFields)
local data = ""
for k, v in pairs(dataFields) do
if type(v) == "table" then
for _,v in pairs(v) do
data = data .. ("&%s=%s"):format(
game.HttpService:UrlEncode(k),
game.HttpService:UrlEncode(v)
)
end
else
data = data .. ("&%s=%s"):format(
game.HttpService:UrlEncode(k),
game.HttpService:UrlEncode(v)
)
end
end
data = data:sub(2)
return data
end
do -- init
print('initialize')
local InitialReq = got(rootURL)
fsid = InitialReq.Body:match('"FdrFJe":"(.-)"')
bl = InitialReq.Body:match('"cfb2h":"(.-)"')
end
local freq = {
{
{
rpcidsTranslate,
jsonE(data),
nil,
"generic"
}
}
}
result.from.language = translationData[3]
result.from.text = translationData[2][5][1]
return result
end
local properties = {
Color = Color3.new(1,1,0);
Font = Enum.Font.SourceSansItalic;
TextSize = 16;
}
game:GetService("StarterGui"):SetCore("SendNotification",
{
Title = "Chat Translator",
Text = "Ported to Google Translate",
Duration = 3
}
)
function translateFrom(message)
local translation = translate(message, YourLang)
local text
if translation.from.language ~= YourLang then
text = translation.text
end
return translation.text
end
function disableSend()
sendEnabled = false
properties.Text = "[TR] Sending Disabled"
StarterGui:SetCore("ChatMakeSystemMessage", properties)
end
MT.__namecall = newcclosure(function(...)
local Method, Args = getnamecallmethod(), {...}
if rawequal(tostring(Args[1]),'ChatBarFocusChanged') and rawequal(Args[2],true)
then
if LP['PlayerGui']:FindFirstChild('Chat') then
BindHook:Fire()
end
end
return NC(...)
end)
BindHook['Event']:Connect(function()
CBar =
LP['PlayerGui'].Chat['Frame'].ChatBarParentFrame['Frame'].BoxFrame['Frame'].ChatBar
HookChat(CBar)
end)