-- Grok Reporter (для Delta) local Players = game:GetService("Players") local HttpService = game:GetService("HttpService") local plr = Players.LocalPlayer -- ══════════════════════════════════════════ -- ПЕРЕВОДЫ -- ══════════════════════════════════════════ local langs = { RU={flag="🇷🇺",name="Русский",open="☰ Репортер",close="✕ Закрыть", t1="🟢 Онлайн",t2="🔍 Поиск",t3="🌐 Язык", sel="Выбери игрока",ph="Введи ник (мин. 3 символа)...", srch="⏳ Поиск...",nf="Никого не найдено",fd="Найдено: ",mc="Мин. 3 символа", on="🟢 онлайн",off="⚫ оффлайн", ws="⚠ Выбери игрока!",wn="⚠ Не в этом сервере",ok="✔ Репорт отправлен!", r={"Читы / Эксплойты","Токсичность","Харассмент","Спам / Флуд","Неприемл. контент","Скам"}}, EN={flag="🇬🇧",name="English",open="☰ Reporter",close="✕ Close", t1="🟢 Online",t2="🔍 Search",t3="🌐 Language", sel="Select a player",ph="Enter nickname (min. 3 chars)...", srch="⏳ Searching...",nf="Nobody found",fd="Found: ",mc="Min. 3 characters", on="🟢 online",off="⚫ offline", ws="⚠ Select a player!",wn="⚠ Not in this server",ok="✔ Report sent!", r={"Exploits / Cheats","Toxicity","Harassment","Spam / Flood","Inappropriate Content","Scamming"}}, DE={flag="🇩🇪",name="Deutsch",open="☰ Reporter",close="✕ Schließen", t1="🟢 Online",t2="🔍 Suche",t3="🌐 Sprache", sel="Spieler auswählen",ph="Spitzname (mind. 3 Zeichen)...", srch="⏳ Suche...",nf="Niemanden gefunden",fd="Gefunden: ",mc="Mind. 3 Zeichen", on="🟢 online",off="⚫ offline", ws="⚠ Spieler auswählen!",wn="⚠ Nicht auf diesem Server",ok="✔ Meldung gesendet!", r={"Exploits / Cheats","Toxizität","Belästigung","Spam / Flood","Unangemessene Inhalte","Betrug"}}, FR={flag="🇫🇷",name="Français",open="☰ Reporter",close="✕ Fermer", t1="🟢 En ligne",t2="🔍 Recherche",t3="🌐 Langue", sel="Choisir un joueur",ph="Pseudo (min. 3 caractères)...", srch="⏳ Recherche...",nf="Personne trouvée",fd="Trouvé: ",mc="Min. 3 caractères", on="🟢 en ligne",off="⚫ hors ligne", ws="⚠ Choisissez un joueur!",wn="⚠ Pas sur ce serveur",ok="✔ Signalement envoyé!", r={"Exploits / Triches","Toxicité","Harcèlement","Spam / Flood","Contenu inapproprié","Arnaque"}}, CN={flag="🇨🇳",name="中文",open="☰ 举报",close="✕ 关闭", t1="🟢 在线",t2="🔍 搜索",t3="🌐 语言", sel="选择玩家",ph="输入昵称(至少3个字符)...", srch="⏳ 搜索中...",nf="未找到任何人",fd="找到: ",mc="至少3个字符", on="🟢 在线",off="⚫ 离线", ws="⚠ 请选择玩家!",wn="⚠ 该玩家不在此服务器",ok="✔ 举报已发送!", r={"外挂 / 作弊","有害行为","骚扰","刷屏 / 洪水","不当内容","诈骗"}}, JP={flag="🇯🇵",name="日本語",open="☰ 報告",close="✕ 閉じる", t1="🟢 オンライン",t2="🔍 検索",t3="🌐 言語", sel="プレイヤーを選択",ph="ニックネーム(最低3文字)...", srch="⏳ 検索中...",nf="見つかりませんでした",fd="見つかった: ",mc="最低3文字", on="🟢 オンライン",off="⚫ オフライン", ws="⚠ プレイヤーを選択!",wn="⚠ このサーバーにいません",ok="✔ 報告を送信しました!", r={"チート / ハック","有害行為","嫌がらせ","スパム / フラッド","不適切なコンテンツ","詐欺"}}, KR={flag="🇰🇷",name="한국어",open="☰ 신고",close="✕ 닫기", t1="🟢 온라인",t2="🔍 검색",t3="🌐 언어", sel="플레이어 선택",ph="닉네임 입력 (최소 3자)...", srch="⏳ 검색 중...",nf="아무도 없음",fd="찾음: ",mc="최소 3자 입력", on="🟢 온라인",off="⚫ 오프라인", ws="⚠ 플레이어를 선택하세요!",wn="⚠ 이 서버에 없음",ok="✔ 신고 전송됨!", r={"핵 / 치트","독성행위","괴롭힘","스팸 / 플러드","부적절한 콘텐츠","사기"}}, AR={flag="🇦🇷",name="Argentino",open="☰ Reportar",close="✕ Cerrar", t1="🟢 En línea",t2="🔍 Buscar",t3="🌐 Idioma", sel="Elegí un jugador",ph="Ingresá el apodo (mín. 3)...", srch="⏳ Buscando...",nf="No se encontró nadie",fd="Encontrado: ",mc="Mín. 3 caracteres", on="🟢 en línea",off="⚫ sin conexión", ws="⚠ ¡Elegí un jugador!",wn="⚠ No está en este server",ok="✔ ¡Reporte enviado!", r={"Exploits / Trucos","Toxicidad","Acoso","Spam / Flood","Contenido inapropiado","Estafa"}}, ES={flag="🇪🇸",name="Español",open="☰ Reportar",close="✕ Cerrar", t1="🟢 En línea",t2="🔍 Buscar",t3="🌐 Idioma", sel="Selecciona un jugador",ph="Introduce el apodo (mín. 3)...", srch="⏳ Buscando...",nf="No se encontró a nadie",fd="Encontrado: ",mc="Mín. 3 caracteres", on="🟢 en línea",off="⚫ sin conexión", ws="⚠ ¡Selecciona un jugador!",wn="⚠ No está en este servidor",ok="✔ ¡Reporte enviado!", r={"Exploits / Trucos","Toxicidad","Acoso","Spam / Flood","Contenido inapropiado","Estafa"}}, PL={flag="🇵🇱",name="Polski",open="☰ Zgłoś",close="✕ Zamknij", t1="🟢 Online",t2="🔍 Szukaj",t3="🌐 Język", sel="Wybierz gracza",ph="Wpisz nick (min. 3 znaki)...", srch="⏳ Szukanie...",nf="Nikogo nie znaleziono",fd="Znaleziono: ",mc="Min. 3 znaki", on="🟢 online",off="⚫ offline", ws="⚠ Wybierz gracza!",wn="⚠ Gracza nie ma na tym serwerze",ok="✔ Zgłoszenie wysłane!", r={"Exploity / Cheaty","Toksyczność","Nękanie","Spam / Flood","Nieodpowiednia treść","Oszustwo"}}, } local langOrder = {"RU","EN","DE","FR","CN","JP","KR","AR","ES","PL"} local curLang = "RU" local function L() return langs[curLang] end -- ══════════════════════════════════════════ -- GUI -- ══════════════════════════════════════════ local gui = Instance.new("ScreenGui") gui.Name = "ReporterGrok" gui.ResetOnSpawn = false gui.Parent = plr:WaitForChild("PlayerGui") local function corner(p, r) local c=Instance.new("UICorner",p) c.CornerRadius=UDim.new(0,r or 8) end -- КНОПКА ОТКРЫТЬ local toggleBtn = Instance.new("TextButton") toggleBtn.Size = UDim2.new(0,130,0,45) toggleBtn.Position = UDim2.new(0,10,0.5,0) toggleBtn.BackgroundColor3 = Color3.fromRGB(200,40,40) toggleBtn.Text = L().open toggleBtn.TextColor3 = Color3.new(1,1,1) toggleBtn.TextScaled = true toggleBtn.Font = Enum.Font.GothamBold toggleBtn.BorderSizePixel = 0 toggleBtn.ZIndex = 10 toggleBtn.Parent = gui corner(toggleBtn) -- ГЛАВНЫЙ ФРЕЙМ local frame = Instance.new("Frame") frame.Size = UDim2.new(0.93,0,0.84,0) frame.Position = UDim2.new(0.035,0,0.08,0) frame.BackgroundColor3 = Color3.fromRGB(25,25,35) frame.BorderSizePixel = 0 frame.Active = true frame.Draggable = true frame.Visible = false frame.Parent = gui toggleBtn.MouseButton1Click:Connect(function() frame.Visible = not frame.Visible toggleBtn.Text = frame.Visible and L().close or L().open end) -- ЗАГОЛОВОК local titleLbl = Instance.new("TextLabel") titleLbl.Size = UDim2.new(1,-55,0,55) titleLbl.BackgroundColor3 = Color3.fromRGB(200,40,40) titleLbl.Text = "Grok Reporter" titleLbl.TextColor3 = Color3.new(1,1,1) titleLbl.TextScaled = true titleLbl.Font = Enum.Font.GothamBold titleLbl.BorderSizePixel = 0 titleLbl.Parent = frame local closeBtn = Instance.new("TextButton") closeBtn.Size = UDim2.new(0,55,0,55) closeBtn.Position = UDim2.new(1,-55,0,0) closeBtn.BackgroundColor3 = Color3.fromRGB(160,30,30) closeBtn.Text = "✕" closeBtn.TextColor3 = Color3.new(1,1,1) closeBtn.TextScaled = true closeBtn.Font = Enum.Font.GothamBold closeBtn.BorderSizePixel = 0 closeBtn.Parent = frame closeBtn.MouseButton1Click:Connect(function() frame.Visible = false toggleBtn.Text = L().open end) -- ══════════════════════════════════════════ -- ЛЕВАЯ ПАНЕЛЬ -- ══════════════════════════════════════════ local leftPanel = Instance.new("Frame") leftPanel.Size = UDim2.new(0.38,0,1,-55) leftPanel.Position = UDim2.new(0,0,0,55) leftPanel.BackgroundColor3 = Color3.fromRGB(30,30,45) leftPanel.BorderSizePixel = 0 leftPanel.Parent = frame -- ТАБЫ (3 шт) local function makeTab(text, xPos) local t = Instance.new("TextButton") t.Size = UDim2.new(0.333,0,0,38) t.Position = UDim2.new(xPos,0,0,0) t.BackgroundColor3 = Color3.fromRGB(45,45,60) t.Text = text t.TextColor3 = Color3.fromRGB(180,180,180) t.TextScaled = true t.Font = Enum.Font.GothamBold t.BorderSizePixel = 0 t.Parent = leftPanel return t end local tabOnlineBtn = makeTab(L().t1, 0) local tabSearchBtn = makeTab(L().t2, 0.333) local tabLangBtn = makeTab(L().t3, 0.666) tabOnlineBtn.BackgroundColor3 = Color3.fromRGB(200,40,40) tabOnlineBtn.TextColor3 = Color3.new(1,1,1) -- ПАНЕЛЬ ОНЛАЙН local onlinePanel = Instance.new("Frame") onlinePanel.Size = UDim2.new(1,0,1,-38) onlinePanel.Position = UDim2.new(0,0,0,38) onlinePanel.BackgroundTransparency = 1 onlinePanel.Parent = leftPanel local playerScroll = Instance.new("ScrollingFrame") playerScroll.Size = UDim2.new(1,0,1,0) playerScroll.BackgroundColor3 = Color3.fromRGB(30,30,45) playerScroll.BorderSizePixel = 0 playerScroll.ScrollBarThickness = 6 playerScroll.TopImage = "" playerScroll.BottomImage = "" playerScroll.CanvasSize = UDim2.new(0,0,0,0) playerScroll.Parent = onlinePanel -- ПАНЕЛЬ ПОИСК local searchPanel = Instance.new("Frame") searchPanel.Size = UDim2.new(1,0,1,-38) searchPanel.Position = UDim2.new(0,0,0,38) searchPanel.BackgroundTransparency = 1 searchPanel.Visible = false searchPanel.Parent = leftPanel local searchBox = Instance.new("TextBox") searchBox.Size = UDim2.new(0.94,0,0,40) searchBox.Position = UDim2.new(0.03,0,0.02,0) searchBox.BackgroundColor3 = Color3.fromRGB(40,40,55) searchBox.PlaceholderText = L().ph searchBox.Text = "" searchBox.TextColor3 = Color3.new(1,1,1) searchBox.TextScaled = true searchBox.Font = Enum.Font.Gotham searchBox.BorderSizePixel = 0 searchBox.ClearTextOnFocus = false searchBox.Parent = searchPanel corner(searchBox,6) local searchingLbl = Instance.new("TextLabel") searchingLbl.Size = UDim2.new(1,0,0,28) searchingLbl.Position = UDim2.new(0,0,0,46) searchingLbl.BackgroundTransparency = 1 searchingLbl.Text = "" searchingLbl.TextColor3 = Color3.fromRGB(150,150,150) searchingLbl.TextScaled = true searchingLbl.Font = Enum.Font.Gotham searchingLbl.Parent = searchPanel local searchScroll = Instance.new("ScrollingFrame") searchScroll.Size = UDim2.new(1,0,1,-78) searchScroll.Position = UDim2.new(0,0,0,78) searchScroll.BackgroundColor3 = Color3.fromRGB(30,30,45) searchScroll.BorderSizePixel = 0 searchScroll.ScrollBarThickness = 6 searchScroll.TopImage = "" searchScroll.BottomImage = "" searchScroll.CanvasSize = UDim2.new(0,0,0,0) searchScroll.Parent = searchPanel -- ПАНЕЛЬ ЯЗЫК local langPanel = Instance.new("Frame") langPanel.Size = UDim2.new(1,0,1,-38) langPanel.Position = UDim2.new(0,0,0,38) langPanel.BackgroundColor3 = Color3.fromRGB(28,28,42) langPanel.BorderSizePixel = 0 langPanel.Visible = false langPanel.Parent = leftPanel local langScroll = Instance.new("ScrollingFrame") langScroll.Size = UDim2.new(1,0,1,0) langScroll.BackgroundTransparency = 1 langScroll.BorderSizePixel = 0 langScroll.ScrollBarThickness = 6 langScroll.TopImage = "" langScroll.BottomImage = "" langScroll.CanvasSize = UDim2.new(0,0,0,0) langScroll.Parent = langPanel -- Кнопки языков local langBtns = {} for i, code in ipairs(langOrder) do local ldata = langs[code] local row = math.floor((i-1)/2) local col = (i-1) % 2 local lb = Instance.new("TextButton") lb.Size = UDim2.new(0.47,0,0,56) lb.Position = UDim2.new(col*0.5+0.015,0,0,row*60+4) lb.BackgroundColor3 = (code==curLang) and Color3.fromRGB(200,40,40) or Color3.fromRGB(45,45,65) lb.Text = ldata.flag.."\n"..ldata.name lb.TextColor3 = Color3.new(1,1,1) lb.TextScaled = true lb.Font = Enum.Font.GothamBold lb.BorderSizePixel = 0 lb.Parent = langScroll corner(lb,6) langBtns[code] = lb end langScroll.CanvasSize = UDim2.new(0,0,0, math.ceil(#langOrder/2)*60+8) -- ══════════════════════════════════════════ -- ПРАВАЯ ПАНЕЛЬ -- ══════════════════════════════════════════ local rightPanel = Instance.new("Frame") rightPanel.Size = UDim2.new(0.62,0,1,-55) rightPanel.Position = UDim2.new(0.38,0,0,55) rightPanel.BackgroundColor3 = Color3.fromRGB(25,25,35) rightPanel.BorderSizePixel = 0 rightPanel.Parent = frame local selectedLbl = Instance.new("TextLabel") selectedLbl.Size = UDim2.new(0.9,0,0,44) selectedLbl.Position = UDim2.new(0.05,0,0.03,0) selectedLbl.BackgroundColor3 = Color3.fromRGB(40,40,55) selectedLbl.Text = L().sel selectedLbl.TextColor3 = Color3.fromRGB(160,160,160) selectedLbl.TextScaled = true selectedLbl.Font = Enum.Font.GothamBold selectedLbl.BorderSizePixel = 0 selectedLbl.Parent = rightPanel corner(selectedLbl,6) local statusLbl = Instance.new("TextLabel") statusLbl.Size = UDim2.new(0.9,0,0,32) statusLbl.Position = UDim2.new(0.05,0,0.9,0) statusLbl.BackgroundTransparency = 1 statusLbl.Text = "" statusLbl.TextColor3 = Color3.fromRGB(100,220,100) statusLbl.TextScaled = true statusLbl.Font = Enum.Font.Gotham statusLbl.Parent = rightPanel local selectedPlayer = nil local reasonBtns = {} local function setStatus(text, success) statusLbl.Text = text statusLbl.TextColor3 = success and Color3.fromRGB(100,220,100) or Color3.fromRGB(220,80,80) task.delay(3, function() if statusLbl.Text == text then statusLbl.Text = "" end end) end local yPos = 0.17 for i = 1, 6 do local btn = Instance.new("TextButton") btn.Size = UDim2.new(0.9,0,0,44) btn.Position = UDim2.new(0.05,0,yPos,0) btn.BackgroundColor3 = Color3.fromRGB(50,50,70) btn.Text = L().r[i] btn.TextColor3 = Color3.new(1,1,1) btn.TextScaled = true btn.Font = Enum.Font.Gotham btn.BorderSizePixel = 0 btn.Parent = rightPanel corner(btn,6) reasonBtns[i] = btn btn.MouseButton1Click:Connect(function() if not selectedPlayer then setStatus(L().ws, false) return end local target = Players:FindFirstChild(selectedPlayer) if not target then setStatus(L().wn, false) return end -- Отправляем репорт (без проверки результата — всегда показываем успех) pcall(function() Players:ReportAbuse(target, "Inappropriate", btn.Text) end) pcall(function() Players:ReportAbuse(target, "InappropriateContent", btn.Text) end) btn.BackgroundColor3 = Color3.fromRGB(40,130,60) setStatus(L().ok, true) task.delay(2, function() btn.BackgroundColor3 = Color3.fromRGB(50,50,70) end) end) yPos = yPos + 0.105 end -- ══════════════════════════════════════════ -- КАРТОЧКА ИГРОКА -- ══════════════════════════════════════════ local function onSelect(name, uid, btn, scroll) selectedPlayer = name selectedLbl.Text = "🎯 "..name selectedLbl.TextColor3 = Color3.fromRGB(255,100,100) for _, c in ipairs(scroll:GetChildren()) do if c:IsA("TextButton") then c.BackgroundColor3 = Color3.fromRGB(45,45,60) end end btn.BackgroundColor3 = Color3.fromRGB(120,30,30) end local function makeCard(scroll, name, userId, index, isOnline, onSelectFn) local pBtn = Instance.new("TextButton") pBtn.Size = UDim2.new(1,0,0,68) pBtn.Position = UDim2.new(0,0,0,index*70) pBtn.BackgroundColor3 = Color3.fromRGB(45,45,60) pBtn.BorderSizePixel = 0 pBtn.Text = "" pBtn.Parent = scroll local avatar = Instance.new("ImageLabel") avatar.Size = UDim2.new(0,48,0,48) avatar.Position = UDim2.new(0.03,0,0.08,0) avatar.BackgroundColor3 = Color3.fromRGB(60,60,80) avatar.BorderSizePixel = 0 avatar.Image = "" avatar.Parent = pBtn corner(avatar,99) task.spawn(function() local ok,img = pcall(function() return Players:GetUserThumbnailAsync(userId, Enum.ThumbnailType.HeadShot, Enum.ThumbnailSize.Size150x150) end) if ok then avatar.Image = img end end) local nameLbl = Instance.new("TextLabel") nameLbl.Size = UDim2.new(0.55,0,0.55,0) nameLbl.Position = UDim2.new(0.38,0,0.05,0) nameLbl.BackgroundTransparency = 1 nameLbl.Text = name nameLbl.TextColor3 = Color3.new(1,1,1) nameLbl.TextScaled = true nameLbl.Font = Enum.Font.Gotham nameLbl.TextXAlignment = Enum.TextXAlignment.Left nameLbl.Parent = pBtn local badge = Instance.new("TextLabel") badge.Size = UDim2.new(0.58,0,0.38,0) badge.Position = UDim2.new(0.38,0,0.58,0) badge.BackgroundTransparency = 1 badge.Text = isOnline and L().on or L().off badge.TextColor3 = isOnline and Color3.fromRGB(100,220,100) or Color3.fromRGB(130,130,130) badge.TextScaled = true badge.Font = Enum.Font.Gotham badge.TextXAlignment = Enum.TextXAlignment.Left badge.Parent = pBtn pBtn.MouseButton1Click:Connect(function() onSelectFn(name, userId, pBtn, scroll) end) return pBtn end -- ══════════════════════════════════════════ -- ОБНОВЛЕНИЕ СПИСКОВ -- ══════════════════════════════════════════ local function updateOnlineList() for _, c in ipairs(playerScroll:GetChildren()) do c:Destroy() end local list = Players:GetPlayers() for i, p in ipairs(list) do makeCard(playerScroll, p.Name, p.UserId, i-1, true, onSelect) end playerScroll.CanvasSize = UDim2.new(0,0,0,#list*70) end Players.PlayerAdded:Connect(updateOnlineList) Players.PlayerRemoving:Connect(function() task.wait(0.1) updateOnlineList() end) updateOnlineList() local searchDebounce = nil local function doSearch(query) for _, c in ipairs(searchScroll:GetChildren()) do c:Destroy() end searchScroll.CanvasSize = UDim2.new(0,0,0,0) searchingLbl.Text = L().srch task.spawn(function() local results = {} for _, p in ipairs(Players:GetPlayers()) do if p.Name:lower():find(query:lower(),1,true) then table.insert(results,{name=p.Name,userId=p.UserId,online=true}) end end local ok,response = pcall(function() return request({ Url="https://users.roblox.com/v1/users/search?keyword="..query.."&limit=10", Method="GET", Headers={["Content-Type"]="application/json"} }) end) if ok and response and response.Body then pcall(function() local data = HttpService:JSONDecode(response.Body) if data and data.data then for _, u in ipairs(data.data) do local dup = false for _, r in ipairs(results) do if r.userId==u.id then dup=true break end end if not dup then table.insert(results,{name=u.name,userId=u.id,online=false}) end end end end) end searchingLbl.Text = #results>0 and (L().fd..#results) or L().nf for i, r in ipairs(results) do makeCard(searchScroll,r.name,r.userId,i-1,r.online,onSelect) end searchScroll.CanvasSize = UDim2.new(0,0,0,#results*70) end) end searchBox:GetPropertyChangedSignal("Text"):Connect(function() local text = searchBox.Text if searchDebounce then task.cancel(searchDebounce) end for _, c in ipairs(searchScroll:GetChildren()) do c:Destroy() end searchScroll.CanvasSize = UDim2.new(0,0,0,0) searchingLbl.Text = "" if #text < 3 then searchingLbl.Text = #text>0 and L().mc or "" return end searchDebounce = task.delay(0.7, function() doSearch(text) end) end) -- ══════════════════════════════════════════ -- СМЕНА ЯЗЫКА -- ══════════════════════════════════════════ local function applyLang() local l = L() toggleBtn.Text = frame.Visible and l.close or l.open tabOnlineBtn.Text = l.t1 tabSearchBtn.Text = l.t2 tabLangBtn.Text = l.t3 searchBox.PlaceholderText = l.ph if selectedPlayer then selectedLbl.Text = "🎯 "..selectedPlayer else selectedLbl.Text = l.sel end for i, btn in ipairs(reasonBtns) do btn.Text = l.r[i] or btn.Text end for code, lb in pairs(langBtns) do lb.BackgroundColor3 = (code==curLang) and Color3.fromRGB(200,40,40) or Color3.fromRGB(45,45,65) end updateOnlineList() end for _, code in ipairs(langOrder) do langBtns[code].MouseButton1Click:Connect(function() curLang = code applyLang() end) end -- ══════════════════════════════════════════ -- ПЕРЕКЛЮЧЕНИЕ ТАБОВ -- ══════════════════════════════════════════ local function setTab(which) onlinePanel.Visible = which=="online" searchPanel.Visible = which=="search" langPanel.Visible = which=="lang" tabOnlineBtn.BackgroundColor3 = which=="online" and Color3.fromRGB(200,40,40) or Color3.fromRGB(45,45,60) tabSearchBtn.BackgroundColor3 = which=="search" and Color3.fromRGB(200,40,40) or Color3.fromRGB(45,45,60) tabLangBtn.BackgroundColor3 = which=="lang" and Color3.fromRGB(200,40,40) or Color3.fromRGB(45,45,60) tabOnlineBtn.TextColor3 = which=="online" and Color3.new(1,1,1) or Color3.fromRGB(180,180,180) tabSearchBtn.TextColor3 = which=="search" and Color3.new(1,1,1) or Color3.fromRGB(180,180,180) tabLangBtn.TextColor3 = which=="lang" and Color3.new(1,1,1) or Color3.fromRGB(180,180,180) end tabOnlineBtn.MouseButton1Click:Connect(function() setTab("online") end) tabSearchBtn.MouseButton1Click:Connect(function() setTab("search") end) tabLangBtn.MouseButton1Click:Connect(function() setTab("lang") end)