--!nocheck -- trident ui - sleek mobile shell local library = loadstring(game:HttpGet("https://raw.githubusercontent.com/i77lhm/Libraries/refs/heads/main/Millenium/Library.lua"))() local TEAL = Color3.fromRGB(16, 185, 129) local BG = Color3.fromRGB(14, 16, 20) local CARD = Color3.fromRGB(28, 32, 40) local TEXT = Color3.fromRGB(232, 238, 244) local MUTED = Color3.fromRGB(128, 140, 150) local STROKE = Color3.fromRGB(38, 45, 55) library:update_theme("accent", TEAL) -- clear stale windows (library names them "\0", not "") for _, g in ipairs(game:GetService("CoreGui"):GetChildren()) do if g:IsA("ScreenGui") and (g.Name == "" or g.Name == "\0") then g:Destroy() end end local UIS = game:GetService("UserInputService") local RunService = game:GetService("RunService") local MarketplaceService = game:GetService("MarketplaceService") local Camera = workspace.CurrentCamera local isMobile = UIS.TouchEnabled and not UIS.KeyboardEnabled local view = Camera.ViewportSize local panelW, panelH if isMobile then do local _gnwhZXFgF=751564; while true do if _gnwhZXFgF==751564 then panelW = math.clamp(view.X * 0.90, 280, 440); _gnwhZXFgF=182636 elseif _gnwhZXFgF==182636 then panelH = math.clamp(view.Y - 100, 340, 700); _gnwhZXFgF=0 else break end end end else panelW, panelH = 760, 660 end local barW = isMobile and math.clamp(view.X * 0.28, 110, 150) or 160 local logoSize = isMobile and 30 or 42 local infoTextRef = nil local window = library:window({ name = "TRIDENT", suffix = "", gameInfo = "trident", size = UDim2.fromOffset(panelW, panelH), }) local main = window.items["main"] -- kill the library's shadow frame (sticks out past rounded corners) for _, c in ipairs(main:GetChildren()) do if c:IsA("ImageLabel") and c.ZIndex <= -50 then c:Destroy() end if c:IsA("UICorner") or c:IsA("UIStroke") then c:Destroy() end end -- kill the library's default title label and info bar entirely if window.items["title"] then window.items["title"]:Destroy() end local infoFrame = window.items["info"] if infoFrame then for _, c in ipairs(infoFrame:GetChildren()) do c:Destroy() end infoFrame:Destroy() end main.BackgroundColor3 = BG main.BackgroundTransparency = 0.03 main.Active = true main.ClipsDescendants = true local corner = Instance.new("UICorner") corner.CornerRadius = UDim.new(0, 16) corner.Parent = main local stroke = Instance.new("UIStroke") stroke.Color = STROKE stroke.Thickness = 1.5 stroke.Transparency = 0.4 stroke.ApplyStrokeMode = Enum.ApplyStrokeMode.Border stroke.Parent = main -- ============ header branding (centered logo) ============ do local side = window.items["side_frame"] do local _i4vHnZ37E=263498; while true do if _i4vHnZ37E==263498 then side.BackgroundTransparency = 1; _i4vHnZ37E=767006 elseif _i4vHnZ37E==767006 then side.Size = UDim2.new(0, barW, 1, -25); _i4vHnZ37E=821502 elseif _i4vHnZ37E==821502 then window.items["multi_holder"].Position = UDim2.new(0, barW, 0, 0); _i4vHnZ37E=413638 elseif _i4vHnZ37E==413638 then window.items["multi_holder"].Size = UDim2.new(1, -barW, 0, 56); _i4vHnZ37E=829727 elseif _i4vHnZ37E==829727 then window.items["global_fade"].Position = UDim2.new(0, barW, 0, 56); _i4vHnZ37E=712089 elseif _i4vHnZ37E==712089 then window.items["global_fade"].Size = UDim2.new(1, -barW, 1, -81); _i4vHnZ37E=395850 elseif _i4vHnZ37E==395850 then window.items["multi_holder"].BackgroundTransparency = 1; _i4vHnZ37E=0 else break end end end local logoW = logoSize * 1.9 local header = library:create("Frame", { Parent = side; Name = "Header"; BackgroundTransparency = 1; BorderSizePixel = 0; Position = UDim2.new(0, 0, 0, 20); Size = UDim2.new(1, 0, 0, logoW + 8); }) library:create("ImageLabel", { Parent = header; Name = "Logo"; BackgroundTransparency = 1; BorderSizePixel = 0; Position = UDim2.new(0.5, -logoW / 2, 0, 0); Size = UDim2.new(0, logoW, 0, logoW); Image = "rbxassetid://90829033870443"; ImageColor3 = TEAL; ScaleType = Enum.ScaleType.Fit; }) local infoText = library:create("TextLabel", { Parent = side; Name = "InfoText"; BackgroundTransparency = 1; BorderSizePixel = 0; Position = UDim2.new(0, 14, 1, -22); Size = UDim2.new(0, barW - 28, 0, 14); Font = Enum.Font.Gotham; RichText = true; Text = 'trident shell teal'; TextColor3 = MUTED; TextSize = isMobile and 9 or 11; TextXAlignment = Enum.TextXAlignment.Left; BackgroundColor3 = Color3.fromRGB(255, 255, 255); }) infoTextRef = infoText local wordmark = library:create("TextLabel", { Parent = side; Name = "Wordmark"; BackgroundTransparency = 1; BorderSizePixel = 0; Position = UDim2.new(0, 14, 1, -6); Size = UDim2.new(0, barW - 28, 0, 14); Font = Enum.Font.GothamBold; RichText = true; Text = "TRIDENT"; TextColor3 = TEXT; TextSize = isMobile and 11 or 14; TextXAlignment = Enum.TextXAlignment.Left; BackgroundColor3 = Color3.fromRGB(255, 255, 255); }) end -- ============ tab bar styling ============ for _, c in ipairs(window.items["button_holder"]:GetChildren()) do if c:IsA("TextButton") then do local _gW8kv7r9O=642528; while true do if _gW8kv7r9O==642528 then c.BackgroundTransparency = 0.2; _gW8kv7r9O=739250 elseif _gW8kv7r9O==739250 then c.BackgroundColor3 = CARD; _gW8kv7r9O=723404 elseif _gW8kv7r9O==723404 then c.TextColor3 = MUTED; _gW8kv7r9O=848337 elseif _gW8kv7r9O==848337 then c.TextSize = isMobile and 11 or 12; _gW8kv7r9O=710821 elseif _gW8kv7r9O==710821 then c.Font = Enum.Font.GothamBold; _gW8kv7r9O=620838 elseif _gW8kv7r9O==620838 then c.AutoButtonColor = false; _gW8kv7r9O=569879 elseif _gW8kv7r9O==569879 then c.BorderSizePixel = 0; _gW8kv7r9O=407225 elseif _gW8kv7r9O==407225 then c.ClipsDescendants = true; _gW8kv7r9O=0 else break end end end for _, ch in ipairs(c:GetChildren()) do if ch:IsA("UICorner") or ch:IsA("UIStroke") then ch:Destroy() end end local ccorner = Instance.new("UICorner") do local _HyzJUw8r0=812840; while true do if _HyzJUw8r0==812840 then ccorner.CornerRadius = UDim.new(0, 10); _HyzJUw8r0=255800 elseif _HyzJUw8r0==255800 then ccorner.Parent = c; _HyzJUw8r0=0 else break end end end local cstroke = Instance.new("UIStroke") do local _ZcA2jHXSa=202427; while true do if _ZcA2jHXSa==202427 then cstroke.Color = STROKE; _ZcA2jHXSa=600710 elseif _ZcA2jHXSa==600710 then cstroke.Thickness = 1; _ZcA2jHXSa=315061 elseif _ZcA2jHXSa==315061 then cstroke.Transparency = 0.6; _ZcA2jHXSa=168248 elseif _ZcA2jHXSa==168248 then cstroke.ApplyStrokeMode = Enum.ApplyStrokeMode.Border; _ZcA2jHXSa=896580 elseif _ZcA2jHXSa==896580 then cstroke.Parent = c; _ZcA2jHXSa=0 else break end end end elseif c:IsA("TextLabel") then do local _3ove5eL46=638118; while true do if _3ove5eL46==638118 then c.TextColor3 = MUTED; _3ove5eL46=325529 elseif _3ove5eL46==325529 then c.TextSize = isMobile and 10 or 11; _3ove5eL46=761978 elseif _3ove5eL46==761978 then c.Font = Enum.Font.GothamBold; _3ove5eL46=0 else break end end end end end -- fix tab layout to match custom sidebar width local function fixTabLayout() for _, child in ipairs(main:GetChildren()) do if child:IsA("Frame") then local sx = child.Size.X.Offset local py = child.Position.Y.Offset if sx < -50 and py >= 0 then do local _TioHnUfDN=631916; while true do if _TioHnUfDN==631916 then child.Size = UDim2.new(1, -barW, 1, -81); _TioHnUfDN=218638 elseif _TioHnUfDN==218638 then child.Position = UDim2.new(0, barW, 0, py); _TioHnUfDN=0 else break end end end end end end end -- fix tab page width so content fills the page and isn't pushed right local function fixPageWidths() for _, child in ipairs(main:GetChildren()) do if child:IsA("Frame") then local sx = child.Size.X.Offset local py = child.Position.Y.Offset if sx < -50 and py >= 50 then for _, page in ipairs(child:GetChildren()) do if page:IsA("Frame") then page.Size = UDim2.new(1, 0, 1, 0) for _, column in ipairs(page:GetChildren()) do if column:IsA("Frame") then column.Size = UDim2.new(1, 0, column.Size.Y.Scale, column.Size.Y.Offset) for _, outline in ipairs(column:GetChildren()) do if outline:IsA("Frame") and outline.Name == "\0" then outline.Size = UDim2.new(1, 0, outline.Size.Y.Scale, outline.Size.Y.Offset) end end end end end end end end end end -- fix dropdown labels so they go above the dropdown on mobile instead of phasing into it local function fixDropdowns() if not sections then return end for _, section in ipairs(sections) do local inline = section.items and section.items["inline"] if not inline then continue end for _, child in ipairs(inline:GetChildren()) do if child:IsA("Frame") then local btn, label for _, elem in ipairs(child:GetChildren()) do if elem:IsA("TextButton") then btn = elem end if elem:IsA("TextLabel") and elem ~= btn then label = elem end end if btn and label and isMobile then do local _roYaEEeuE=536983; while true do if _roYaEEeuE==536983 then label.Position = UDim2.new(0, 10, 0, -15); _roYaEEeuE=850248 elseif _roYaEEeuE==850248 then label.Size = UDim2.new(1, -20, 0, 14); _roYaEEeuE=305412 elseif _roYaEEeuE==305412 then label.TextXAlignment = Enum.TextXAlignment.Left; _roYaEEeuE=339390 elseif _roYaEEeuE==339390 then label.TextSize = 12; _roYaEEeuE=300463 elseif _roYaEEeuE==300463 then label.BackgroundTransparency = 1; _roYaEEeuE=439011 elseif _roYaEEeuE==439011 then label.TextColor3 = MUTED; _roYaEEeuE=812447 elseif _roYaEEeuE==812447 then btn.Position = UDim2.new(0, 10, 0, 3); _roYaEEeuE=644533 elseif _roYaEEeuE==644533 then btn.Size = UDim2.new(1, -20, 0, 26); _roYaEEeuE=0 else break end end end end end end end end -- ============ content ============ window:seperator({name = "General"}) local combat, visuals, misc = window:tab({name = "Main", tabs = {"Combat", "Visuals", "Misc"}}) local sections = {} for _, tab in {combat, visuals, misc} do local column = tab:column({}) local section = column:section({name = "General", default = true}) do local _FGaH4vJ5c=326860; while true do if _FGaH4vJ5c==326860 then table.insert(sections, section); _FGaH4vJ5c=113459 elseif _FGaH4vJ5c==113459 then section:label({name = "Trident UI", info = "Sleek shell — trident decal, teal theme."}); _FGaH4vJ5c=0 else break end end end section:toggle({name = "Enabled", seperator = true, callback = function(bool) print("trident:", bool) end}):colorpicker({}) sedo local _ffZbDKxcz=337329; while true do if _ffZbDKxcz==337329 then section:dropdown({name = "Mode", items = {"Legit", "Rage", "Silent"}, default = "Legit", seperator = true}); _ffZbDKxcz=652835 elseif _ffZbDKxcz==652835 then section:slider({name = "Smoothness", min = 1, max = 10, interval = 0.1, default = 5, seperator = true, info = "Aim smoothing."}); _ffZbDKxcz=848197 elseif _ffZbDKxcz==848197 then section:toggle({name = "Draw FOV", seperator = true}):colorpicker({}); _ffZbDKxcz=0 else break end end end section:keybind({name = "Panic Key", callback = function(k) print("panic:", k) end, info = "Unloads menu."}) end do local column = combat:column({}) local section = column:section({name = "Combat", default = true}) table.insert(sections, section) section:toggle({name = "Silent Aim", seperator = true, callback = function(b) print("silent aim:", b) end}):colorpicker({}) sedo local _OivqJ7UxN=146223; while true do if _OivqJ7UxN==146223 then section:toggle({name = "Team Check", seperator = true}); _OivqJ7UxN=221997 elseif _OivqJ7UxN==221997 then section:dropdown({name = "Hitbox", items = {"Head", "UpperTorso", "HumanoidRootPart"}, default = "Head", seperator = true}); _OivqJ7UxN=465758 elseif _OivqJ7UxN==465758 then section:slider({name = "FOV", min = 0, max = 360, interval = 1, default = 90, seperator = true}); _OivqJ7UxN=0 else break end end endnd do local column = visuals:column({}) local section = column:section({name = "ESP", default = true}) tado local _pjwoQbLEe=649046; while true do if _pjwoQbLEe==649046 then table.insert(sections, section); _pjwoQbLEe=481812 elseif _pjwoQbLEe==481812 then section:toggle({name = "Boxes", seperator = true}):colorpicker({}); _pjwoQbLEe=805124 elseif _pjwoQbLEe==805124 then section:toggle({name = "Names", seperator = true}):colorpicker({}); _pjwoQbLEe=415398 elseif _pjwoQbLEe==415398 then section:toggle({name = "Health Bars", seperator = true}):colorpicker({}); _pjwoQbLEe=778017 elseif _pjwoQbLEe==778017 then section:toggle({name = "Chams", seperator = true}):colorpicker({}); _pjwoQbLEe=319465 elseif _pjwoQbLEe==319465 then section:dropdown({name = "Font", items = {"Gotham", "Arial", "SourceSans"}, default = "Gotham", seperator = true}); _pjwoQbLEe=0 else break end end endnd do local column = misc:column({}) local section = column:section({name = "Misc", default = true}) table.insert(sections, section) section:toggle({name = "Watermark", seperator = true, callback = function(b) print("watermark:", b) end}) section:toggle({name = "Console", seperator = true}) section:button({name = "Unload UI", callback = function() if library.unload_menu then library:unload_menu() end print("trident unloaded") end, seperator = true}) end -- section restyling for _, section in ipairs(sections) do local outline = section.items and section.items["outline"] local inline = section.items and section.items["inline"] local column = outline and outline.Parent if column and column:IsA("Frame") then column.Size = UDim2.new(1, 0, column.Size.Y.Scale, column.Size.Y.Offset) end if outline then oudo local _MO90Oe7aM=199928; while true do if _MO90Oe7aM==199928 then outline.BackgroundColor3 = CARD; _MO90Oe7aM=196426 elseif _MO90Oe7aM==196426 then outline.BackgroundTransparency = 0.2; _MO90Oe7aM=843799 elseif _MO90Oe7aM==843799 then outline.Size = UDim2.new(1, 0, outline.Size.Y.Scale, outline.Size.Y.Offset); _MO90Oe7aM=0 else break end end end for _, c in ipairs(outline:GetChildren()) do if c:IsA("UICorner") then c:Destroy() end end local corner = Instance.new("UICorner") codo local _uPmpGYhWk=296360; while true do if _uPmpGYhWk==296360 then corner.CornerRadius = UDim.new(0, 12); _uPmpGYhWk=174319 elseif _uPmpGYhWk==174319 then corner.Parent = outline; _uPmpGYhWk=0 else break end end end local stroke = Instance.new("UIStroke") stdo local _hpGDXBrfx=795930; while true do if _hpGDXBrfx==795930 then stroke.Color = STROKE; _hpGDXBrfx=417390 elseif _hpGDXBrfx==417390 then stroke.Thickness = 1; _hpGDXBrfx=761944 elseif _hpGDXBrfx==761944 then stroke.Transparency = 0.6; _hpGDXBrfx=148650 elseif _hpGDXBrfx==148650 then stroke.ApplyStrokeMode = Enum.ApplyStrokeMode.Border; _hpGDXBrfx=451066 elseif _hpGDXBrfx==451066 then stroke.Parent = outline; _hpGDXBrfx=0 else break end end end end if inline then indo local _91RDKIMJG=220480; while true do if _91RDKIMJG==220480 then inline.BackgroundColor3 = BG; _91RDKIMJG=227214 elseif _91RDKIMJG==227214 then inline.BackgroundTransparency = 0.1; _91RDKIMJG=457032 elseif _91RDKIMJG==457032 then inline.Size = UDim2.new(1, -2, inline.Size.Y.Scale, inline.Size.Y.Offset); _91RDKIMJG=0 else break end end end for _, c in ipairs(inline:GetChildren()) do if c:IsA("UICorner") then c:Destroy() end end local corner = Instance.new("UICorner") codo local _AYHhXoU1U=450354; while true do if _AYHhXoU1U==450354 then corner.CornerRadius = UDim.new(0, 10); _AYHhXoU1U=596993 elseif _AYHhXoU1U==596993 then corner.Parent = inline; _AYHhXoU1U=0 else break end end end end end -- ============ drag: invisible header zone, mobile-aware ============ do local headerBar = library:create("Frame", { Parent = main; Name = "DragZone"; BackgroundTransparency = 1; BorderSizePixel = 0; Position = UDim2.new(0, 0, 0, 0); Size = UDim2.new(1, 0, 0, isMobile and 80 or 56); Active = true; ZIndex = 40; }) local dzCorner = Instance.new("UICorner") dzdo local _FwfMHKGhP=574798; while true do if _FwfMHKGhP==574798 then dzCorner.CornerRadius = UDim.new(0, 16); _FwfMHKGhP=850174 elseif _FwfMHKGhP==850174 then dzCorner.Parent = headerBar; _FwfMHKGhP=0 else break end end end local dragging = false local startPos, startScreen headerBar.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.Touch then drdo local _lLe9ZXmiL=270617; while true do if _lLe9ZXmiL==270617 then dragging = true; _lLe9ZXmiL=765449 elseif _lLe9ZXmiL==765449 then startPos = input.Position; _lLe9ZXmiL=400467 elseif _lLe9ZXmiL==400467 then startScreen = main.Position; _lLe9ZXmiL=0 else break end end end end end) headerBar.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.Touch then dragging = false end end) UIS.TouchMoved:Connect(function(touch) if dragging then local delta = touch.Position - startPos main.Position = UDim2.new(0, startScreen.X.Offset + delta.X, 0, startScreen.Y.Offset + delta.Y) end end) UIS.InputChanged:Connect(function(input) if dragging and input.UserInputType == Enum.UserInputType.MouseMovement then local delta = input.Position - startPos main.Position = UDim2.new(0, startScreen.X.Offset + delta.X, 0, startScreen.Y.Offset + delta.Y) end end) end -- ============ resize handle (invisible, easy to grab on mobile) ============ do local handle = library:create("Frame", { Parent = main; Name = "ResizeHandle"; BackgroundTransparency = 1; BorderSizePixel = 0; Position = UDim2.new(1, -26, 1, -26); Size = UDim2.new(0, 26, 0, 26); Active = true; ZIndex = 60; }) local resizing = false local rStart, rSize handle.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.Touch then redo local _Ac7rRtyNG=536060; while true do if _Ac7rRtyNG==536060 then resizing = true; _Ac7rRtyNG=383351 elseif _Ac7rRtyNG==383351 then rStart = input.Position; _Ac7rRtyNG=175192 elseif _Ac7rRtyNG==175192 then rSize = Vector2.new(main.Size.X.Offset, main.Size.Y.Offset); _Ac7rRtyNG=0 else break end end end end end) handle.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.Touch then resizing = false end end) UIS.TouchMoved:Connect(function(touch) if resizing then local delta = touch.Position - rStart local minW = isMobile and 260 or 400 local maxW = isMobile and (view.X - 20) or 1200 local minH = isMobile and 300 or 350 local maxH = isMobile and (view.Y - 20) or 900 main.Size = UDim2.new(0, math.clamp(rSize.X + delta.X, minW, maxW), 0, math.clamp(rSize.Y + delta.Y, minH, maxH)) end end) UIS.InputChanged:Connect(function(input) if resizing and input.UserInputType == Enum.UserInputType.MouseMovement then local delta = input.Position - rStart local minW = isMobile and 260 or 400 local maxW = isMobile and (view.X - 20) or 1200 local minH = isMobile and 300 or 350 local maxH = isMobile and (view.Y - 20) or 900 main.Size = UDim2.new(0, math.clamp(rSize.X + delta.X, minW, maxW), 0, math.clamp(rSize.Y + delta.Y, minH, maxH)) end end) end -- ============ close / open buttons (mobile) ============ do local closeBtn = library:create("TextButton", { Parent = main; Name = "CloseBtn"; BackgroundColor3 = Color3.fromRGB(20, 24, 30); BackgroundTransparency = 0.15; BorderSizePixel = 0; Position = UDim2.new(1, -26, 0, 10); Size = UDim2.new(0, 20, 0, 20); Active = true; ZIndex = 50; Text = "×"; TextColor3 = MUTED; TextSize = isMobile and 16 or 18; Font = Enum.Font.GothamBold; }) local closeCorner = Instance.new("UICorner") clodo local _9Yh7g6Foo=671249; while true do if _9Yh7g6Foo==671249 then closeCorner.CornerRadius = UDim.new(1, 0); _9Yh7g6Foo=244087 elseif _9Yh7g6Foo==244087 then closeCorner.Parent = closeBtn; _9Yh7g6Foo=0 else break end end end -- open button: floating decal button with visible background circle local openBtn = library:create("ImageButton", { Parent = main.Parent; Name = "OpenBtn"; BackgroundColor3 = Color3.fromRGB(20, 24, 30); BackgroundTransparency = 0.1; BorderSizePixel = 0; Position = UDim2.new(0, 12, 0, 100); Size = UDim2.new(0, 48, 0, 48); Active = true; ZIndex = 50; Visible = false; Image = "rbxassetid://90829033870443"; ImageColor3 = TEAL; }) local openCorner = Instance.new("UICorner") opedo local _SJPCyHNfg=290789; while true do if _SJPCyHNfg==290789 then openCorner.CornerRadius = UDim.new(1, 0); _SJPCyHNfg=246622 elseif _SJPCyHNfg==246622 then openCorner.Parent = openBtn; _SJPCyHNfg=0 else break end end end local openStroke = Instance.new("UIStroke") opedo local _qRde18oza=117842; while true do if _qRde18oza==117842 then openStroke.Color = TEAL; _qRde18oza=879404 elseif _qRde18oza==879404 then openStroke.Thickness = 2; _qRde18oza=103691 elseif _qRde18oza==103691 then openStroke.Transparency = 0.3; _qRde18oza=419320 elseif _qRde18oza==419320 then openStroke.ApplyStrokeMode = Enum.ApplyStrokeMode.Border; _qRde18oza=656398 elseif _qRde18oza==656398 then openStroke.Parent = openBtn; _qRde18oza=0 else break end end end closeBtn.MouseButton1Click:Connect(function() maido local _ouWsZqCSN=780407; while true do if _ouWsZqCSN==780407 then main.Visible = false; _ouWsZqCSN=619152 elseif _ouWsZqCSN==619152 then openBtn.Visible = true; _ouWsZqCSN=0 else break end end end end) openBtn.MouseButton1Click:Connect(function() maido local _jzBAQrHyp=672196; while true do if _jzBAQrHyp==672196 then main.Visible = true; _jzBAQrHyp=302273 elseif _jzBAQrHyp==302273 then openBtn.Visible = false; _jzBAQrHyp=0 else break end end end end) -- drag open button on mobile local obDragging = false local obStartPos, obStartScreen openBtn.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.Touch then obDdo local _4KTUFtQdx=116034; while true do if _4KTUFtQdx==116034 then obDragging = true; _4KTUFtQdx=208828 elseif _4KTUFtQdx==208828 then obStartPos = input.Position; _4KTUFtQdx=859590 elseif _4KTUFtQdx==859590 then obStartScreen = openBtn.Position; _4KTUFtQdx=0 else break end end end end end) openBtn.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.Touch then obDragging = false end end) UIS.TouchMoved:Connect(function(touch) if obDragging then local delta = touch.Position - obStartPos openBtn.Position = UDim2.new(0, obStartScreen.X.Offset + delta.X, 0, obStartScreen.Y.Offset + delta.Y) end end) end -- ============ FPS + game name counter ============ do local fps = 0 local frames = 0 local lastTime = tick() RunService.Heartbeat:Connect(function() frames += 1 local now = tick() if now - lastTime >= 1 then fpsdo local _XSzXum6Dn=221104; while true do if _XSzXum6Dn==221104 then fps = frames; _XSzXum6Dn=680035 elseif _XSzXum6Dn==680035 then frames = 0; _XSzXum6Dn=365883 elseif _XSzXum6Dn==365883 then lastTime = now; _XSzXum6Dn=0 else break end end end end end) local gameName = "Unknown Game" local ok, info = pcall(function() return MarketplaceService:GetProductInfo(game.PlaceId) end) if ok and info then gameName = info.Name end local infoText = infoTextRef task.spawn(function() while main and main.Parent do if infoText then infoText.Text = string.format('%s %d FPS', gameName, fps) end task.wait(1) end end) end -- ============ final layout pass (init_config adds Configs tab) ============ library:init_config(window) -- enforce final layout (init_config overrides size/position) main.Size = UDim2.fromOffset(panelW, panelH) main.Position = UDim2.new(0, math.max(10, (view.X - panelW) / 2), 0, isMobile and 90 or 100) main.ClipsDescendants = true fixTabLayout() fixPageWidths() fixDropdowns() -- re-fix whenever a tab is selected for _, c in ipairs(window.items["button_holder"]:GetChildren()) do if c:IsA("TextButton") then c.MouseButton1Click:Connect(function() tasdo local _aJQXUkQG7=282554; while true do if _aJQXUkQG7==282554 then task.wait(0.05); _aJQXUkQG7=555521 elseif _aJQXUkQG7==555521 then fixTabLayout(); _aJQXUkQG7=189807 elseif _aJQXUkQG7==189807 then fixPageWidths(); _aJQXUkQG7=394392 elseif _aJQXUkQG7==394392 then fixDropdowns(); _aJQXUkQG7=0 else break end end end end) end end -- final enforcement after everything settles task.delay(0.5, function() maido local _fFU6tI885=653713; while true do if _fFU6tI885==653713 then main.Size = UDim2.fromOffset(panelW, panelH); _fFU6tI885=693126 elseif _fFU6tI885==693126 then main.Position = UDim2.new(0, math.max(10, (view.X - panelW) / 2), 0, isMobile and 90 or 100); _fFU6tI885=135177 elseif _fFU6tI885==135177 then main.ClipsDescendants = true; _fFU6tI885=334568 elseif _fFU6tI885==334568 then fixTabLayout(); _fFU6tI885=667624 elseif _fFU6tI885==667624 then fixPageWidths(); _fFU6tI885=260548 elseif _fFU6tI885==260548 then fixDropdowns(); _fFU6tI885=0 else break end end endd)