From 67286bfe1a90c4a85bbed4683147232e0b5ebbbb Mon Sep 17 00:00:00 2001 From: redstonestudios Date: Thu, 5 Feb 2026 20:52:16 +0000 Subject: [PATCH] Auto-deploy: Update bundled Lua script --- main.luau | 730 +++++++++++++++++++++++++++--------------------------- 1 file changed, 365 insertions(+), 365 deletions(-) diff --git a/main.luau b/main.luau index 4bd73fd..bb89ec1 100644 --- a/main.luau +++ b/main.luau @@ -1039,79 +1039,78 @@ GetCustomIcon(aV)or ac do aX=ag('TextButton',{BackgroundColor3='MainColor',Backg ,40),Text='',Parent=aO})local a2=ag('UIPadding',{PaddingBottom=UDim.new(0,aC and 6 or 11),PaddingLeft=UDim.new(0,aC and 6 or 12),PaddingRight=UDim.new(0,aC and 6 or 12),PaddingTop=UDim.new(0,aC and 6 or 11),Parent=aX})aY=ag('TextLabel',{ BackgroundTransparency=1,Position=UDim2.fromOffset(30,0),Size=UDim2.new(1,-30,1,0),Text=aU,TextSize=16,TextTransparency= -0.5,TextXAlignment=Enum.TextXAlignment.Left,Visible=not aC,Parent=aX})local a3=ag('TextLabel',{BackgroundTransparency=1, -Position=UDim2.fromOffset(6,9),Size=UDim2.fromOffset(22,22),Text=aU:sub(1,1):upper(),TextSize=14,TextXAlignment=Enum. -TextXAlignment.Center,TextYAlignment=Enum.TextYAlignment.Center,TextColor3='FontColor',Visible=C.ForceTextIcons or(aV -and aV.Url==ac.Url),Parent=aX})if aV then aZ=ag('ImageLabel',{Image=aV.Url,ImageColor3=aV.Custom and'WhiteColor'or -'AccentColor',ImageRectOffset=aV.ImageRectOffset,ImageRectSize=aV.ImageRectSize,ImageTransparency=0.5,ScaleType=Enum. -ScaleType.Fit,Size=UDim2.fromScale(1,1),SizeConstraint=aC and Enum.SizeConstraint.RelativeXY or Enum.SizeConstraint. -RelativeYY,Parent=aX})if C.ForceTextIcons then aZ.ImageTransparency=0.85 end end table.insert(C.TabButtons,{Label=aY, -Padding=a2,Icon=aZ})a_=ag('Frame',{BackgroundTransparency=1,Size=UDim2.fromScale(1,1),Visible=false,Parent=aP})a0=ag( -'ScrollingFrame',{AutomaticCanvasSize=Enum.AutomaticSize.Y,BackgroundTransparency=1,CanvasSize=UDim2.fromScale(0,0), -ScrollBarImageTransparency=1,ScrollBarThickness=0,Size=UDim2.new(0.5,-3,1,0),Parent=a_})ag('UIListLayout',{Padding=UDim. -new(0,2),Parent=a0})ag('UIPadding',{PaddingBottom=UDim.new(0,2),PaddingLeft=UDim.new(0,2),PaddingRight=UDim.new(0,2), -PaddingTop=UDim.new(0,2),Parent=a0})do ag('Frame',{BackgroundTransparency=1,LayoutOrder=-1,Parent=a0})ag('Frame',{ -BackgroundTransparency=1,LayoutOrder=1,Parent=a0})end a1=ag('ScrollingFrame',{AnchorPoint=Vector2.new(1,0), -AutomaticCanvasSize=Enum.AutomaticSize.Y,BackgroundTransparency=1,CanvasSize=UDim2.fromScale(0,0),Position=UDim2. -fromScale(1,0),ScrollBarImageTransparency=1,ScrollBarThickness=0,Size=UDim2.new(0.5,-3,1,0),Parent=a_})ag('UIListLayout' -,{Padding=UDim.new(0,2),Parent=a1})ag('UIPadding',{PaddingBottom=UDim.new(0,2),PaddingLeft=UDim.new(0,2),PaddingRight= -UDim.new(0,2),PaddingTop=UDim.new(0,2),Parent=a1})do ag('Frame',{BackgroundTransparency=1,LayoutOrder=-1,Parent=a1})ag( -'Frame',{BackgroundTransparency=1,LayoutOrder=1,Parent=a1})end end local a2,a3,a4,a5,a6,a7,a8,a9=(ag('Frame',{ -AutomaticSize=Enum.AutomaticSize.Y,BackgroundTransparency=1,Position=UDim2.fromOffset(0,7),Size=UDim2.fromScale(1,0), -Visible=false,Parent=a_}))do a3=ag('Frame',{BackgroundColor3='BackgroundColor',Position=UDim2.fromOffset(2,0),Size=UDim2 -.new(1,-5,0,0),Parent=a2})ag('UICorner',{CornerRadius=UDim.new(0,aw.CornerRadius),Parent=a3})a4,a5=C:AddOutline(a3)a6= -ag('ScrollingFrame',{BackgroundTransparency=1,BorderSizePixel=0,Size=UDim2.fromScale(1,1),CanvasSize=UDim2.new(0,0,0,0), -ScrollBarThickness=3,ScrollingDirection=Enum.ScrollingDirection.Y,Parent=a3})ag('UIPadding',{PaddingBottom=UDim.new(0,4) -,PaddingLeft=UDim.new(0,6),PaddingRight=UDim.new(0,6),PaddingTop=UDim.new(0,4),Parent=a6})a7=ag('TextLabel',{ -BackgroundTransparency=1,Size=UDim2.new(1,-4,0,14),Text='',TextColor3=Color3.fromRGB(255,50,50),TextSize=14, -TextXAlignment=Enum.TextXAlignment.Left,Parent=a6})a8=ag('UIStroke',{ApplyStrokeMode=Enum.ApplyStrokeMode.Contextual, -Color=Color3.fromRGB(169,0,0),LineJoinMode=Enum.LineJoinMode.Miter,Parent=a7})a9=ag('TextLabel',{BackgroundTransparency= -1,Position=UDim2.fromOffset(0,16),Size=UDim2.new(1,-4,0,0),Text='',TextSize=14,TextWrapped=true,Parent=a6,TextXAlignment -=Enum.TextXAlignment.Left,TextYAlignment=Enum.TextYAlignment.Top})ag('UIStroke',{ApplyStrokeMode=Enum.ApplyStrokeMode. -Contextual,Color='DarkColor',LineJoinMode=Enum.LineJoinMode.Miter,Parent=a9})end local ba={Groupboxes={},Tabboxes={}, -DependencyGroupboxes={},Sides={a0,a1},WarningBox={IsNormal=false,LockSize=false,Visible=false,Title='WARNING',Text=''}} -function ba.UpdateWarningBox(bb,bc)if typeof(bc.IsNormal)=='boolean'then ba.WarningBox.IsNormal=bc.IsNormal end if -typeof(bc.LockSize)=='boolean'then ba.WarningBox.LockSize=bc.LockSize end if typeof(bc.Visible)=='boolean'then ba. -WarningBox.Visible=bc.Visible end if typeof(bc.Title)=='string'then ba.WarningBox.Title=bc.Title end if typeof(bc.Text) -=='string'then ba.WarningBox.Text=bc.Text end a2.Visible=ba.WarningBox.Visible a7.Text=ba.WarningBox.Title a9.Text=ba. -WarningBox.Text ba:Resize(true)a3.BackgroundColor3=ba.WarningBox.IsNormal==true and C.Scheme.BackgroundColor or Color3. -fromRGB(127,0,0)a5.Color=ba.WarningBox.IsNormal==true and C.Scheme.DarkColor or Color3.fromRGB(85,0,0)a4.Color=ba. -WarningBox.IsNormal==true and C.Scheme.OutlineColor or Color3.fromRGB(255,50,50)a7.TextColor3=ba.WarningBox.IsNormal== -true and C.Scheme.FontColor or Color3.fromRGB(255,50,50)a8.Color=ba.WarningBox.IsNormal==true and C.Scheme.OutlineColor -or Color3.fromRGB(169,0,0)if not C.Registry[a3]then C:AddToRegistry(a3,{})end if not C.Registry[a5]then C:AddToRegistry( -a5,{})end if not C.Registry[a4]then C:AddToRegistry(a4,{})end if not C.Registry[a7]then C:AddToRegistry(a7,{})end if not -C.Registry[a8]then C:AddToRegistry(a8,{})end C.Registry[a3].BackgroundColor3=function()return ba.WarningBox.IsNormal== -true and C.Scheme.BackgroundColor or Color3.fromRGB(127,0,0)end C.Registry[a5].Color=function()return ba.WarningBox. -IsNormal==true and C.Scheme.DarkColor or Color3.fromRGB(85,0,0)end C.Registry[a4].Color=function()return ba.WarningBox. -IsNormal==true and C.Scheme.OutlineColor or Color3.fromRGB(255,50,50)end C.Registry[a7].TextColor3=function()return ba. -WarningBox.IsNormal==true and C.Scheme.FontColor or Color3.fromRGB(255,50,50)end C.Registry[a8].Color=function()return -ba.WarningBox.IsNormal==true and C.Scheme.OutlineColor or Color3.fromRGB(169,0,0)end end function ba.RefreshSides(bb) -local bc=a2.Visible and a3.Size.Y.Offset+8 or 0 for bd,be in ba.Sides do be.Position=UDim2.new(be.Position.X.Scale,0,0, -bc)be.Size=UDim2.new(0.5,-3,1,-bc)end end function ba.Resize(bb,bc:boolean?)if bc then local bd,be,bf=math.floor(a_. -AbsoluteSize.Y/3.25),C:GetTextBounds(a9.Text,C.Scheme.Font,a9.TextSize,a9.AbsoluteSize.X)local bg=24+bf if ba.WarningBox -.LockSize==true and bg>=bd then a6.CanvasSize=UDim2.fromOffset(0,bg)bg=bd else a6.CanvasSize=UDim2.fromOffset(0,0)end a9 -.Size=UDim2.new(1,-4,0,bf)a3.Size=UDim2.new(1,-5,0,bg+4)end ba:RefreshSides()end function ba.AddGroupbox(bb,bc)local bd= -ag('Frame',{AutomaticSize=Enum.AutomaticSize.Y,BackgroundTransparency=1,Size=UDim2.fromScale(1,0),Parent=bc.Side==1 and -a0 or a1})ag('UIListLayout',{Padding=UDim.new(0,6),Parent=bd})ag('UIPadding',{PaddingBottom=UDim.new(0,4),PaddingTop= -UDim.new(0,4),Parent=bd})local be,bf,bg,bh do be=ag('Frame',{BackgroundColor3='BackgroundColor',Size=UDim2.fromScale(1,0 -),Parent=bd})ag('UICorner',{CornerRadius=UDim.new(0,aw.CornerRadius),Parent=be})C:AddOutline(be)C:MakeLine(be,{Position= -UDim2.fromOffset(0,34),Size=UDim2.new(1,0,0,1)})local bi=C:GetCustomIcon(bc.IconName)or(bc.IconName and ac or nil)if bi -then ag('ImageLabel',{Image=bi.Url,ImageColor3=bi.Custom and'WhiteColor'or'AccentColor',ImageRectOffset=bi. -ImageRectOffset,ImageRectSize=bi.ImageRectSize,Position=UDim2.fromOffset(6,6),Size=UDim2.fromOffset(22,22),Parent=be}) -end bf=ag('TextLabel',{BackgroundTransparency=1,Position=UDim2.fromOffset(bi and 24 or 0,0),Size=UDim2.new(1,0,0,34), -Text=bc.Name,TextSize=15,TextXAlignment=Enum.TextXAlignment.Left,Parent=be})ag('UIPadding',{PaddingLeft=UDim.new(0,12), -PaddingRight=UDim.new(0,12),Parent=bf})bg=ag('Frame',{BackgroundTransparency=1,Position=UDim2.fromOffset(0,35),Size= -UDim2.new(1,0,1,-35),Parent=be})bh=ag('UIListLayout',{Padding=UDim.new(0,8),Parent=bg})ag('UIPadding',{PaddingBottom= -UDim.new(0,7),PaddingLeft=UDim.new(0,7),PaddingRight=UDim.new(0,7),PaddingTop=UDim.new(0,7),Parent=bg})end local bi={ -BoxHolder=bd,Holder=be,Container=bg,Tab=ba,DependencyBoxes={},Elements={}}function bi.Resize(bj)be.Size=UDim2.new(1,0,0, -(bh.AbsoluteContentSize.Y/C.DPIScale)+49)end setmetatable(bi,au)bi:Resize()ba.Groupboxes[bc.Name]=bi return bi end -function ba.AddLeftGroupbox(bb,bc,bd)return ba:AddGroupbox{Side=1,Name=bc,IconName=bd}end function ba.AddRightGroupbox( -bb,bc,bd)return ba:AddGroupbox{Side=2,Name=bc,IconName=bd}end function ba.AddTabbox(bb,bc)local bd=ag('Frame',{ +0.5,TextXAlignment=Enum.TextXAlignment.Left,Visible=not aC,Parent=aX})if C.ForceTextIcons then aY.Text=string.format( +'[%s] %s',aU:sub(1,1):upper(),aU)aY.Position=UDim2.fromOffset(12,0)aY.Size=UDim2.new(1,-12,1,0)end if aV then aZ=ag( +'ImageLabel',{Image=aV.Url,ImageColor3=aV.Custom and'WhiteColor'or'AccentColor',ImageRectOffset=aV.ImageRectOffset, +ImageRectSize=aV.ImageRectSize,ImageTransparency=0.5,ScaleType=Enum.ScaleType.Fit,Size=UDim2.fromScale(1,1), +SizeConstraint=aC and Enum.SizeConstraint.RelativeXY or Enum.SizeConstraint.RelativeYY,Parent=aX})if C.ForceTextIcons +then aZ.ImageTransparency=0.85 end end table.insert(C.TabButtons,{Label=aY,Padding=a2,Icon=aZ})a_=ag('Frame',{ +BackgroundTransparency=1,Size=UDim2.fromScale(1,1),Visible=false,Parent=aP})a0=ag('ScrollingFrame',{AutomaticCanvasSize= +Enum.AutomaticSize.Y,BackgroundTransparency=1,CanvasSize=UDim2.fromScale(0,0),ScrollBarImageTransparency=1, +ScrollBarThickness=0,Size=UDim2.new(0.5,-3,1,0),Parent=a_})ag('UIListLayout',{Padding=UDim.new(0,2),Parent=a0})ag( +'UIPadding',{PaddingBottom=UDim.new(0,2),PaddingLeft=UDim.new(0,2),PaddingRight=UDim.new(0,2),PaddingTop=UDim.new(0,2), +Parent=a0})do ag('Frame',{BackgroundTransparency=1,LayoutOrder=-1,Parent=a0})ag('Frame',{BackgroundTransparency=1, +LayoutOrder=1,Parent=a0})end a1=ag('ScrollingFrame',{AnchorPoint=Vector2.new(1,0),AutomaticCanvasSize=Enum.AutomaticSize +.Y,BackgroundTransparency=1,CanvasSize=UDim2.fromScale(0,0),Position=UDim2.fromScale(1,0),ScrollBarImageTransparency=1, +ScrollBarThickness=0,Size=UDim2.new(0.5,-3,1,0),Parent=a_})ag('UIListLayout',{Padding=UDim.new(0,2),Parent=a1})ag( +'UIPadding',{PaddingBottom=UDim.new(0,2),PaddingLeft=UDim.new(0,2),PaddingRight=UDim.new(0,2),PaddingTop=UDim.new(0,2), +Parent=a1})do ag('Frame',{BackgroundTransparency=1,LayoutOrder=-1,Parent=a1})ag('Frame',{BackgroundTransparency=1, +LayoutOrder=1,Parent=a1})end end local a2,a3,a4,a5,a6,a7,a8,a9=(ag('Frame',{AutomaticSize=Enum.AutomaticSize.Y, +BackgroundTransparency=1,Position=UDim2.fromOffset(0,7),Size=UDim2.fromScale(1,0),Visible=false,Parent=a_}))do a3=ag( +'Frame',{BackgroundColor3='BackgroundColor',Position=UDim2.fromOffset(2,0),Size=UDim2.new(1,-5,0,0),Parent=a2})ag( +'UICorner',{CornerRadius=UDim.new(0,aw.CornerRadius),Parent=a3})a4,a5=C:AddOutline(a3)a6=ag('ScrollingFrame',{ +BackgroundTransparency=1,BorderSizePixel=0,Size=UDim2.fromScale(1,1),CanvasSize=UDim2.new(0,0,0,0),ScrollBarThickness=3, +ScrollingDirection=Enum.ScrollingDirection.Y,Parent=a3})ag('UIPadding',{PaddingBottom=UDim.new(0,4),PaddingLeft=UDim. +new(0,6),PaddingRight=UDim.new(0,6),PaddingTop=UDim.new(0,4),Parent=a6})a7=ag('TextLabel',{BackgroundTransparency=1,Size +=UDim2.new(1,-4,0,14),Text='',TextColor3=Color3.fromRGB(255,50,50),TextSize=14,TextXAlignment=Enum.TextXAlignment.Left, +Parent=a6})a8=ag('UIStroke',{ApplyStrokeMode=Enum.ApplyStrokeMode.Contextual,Color=Color3.fromRGB(169,0,0),LineJoinMode= +Enum.LineJoinMode.Miter,Parent=a7})a9=ag('TextLabel',{BackgroundTransparency=1,Position=UDim2.fromOffset(0,16),Size= +UDim2.new(1,-4,0,0),Text='',TextSize=14,TextWrapped=true,Parent=a6,TextXAlignment=Enum.TextXAlignment.Left, +TextYAlignment=Enum.TextYAlignment.Top})ag('UIStroke',{ApplyStrokeMode=Enum.ApplyStrokeMode.Contextual,Color='DarkColor' +,LineJoinMode=Enum.LineJoinMode.Miter,Parent=a9})end local ba={Groupboxes={},Tabboxes={},DependencyGroupboxes={},Sides={ +a0,a1},WarningBox={IsNormal=false,LockSize=false,Visible=false,Title='WARNING',Text=''}}function ba.UpdateWarningBox(bb, +bc)if typeof(bc.IsNormal)=='boolean'then ba.WarningBox.IsNormal=bc.IsNormal end if typeof(bc.LockSize)=='boolean'then ba +.WarningBox.LockSize=bc.LockSize end if typeof(bc.Visible)=='boolean'then ba.WarningBox.Visible=bc.Visible end if +typeof(bc.Title)=='string'then ba.WarningBox.Title=bc.Title end if typeof(bc.Text)=='string'then ba.WarningBox.Text=bc. +Text end a2.Visible=ba.WarningBox.Visible a7.Text=ba.WarningBox.Title a9.Text=ba.WarningBox.Text ba:Resize(true)a3. +BackgroundColor3=ba.WarningBox.IsNormal==true and C.Scheme.BackgroundColor or Color3.fromRGB(127,0,0)a5.Color=ba. +WarningBox.IsNormal==true and C.Scheme.DarkColor or Color3.fromRGB(85,0,0)a4.Color=ba.WarningBox.IsNormal==true and C. +Scheme.OutlineColor or Color3.fromRGB(255,50,50)a7.TextColor3=ba.WarningBox.IsNormal==true and C.Scheme.FontColor or +Color3.fromRGB(255,50,50)a8.Color=ba.WarningBox.IsNormal==true and C.Scheme.OutlineColor or Color3.fromRGB(169,0,0)if +not C.Registry[a3]then C:AddToRegistry(a3,{})end if not C.Registry[a5]then C:AddToRegistry(a5,{})end if not C.Registry[ +a4]then C:AddToRegistry(a4,{})end if not C.Registry[a7]then C:AddToRegistry(a7,{})end if not C.Registry[a8]then C: +AddToRegistry(a8,{})end C.Registry[a3].BackgroundColor3=function()return ba.WarningBox.IsNormal==true and C.Scheme. +BackgroundColor or Color3.fromRGB(127,0,0)end C.Registry[a5].Color=function()return ba.WarningBox.IsNormal==true and C. +Scheme.DarkColor or Color3.fromRGB(85,0,0)end C.Registry[a4].Color=function()return ba.WarningBox.IsNormal==true and C. +Scheme.OutlineColor or Color3.fromRGB(255,50,50)end C.Registry[a7].TextColor3=function()return ba.WarningBox.IsNormal== +true and C.Scheme.FontColor or Color3.fromRGB(255,50,50)end C.Registry[a8].Color=function()return ba.WarningBox.IsNormal +==true and C.Scheme.OutlineColor or Color3.fromRGB(169,0,0)end end function ba.RefreshSides(bb)local bc=a2.Visible and +a3.Size.Y.Offset+8 or 0 for bd,be in ba.Sides do be.Position=UDim2.new(be.Position.X.Scale,0,0,bc)be.Size=UDim2.new(0.5, +-3,1,-bc)end end function ba.Resize(bb,bc:boolean?)if bc then local bd,be,bf=math.floor(a_.AbsoluteSize.Y/3.25),C: +GetTextBounds(a9.Text,C.Scheme.Font,a9.TextSize,a9.AbsoluteSize.X)local bg=24+bf if ba.WarningBox.LockSize==true and bg +>=bd then a6.CanvasSize=UDim2.fromOffset(0,bg)bg=bd else a6.CanvasSize=UDim2.fromOffset(0,0)end a9.Size=UDim2.new(1,-4,0 +,bf)a3.Size=UDim2.new(1,-5,0,bg+4)end ba:RefreshSides()end function ba.AddGroupbox(bb,bc)local bd=ag('Frame',{ AutomaticSize=Enum.AutomaticSize.Y,BackgroundTransparency=1,Size=UDim2.fromScale(1,0),Parent=bc.Side==1 and a0 or a1}) ag('UIListLayout',{Padding=UDim.new(0,6),Parent=bd})ag('UIPadding',{PaddingBottom=UDim.new(0,4),PaddingTop=UDim.new(0,4) -,Parent=bd})local be,bf do be=ag('Frame',{BackgroundColor3='BackgroundColor',Size=UDim2.fromScale(1,0),Parent=bd})ag( -'UICorner',{CornerRadius=UDim.new(0,aw.CornerRadius),Parent=be})C:AddOutline(be)bf=ag('Frame',{BackgroundTransparency=1, -Size=UDim2.new(1,0,0,34),Parent=be})ag('UIListLayout',{FillDirection=Enum.FillDirection.Horizontal,HorizontalFlex=Enum. +,Parent=bd})local be,bf,bg,bh do be=ag('Frame',{BackgroundColor3='BackgroundColor',Size=UDim2.fromScale(1,0),Parent=bd}) +ag('UICorner',{CornerRadius=UDim.new(0,aw.CornerRadius),Parent=be})C:AddOutline(be)C:MakeLine(be,{Position=UDim2. +fromOffset(0,34),Size=UDim2.new(1,0,0,1)})local bi=C:GetCustomIcon(bc.IconName)or(bc.IconName and ac or nil)if bi then +ag('ImageLabel',{Image=bi.Url,ImageColor3=bi.Custom and'WhiteColor'or'AccentColor',ImageRectOffset=bi.ImageRectOffset, +ImageRectSize=bi.ImageRectSize,Position=UDim2.fromOffset(6,6),Size=UDim2.fromOffset(22,22),Parent=be})end bf=ag( +'TextLabel',{BackgroundTransparency=1,Position=UDim2.fromOffset(bi and 24 or 0,0),Size=UDim2.new(1,0,0,34),Text=bc.Name, +TextSize=15,TextXAlignment=Enum.TextXAlignment.Left,Parent=be})ag('UIPadding',{PaddingLeft=UDim.new(0,12),PaddingRight= +UDim.new(0,12),Parent=bf})bg=ag('Frame',{BackgroundTransparency=1,Position=UDim2.fromOffset(0,35),Size=UDim2.new(1,0,1,- +35),Parent=be})bh=ag('UIListLayout',{Padding=UDim.new(0,8),Parent=bg})ag('UIPadding',{PaddingBottom=UDim.new(0,7), +PaddingLeft=UDim.new(0,7),PaddingRight=UDim.new(0,7),PaddingTop=UDim.new(0,7),Parent=bg})end local bi={BoxHolder=bd, +Holder=be,Container=bg,Tab=ba,DependencyBoxes={},Elements={}}function bi.Resize(bj)be.Size=UDim2.new(1,0,0,(bh. +AbsoluteContentSize.Y/C.DPIScale)+49)end setmetatable(bi,au)bi:Resize()ba.Groupboxes[bc.Name]=bi return bi end function +ba.AddLeftGroupbox(bb,bc,bd)return ba:AddGroupbox{Side=1,Name=bc,IconName=bd}end function ba.AddRightGroupbox(bb,bc,bd) +return ba:AddGroupbox{Side=2,Name=bc,IconName=bd}end function ba.AddTabbox(bb,bc)local bd=ag('Frame',{AutomaticSize=Enum +.AutomaticSize.Y,BackgroundTransparency=1,Size=UDim2.fromScale(1,0),Parent=bc.Side==1 and a0 or a1})ag('UIListLayout',{ +Padding=UDim.new(0,6),Parent=bd})ag('UIPadding',{PaddingBottom=UDim.new(0,4),PaddingTop=UDim.new(0,4),Parent=bd})local +be,bf do be=ag('Frame',{BackgroundColor3='BackgroundColor',Size=UDim2.fromScale(1,0),Parent=bd})ag('UICorner',{ +CornerRadius=UDim.new(0,aw.CornerRadius),Parent=be})C:AddOutline(be)bf=ag('Frame',{BackgroundTransparency=1,Size=UDim2. +new(1,0,0,34),Parent=be})ag('UIListLayout',{FillDirection=Enum.FillDirection.Horizontal,HorizontalFlex=Enum. UIFlexAlignment.Fill,Parent=bf})end local bg={ActiveTab=nil,BoxHolder=bd,Holder=be,Tabs={}}function bg.AddTab(bh,bi) local bj=ag('TextButton',{BackgroundColor3='MainColor',BackgroundTransparency=0,Size=UDim2.fromOffset(0,34),Text=bi, TextSize=15,TextTransparency=0.5,Parent=bf})local bk,bl=C:MakeLine(bj,{AnchorPoint=Vector2.new(0,1),Position=UDim2.new(0 @@ -1144,171 +1143,171 @@ Position=UDim2.fromOffset(30,0),Size=UDim2.new(1,-30,1,0),Text=aU,TextSize=16,Te TextXAlignment.Left,Visible=not aC,Parent=aX})if aV then aZ=ag('ImageLabel',{Image=aV.Url,ImageColor3=aV.Custom and 'WhiteColor'or'AccentColor',ImageRectOffset=aV.ImageRectOffset,ImageRectSize=aV.ImageRectSize,ImageTransparency=0.5,Size =UDim2.fromScale(1,1),SizeConstraint=aC and Enum.SizeConstraint.RelativeXY or Enum.SizeConstraint.RelativeYY,Parent=aX}) -end table.insert(C.TabButtons,{Label=aY,Padding=a0,Icon=aZ})a_=ag('ScrollingFrame',{AutomaticCanvasSize=Enum. -AutomaticSize.Y,BackgroundTransparency=1,CanvasSize=UDim2.fromScale(0,0),ScrollBarThickness=0,Size=UDim2.fromScale(1,1), -Visible=false,Parent=aP})ag('UIListLayout',{HorizontalAlignment=Enum.HorizontalAlignment.Center,Padding=UDim.new(0,8), -VerticalAlignment=Enum.VerticalAlignment.Center,Parent=a_})ag('UIPadding',{PaddingLeft=UDim.new(0,1),PaddingRight=UDim. -new(0,1),Parent=a_})end local a0={Elements={},IsKeyTab=true}function a0.AddKeyBox(a1,a2)assert(typeof(a2)=='function', -'Callback must be a function')local a3=ag('Frame',{BackgroundTransparency=1,Size=UDim2.new(0.75,0,0,21),Parent=a_})local -a4=ag('TextBox',{BackgroundColor3='MainColor',BorderColor3='OutlineColor',BorderSizePixel=1,PlaceholderText='Key',Size= -UDim2.new(1,-71,1,0),TextSize=14,TextXAlignment=Enum.TextXAlignment.Left,Parent=a3})ag('UIPadding',{PaddingLeft=UDim. -new(0,8),PaddingRight=UDim.new(0,8),Parent=a4})local a5=ag('TextButton',{AnchorPoint=Vector2.new(1,0),BackgroundColor3= -'MainColor',BorderColor3='OutlineColor',BorderSizePixel=1,Position=UDim2.fromScale(1,0),Size=UDim2.new(0,63,1,0),Text= -'Execute',TextSize=14,Parent=a3})a5.InputBegan:Connect(function(a6)if not L(a6)then return end if not C: -MouseIsOverFrame(a5,a6.Position)then return end a2(a4.Text)end)end function a0.RefreshSides(a1)end function a0.Resize(a1 -)end function a0.Hover(a1,a2)if C.ActiveTab==a0 then return end n:Create(aY,C.TweenInfo,{TextTransparency=a2 and 0.25 or -0.5}):Play()if aZ then n:Create(aZ,C.TweenInfo,{ImageTransparency=a2 and 0.25 or 0.5}):Play()end end function a0.Show(a1 -)if C.ActiveTab then C.ActiveTab:Hide()end n:Create(aX,C.TweenInfo,{BackgroundTransparency=0}):Play()n:Create(aY,C. -TweenInfo,{TextTransparency=0}):Play()if aZ then n:Create(aZ,C.TweenInfo,{ImageTransparency=0}):Play()end a_.Visible= -true if aW then aR:ShowTabInfo(aU,aW)end a0:RefreshSides()C.ActiveTab=a0 if C.Searching then C:UpdateSearch(C.SearchText -)end end function a0.Hide(a1)n:Create(aX,C.TweenInfo,{BackgroundTransparency=1}):Play()n:Create(aY,C.TweenInfo,{ -TextTransparency=0.5}):Play()if aZ then n:Create(aZ,C.TweenInfo,{ImageTransparency=0.5}):Play()end a_.Visible=false aR: -HideTabInfo()C.ActiveTab=nil end if not C.ActiveTab then a0:Show()end aX.MouseEnter:Connect(function()a0:Hover(true)end) -aX.MouseLeave:Connect(function()a0:Hover(false)end)aX.MouseButton1Click:Connect(a0.Show)a0.Container=a_ setmetatable(a0, -au)C.Tabs[aU]=a0 return a0 end function C.Toggle(aT,aU:boolean?)if typeof(aU)=='boolean'then C.Toggled=aU else C.Toggled -=not C.Toggled end aD.Visible=C.Toggled if aw.UnlockMouseWhileOpen then Y.Modal=C.Toggled end if C.Toggled and not C. -IsMobile then local aV=k.MouseIconEnabled pcall(function()i:UnbindFromRenderStep'ShowCursor'end)i:BindToRenderStep( -'ShowCursor',Enum.RenderPriority.Last.Value,function()k.MouseIconEnabled=not C.ShowCustomCursor Z.Position=UDim2. -fromOffset(t.X,t.Y)Z.Visible=C.ShowCustomCursor if not(C.Toggled and X and X.Parent)then k.MouseIconEnabled=aV Z.Visible -=false i:UnbindFromRenderStep'ShowCursor'end end)elseif not C.Toggled then am.Visible=false for aV,aW in C.Options do if -aW.Type=='ColorPicker'then aW.ColorMenu:Close()aW.ContextMenu:Close()elseif aW.Type=='Dropdown'or aW.Type=='KeyPicker' -then aW.Menu:Close()end end end end if aw.EnableSidebarResize then local aT,aU,aV,aW,aX,aY=(aw.MinSidebarWidth+aw. -SidebarCompactWidth)*aw.SidebarCollapseThreshold,false,(ag('TextButton',{AnchorPoint=Vector2.new(0.5,0), -BackgroundTransparency=1,Position=UDim2.fromScale(0.5,0),Size=UDim2.new(0,8,1,0),Text='',Parent=aE}))aV.MouseEnter: -Connect(function()n:Create(aE,C.TweenInfo,{BackgroundColor3=C:GetLighterColor(C.Scheme.OutlineColor)}):Play()end)aV. -MouseLeave:Connect(function()if aU then return end n:Create(aE,C.TweenInfo,{BackgroundColor3=C.Scheme.OutlineColor}): -Play()end)aV.InputBegan:Connect(function(aZ:InputObject)if not L(aZ)then return end C.CantDragForced=true aW=aZ.Position -aX=aR:GetSidebarWidth()aU=true aY=aZ.Changed:Connect(function()if aZ.UserInputState~=Enum.UserInputState.End then return -end C.CantDragForced=false n:Create(aE,C.TweenInfo,{BackgroundColor3=C.Scheme.OutlineColor}):Play()aU=false if aY and aY -.Connected then aY:Disconnect()aY=nil end end)end)C:GiveSignal(k.InputChanged:Connect(function(aZ:InputObject)if not C. -Toggled or not(X and X.Parent)then aU=false if aY and aY.Connected then aY:Disconnect()aY=nil end return end if aU and -M(aZ)then local a_=aZ.Position-aW local a0=aX+a_.X if aw.DisableCompactingSnap then aR:SetSidebarWidth(a0)return end if -a0>aT then aR:SetSidebarWidth(math.max(a0,aw.MinSidebarWidth))else aR:SetSidebarWidth(aw.SidebarCompactWidth)end end end -))end if aw.EnableCompacting and aw.SidebarCompacted then aR:SetSidebarWidth(aw.SidebarCompactWidth)end if aw.AutoShow -then task.spawn(C.Toggle)end if C.IsMobile then local aT,aU=C:AddDraggableButton('Toggle',function()C:Toggle()end,true), -C:AddDraggableButton('Lock',function(aT)C.CantDragForced=not C.CantDragForced aT:SetText(C.CantDragForced and'Unlock'or -'Lock')end,true)if aw.MobileButtonsSide=='Right'then aT.Button.Position=UDim2.new(1,-6,0,6)aT.Button.AnchorPoint=Vector2 -.new(1,0)aU.Button.Position=UDim2.new(1,-6,0,46)aU.Button.AnchorPoint=Vector2.new(1,0)else aU.Button.Position=UDim2. -fromOffset(6,46)end end aJ:GetPropertyChangedSignal'Text':Connect(function()C:UpdateSearch(aJ.Text)end)C:GiveSignal(k. -InputBegan:Connect(function(aT:InputObject)if C.Unloaded then return end if k:GetFocusedTextBox()then return end if( -typeof(C.ToggleKeybind)=='table'and C.ToggleKeybind.Type=='KeyPicker'and aT.KeyCode.Name==C.ToggleKeybind.Value)or aT. -KeyCode==C.ToggleKeybind then C.Toggle()end end))C:GiveSignal(k.WindowFocused:Connect(function()C.IsRobloxFocused=true -end))C:GiveSignal(k.WindowFocusReleased:Connect(function()C.IsRobloxFocused=false end))return aR end local function av() -if C.Unloaded then return end local aw,ax=T(),T(true)for ay,az in x do if az.Type=='Dropdown'and az.SpecialType== -'Player'then az:SetValues(az.ExcludeLocalPlayer and ax or aw)end end end local function aw()if C.Unloaded then return -end local ax=U()for ay,az in x do if az.Type=='Dropdown'and az.SpecialType=='Team'then az:SetValues(ax)end end end C: -GiveSignal(h.PlayerAdded:Connect(av))C:GiveSignal(h.PlayerRemoving:Connect(av))C:GiveSignal(m.ChildAdded:Connect(aw))C: -GiveSignal(m.ChildRemoved:Connect(aw))o().Library=C return C end)()end,[6]=function()local aa,ab,ac=a(6)local ad return( -function(...)local ae,af,ag,ah=game:GetService'Players',game:GetService'TweenService',game:GetService'RunService',{} -local function ai()local aj=ae.LocalPlayer if not aj then return nil end local ak=aj:FindFirstChildOfClass'PlayerGui'if -not ak then ak=Instance.new'PlayerGui'ak.Name='PlayerGui'ak.Parent=aj end local al=Instance.new'ScreenGui'al.Name= -'ObsidianLoader'al.IgnoreGuiInset=true al.ResetOnSpawn=false local am=Instance.new'Frame'am.Name='Root'am.Size=UDim2. -fromScale(1,1)am.BackgroundTransparency=1 am.BorderSizePixel=0 am.Parent=al local an=Instance.new'Frame'an.Name='Panel' -an.Size=UDim2.fromScale(0.32,0.14)an.Position=UDim2.fromScale(0.5,0.52)an.AnchorPoint=Vector2.new(0.5,0.5)an. -BackgroundColor3=Color3.fromRGB(14,18,26)an.BackgroundTransparency=0.08 an.BorderSizePixel=0 an.Parent=am local ao= -Instance.new'UIStroke'ao.Color=Color3.fromRGB(58,72,94)ao.Thickness=1 ao.Parent=an local ap=Instance.new'UICorner'ap. -CornerRadius=UDim.new(0,10)ap.Parent=an local aq=Instance.new'TextLabel'aq.Name='Title'aq.BackgroundTransparency=1 aq. -Size=UDim2.new(1,-24,0,24)aq.Position=UDim2.new(0,12,0,12)aq.Font=Enum.Font.GothamSemibold aq.Text='Obsidian'aq.TextSize -=20 aq.TextColor3=Color3.fromRGB(236,242,252)aq.TextXAlignment=Enum.TextXAlignment.Left aq.Parent=an local ar=Instance. -new'TextLabel'ar.Name='Subtitle'ar.BackgroundTransparency=1 ar.Size=UDim2.new(1,-24,0,18)ar.Position=UDim2.new(0,12,0,40 -)ar.Font=Enum.Font.Gotham ar.Text='Initializing UI...'ar.TextSize=14 ar.TextColor3=Color3.fromRGB(160,175,195)ar. -TextXAlignment=Enum.TextXAlignment.Left ar.Parent=an local as=Instance.new'Frame'as.Name='Bar'as.Size=UDim2.new(1,-24,0, -6)as.Position=UDim2.new(0,12,1,-20)as.BackgroundColor3=Color3.fromRGB(24,30,42)as.BackgroundTransparency=0.2 as. -BorderSizePixel=0 as.Parent=an local at=Instance.new'UICorner'at.CornerRadius=UDim.new(1,0)at.Parent=as local au= -Instance.new'Frame'au.Name='Fill'au.Size=UDim2.new(0.05,0,1,0)au.BackgroundColor3=Color3.fromRGB(72,165,255)au. -BorderSizePixel=0 au.Parent=as local av=Instance.new'UICorner'av.CornerRadius=UDim.new(1,0)av.Parent=au local aw= -Instance.new'Frame'aw.Name='Shimmer'aw.Size=UDim2.new(0.25,0,1,0)aw.Position=UDim2.new(-0.3,0,0,0)aw.BackgroundColor3= -Color3.fromRGB(255,255,255)aw.BackgroundTransparency=0.8 aw.BorderSizePixel=0 aw.Parent=au local ax=Instance.new -'UIGradient'ax.Color=ColorSequence.new{ColorSequenceKeypoint.new(0,Color3.fromRGB(255,255,255)),ColorSequenceKeypoint. -new(1,Color3.fromRGB(255,255,255))}ax.Transparency=NumberSequence.new{NumberSequenceKeypoint.new(0,1), -NumberSequenceKeypoint.new(0.5,0.3),NumberSequenceKeypoint.new(1,1)}ax.Rotation=20 ax.Parent=aw local ay=Instance.new -'UIGradient'ay.Color=ColorSequence.new{ColorSequenceKeypoint.new(0,Color3.fromRGB(52,120,200)),ColorSequenceKeypoint. -new(1,Color3.fromRGB(92,210,255))}ay.Rotation=-15 ay.Parent=au al.Parent=ak return al,au,ar,an,ao,aw end function ah. -show()local aj,ak,al,am,an,ao=ai()if not aj then return{destroy=function()end,setProgress=function()end}end local ap,aq= -0.05,true am.Position=UDim2.fromScale(0.5,0.56)am.BackgroundTransparency=1 an.Transparency=1 al.TextTransparency=1 ak. -BackgroundTransparency=1 local function ar(as,at)ap=math.clamp(as,0.05,0.98)if at then al.Text=at end af:Create(ak, -TweenInfo.new(0.2,Enum.EasingStyle.Quad,Enum.EasingDirection.Out),{Size=UDim2.new(ap,0,1,0)}):Play()end af:Create(am, -TweenInfo.new(0.45,Enum.EasingStyle.Quint,Enum.EasingDirection.Out),{Position=UDim2.fromScale(0.5,0.5), -BackgroundTransparency=0.08}):Play()af:Create(an,TweenInfo.new(0.45,Enum.EasingStyle.Quint,Enum.EasingDirection.Out),{ -Transparency=0}):Play()af:Create(al,TweenInfo.new(0.45,Enum.EasingStyle.Quint,Enum.EasingDirection.Out),{ -TextTransparency=0}):Play()af:Create(ak,TweenInfo.new(0.45,Enum.EasingStyle.Quint,Enum.EasingDirection.Out),{ -BackgroundTransparency=0}):Play()local as as=ag.Heartbeat:Connect(function()if not aq then as:Disconnect()return end end -)task.spawn(function()while aq do af:Create(an,TweenInfo.new(1.2,Enum.EasingStyle.Sine,Enum.EasingDirection.InOut),{ -Thickness=2}):Play()task.wait(1.2)if not aq then break end af:Create(an,TweenInfo.new(1.2,Enum.EasingStyle.Sine,Enum. -EasingDirection.InOut),{Thickness=1}):Play()task.wait(1.2)end end)task.spawn(function()while aq do ao.Position=UDim2. -new(-0.3,0,0,0)af:Create(ao,TweenInfo.new(1,Enum.EasingStyle.Sine,Enum.EasingDirection.Out),{Position=UDim2.new(1.1,0,0, -0)}):Play()task.wait(1.1)end end)return{setProgress=ar,destroy=function()aq=false af:Create(am,TweenInfo.new(0.3,Enum. -EasingStyle.Quad,Enum.EasingDirection.In),{Position=UDim2.fromScale(0.5,0.46),BackgroundTransparency=1}):Play()af: -Create(an,TweenInfo.new(0.3,Enum.EasingStyle.Quad,Enum.EasingDirection.In),{Transparency=1}):Play()af:Create(al, -TweenInfo.new(0.25,Enum.EasingStyle.Quad,Enum.EasingDirection.In),{TextTransparency=1}):Play()af:Create(ak,TweenInfo. -new(0.25,Enum.EasingStyle.Quad,Enum.EasingDirection.In),{BackgroundTransparency=1}):Play()task.wait(0.25)aj:Destroy()end -}end return ah end)()end,[7]=function()local aa,ab,ac=a(7)local ad return(function(...)local ae=ab.Parent return{ -ObsidianLibrary=ac(ae:WaitForChild'ObsidianLibrary'),Types=ac(ae:WaitForChild'ObsidianLibrary.d'),ObsidianUI=ae: -WaitForChild'ObsidianUI'}end)()end,[8]=function()local aa,ab,ac=a(8)local ad return(function(...)local ae=(cloneref or -clonereference or function(ae:any)return ae end)local af:CoreGui,ag:Players,ah:RunService,ai:SoundService,aj: -UserInputService,ak:TextService,al:Teams,am:TweenService,an,ao,ap=ae(game:GetService'CoreGui'),ae(game:GetService -'Players'),ae(game:GetService'RunService'),ae(game:GetService'SoundService'),ae(game:GetService'UserInputService'),ae( -game:GetService'TextService'),ae(game:GetService'Teams'),ae(game:GetService'TweenService'),getgenv or function()return -shared end,setclipboard or nil,protectgui or(syn and syn.protect_gui)or function()end local aq,ar=gethui or function() -return af end,ag.LocalPlayer or ag.PlayerAdded:Wait()local as,at,au,av,aw,ax,ay,az=ae(ar:GetMouse()),{},{},{},{},{}, -[[https://raw.githubusercontent.com/deividcomsono/Obsidian/refs/heads/main/]],{}local aA={TransparencyTexture={RobloxId= -139785960036434,Path='Obsidian/assets/TransparencyTexture.png',URL=ay..'assets/TransparencyTexture.png',Id=nil}, -SaturationMap={RobloxId=4155801252,Path='Obsidian/assets/SaturationMap.png',URL=ay..'assets/SaturationMap.png',Id=nil}} -do local function aB(aC:string,aD:boolean?)if not isfolder or not makefolder then return end local aE,aF=aC:split'/','' -if aD then table.remove(aE,#aE)end for aG,aH in ipairs(aE)do if not isfolder(aF..aH)then makefolder(aF..aH)end aF=aF..aH -..'/'end return aF end function az.AddAsset(aC:string,aD:number,aE:string,aF:boolean?)if aA[aC]~=nil then error(string. -format('Asset %q already exists',aC))end assert(typeof(aD)=='number','RobloxAssetId must be a number')aA[aC]={RobloxId= -aD,Path=string.format('Obsidian/custom_assets/%s',aC),URL=aE,Id=nil}az.DownloadAsset(aC,aF)end function az.GetAsset(aC: -string)if not aA[aC]then return nil end local aD=aA[aC]if aD.Id then return aD.Id end local aE=string.format( -'rbxassetid://%s',aD.RobloxId)if getcustomasset then local aF,aG=pcall(getcustomasset,aD.Path)if aF and aG then aE=aG -end end aD.Id=aE return aE end function az.DownloadAsset(aC:string,aD:boolean?)if not getcustomasset or not writefile or -not isfile then return false,'missing functions'end local aE=aA[aC]aB(aE.Path,true)if aD~=true and isfile(aE.Path)then -return true,nil end local aF,aG=pcall(function()writefile(aE.Path,game:HttpGet(aE.URL))end)return aF,aG end for aC,aD in -aA do az.DownloadAsset(aC)end end local aB={LocalPlayer=ar,DevicePlatform=nil,IsMobile=false,IsRobloxFocused=true, -ScreenGui=nil,SearchText='',Searching=false,GlobalSearch=false,LastSearchTab=nil,ActiveTab=nil,Tabs={},TabButtons={}, -DependencyBoxes={},KeybindFrame=nil,KeybindContainer=nil,KeybindToggles={},Notifications={},ToggleKeybind=Enum.KeyCode. -RightControl,TweenInfo=TweenInfo.new(0.1,Enum.EasingStyle.Quad,Enum.EasingDirection.Out),NotifyTweenInfo=TweenInfo.new( -0.25,Enum.EasingStyle.Quad,Enum.EasingDirection.Out),Toggled=false,Unloaded=false,Labels=at,Buttons=au,Toggles=av, -Options=aw,NotifySide='Right',ShowCustomCursor=true,ForceCheckbox=false,ShowToggleFrameInKeybinds=true,NotifyOnError= -false,ForceTextIcons=false,CantDragForced=false,Signals={},UnloadSignals={},OriginalMinSize=Vector2.new(480,360),MinSize -=Vector2.new(480,360),DPIScale=1,CornerRadius=4,IsLightTheme=false,Scheme={BackgroundColor=Color3.fromRGB(15,15,15), -MainColor=Color3.fromRGB(25,25,25),AccentColor=Color3.fromRGB(125,85,255),OutlineColor=Color3.fromRGB(40,40,40), -FontColor=Color3.new(1,1,1),Font=Font.fromEnum(Enum.Font.Code),RedColor=Color3.fromRGB(255,50,50),DarkColor=Color3.new(0 -,0,0),WhiteColor=Color3.new(1,1,1)},Registry={},Scales={},ImageManager=az}if ah:IsStudio()then if aj.TouchEnabled and -not aj.MouseEnabled then aB.IsMobile=true aB.OriginalMinSize=Vector2.new(480,240)else aB.IsMobile=false aB. -OriginalMinSize=Vector2.new(480,360)end else pcall(function()aB.DevicePlatform=aj:GetPlatform()end)aB.IsMobile=(aB. -DevicePlatform==Enum.Platform.Android or aB.DevicePlatform==Enum.Platform.IOS)aB.OriginalMinSize=aB.IsMobile and Vector2 -.new(480,240)or Vector2.new(480,360)end local aC,aD,aE,aF,aG={Frame={BorderSizePixel=0},ImageLabel={ -BackgroundTransparency=1,BorderSizePixel=0},ImageButton={AutoButtonColor=false,BorderSizePixel=0},ScrollingFrame={ -BorderSizePixel=0},TextLabel={BorderSizePixel=0,FontFace='Font',RichText=true,TextColor3='FontColor'},TextButton={ -AutoButtonColor=false,BorderSizePixel=0,FontFace='Font',RichText=true,TextColor3='FontColor'},TextBox={BorderSizePixel=0 -,FontFace='Font',PlaceholderColor3=function()local aC,aD,aE=aB.Scheme.FontColor:ToHSV()return Color3.fromHSV(aC,aD,aE/2) -end,Text='',TextColor3='FontColor'},UIListLayout={SortOrder=Enum.SortOrder.LayoutOrder},UIStroke={ApplyStrokeMode=Enum. -ApplyStrokeMode.Border},Window={Title='No Title',Footer='No Footer',Position=UDim2.fromOffset(6,6),Size=UDim2. -fromOffset(720,600),IconSize=UDim2.fromOffset(30,30),AutoShow=true,Center=true,Resizable=true,SearchbarSize=UDim2. -fromScale(1,1),GlobalSearch=false,CornerRadius=4,NotifySide='Right',ShowCustomCursor=true,Font=Enum.Font.Code, -ToggleKeybind=Enum.KeyCode.RightControl,MobileButtonsSide='Left',UnlockMouseWhileOpen=true,EnableSidebarResize=false, -EnableCompacting=true,DisableCompactingSnap=false,SidebarCompacted=false,MinContainerWidth=256,MinSidebarWidth=128, -SidebarCompactWidth=48,SidebarCollapseThreshold=0.5,CompactWidthActivation=128},Toggle={Text='Toggle',Default=false, -Callback=function()end,Changed=function()end,Risky=false,Disabled=false,Visible=true},Input={Text='Input',Default='', -Finished=false,Numeric=false,ClearTextOnFocus=true,Placeholder='',AllowEmpty=true,EmptyReset='---',Callback=function() -end,Changed=function()end,Disabled=false,Visible=true},Slider={Text='Slider',Default=0,Min=0,Max=100,Rounding=0,Prefix= -'',Suffix='',Callback=function()end,Changed=function()end,Disabled=false,Visible=true},Dropdown={Values={}, -DisabledValues={},Multi=false,MaxVisibleDropdownItems=8,Callback=function()end,Changed=function()end,Disabled=false, -Visible=true},Viewport={Object=nil,Camera=nil,Clone=true,AutoFocus=true,Interactive=false,Height=200,Visible=true},Image -={Image='',Transparency=0,BackgroundTransparency=0,Color=Color3.new(1,1,1),RectOffset=Vector2.zero,RectSize=Vector2.zero -,ScaleType=Enum.ScaleType.Fit,Height=200,Visible=true},Video={Video='',Looped=false,Playing=false,Volume=1,Height=200, -Visible=true},UIPassthrough={Instance=nil,Height=24,Visible=true},KeyPicker={Text='KeyPicker',Default='None', -DefaultModifiers={},Mode='Toggle',Modes={'Always','Toggle','Hold'},SyncToggleState=false,Callback=function()end, -ChangedCallback=function()end,Changed=function()end,Clicked=function()end},ColorPicker={Default=Color3.new(1,1,1), -Callback=function()end,Changed=function()end}},{Bottom={0,1},Right={1,0}},{Left={0.5,1},Right={0.5,1}},{RedColor='Red', -WhiteColor='White',DarkColor='Dark'},{Red='RedColor',White='WhiteColor',Dark='DarkColor'}local function aH(aI)if not aI -then return nil end local aJ=aF[aI]if aJ and aB.Scheme[aJ]~=nil then aB.Scheme[aI]=aB.Scheme[aJ]aB.Scheme[aJ]=nil return -aB.Scheme[aI]end local aK=aG[aI]if aK and aB.Scheme[aK]~=nil then warn(string.format( -'Scheme Value %q is deprecated, please use %q instead.',aI,aK))return aB.Scheme[aK]end return aB.Scheme[aI]end -local function aI(aJ,aK,aL)local aM=Instance.new'BindableEvent'local aN=aJ:Once(function(...)if not aL or typeof(aL)== -'function'and aL(...)then aM:Fire(true)else aM:Fire(false)end end)task.delay(aK,function()aN:Disconnect()aM:Fire(false) -end)local aO=aM.Event:Wait()aM:Destroy()return aO end local function aJ(aK:InputObject,aL:boolean?)return aK. +if C.ForceTextIcons then aZ.Visible=false end end table.insert(C.TabButtons,{Label=aY,Padding=a0,Icon=aZ})a_=ag( +'ScrollingFrame',{AutomaticCanvasSize=Enum.AutomaticSize.Y,BackgroundTransparency=1,CanvasSize=UDim2.fromScale(0,0), +ScrollBarThickness=0,Size=UDim2.fromScale(1,1),Visible=false,Parent=aP})ag('UIListLayout',{HorizontalAlignment=Enum. +HorizontalAlignment.Center,Padding=UDim.new(0,8),VerticalAlignment=Enum.VerticalAlignment.Center,Parent=a_})ag( +'UIPadding',{PaddingLeft=UDim.new(0,1),PaddingRight=UDim.new(0,1),Parent=a_})end local a0={Elements={},IsKeyTab=true} +function a0.AddKeyBox(a1,a2)assert(typeof(a2)=='function','Callback must be a function')local a3=ag('Frame',{ +BackgroundTransparency=1,Size=UDim2.new(0.75,0,0,21),Parent=a_})local a4=ag('TextBox',{BackgroundColor3='MainColor', +BorderColor3='OutlineColor',BorderSizePixel=1,PlaceholderText='Key',Size=UDim2.new(1,-71,1,0),TextSize=14,TextXAlignment +=Enum.TextXAlignment.Left,Parent=a3})ag('UIPadding',{PaddingLeft=UDim.new(0,8),PaddingRight=UDim.new(0,8),Parent=a4}) +local a5=ag('TextButton',{AnchorPoint=Vector2.new(1,0),BackgroundColor3='MainColor',BorderColor3='OutlineColor', +BorderSizePixel=1,Position=UDim2.fromScale(1,0),Size=UDim2.new(0,63,1,0),Text='Execute',TextSize=14,Parent=a3})a5. +InputBegan:Connect(function(a6)if not L(a6)then return end if not C:MouseIsOverFrame(a5,a6.Position)then return end a2( +a4.Text)end)end function a0.RefreshSides(a1)end function a0.Resize(a1)end function a0.Hover(a1,a2)if C.ActiveTab==a0 +then return end n:Create(aY,C.TweenInfo,{TextTransparency=a2 and 0.25 or 0.5}):Play()if aZ then n:Create(aZ,C.TweenInfo, +{ImageTransparency=a2 and 0.25 or 0.5}):Play()end end function a0.Show(a1)if C.ActiveTab then C.ActiveTab:Hide()end n: +Create(aX,C.TweenInfo,{BackgroundTransparency=0}):Play()n:Create(aY,C.TweenInfo,{TextTransparency=0}):Play()if aZ then n +:Create(aZ,C.TweenInfo,{ImageTransparency=0}):Play()end a_.Visible=true if aW then aR:ShowTabInfo(aU,aW)end a0: +RefreshSides()C.ActiveTab=a0 if C.Searching then C:UpdateSearch(C.SearchText)end end function a0.Hide(a1)n:Create(aX,C. +TweenInfo,{BackgroundTransparency=1}):Play()n:Create(aY,C.TweenInfo,{TextTransparency=0.5}):Play()if aZ then n:Create(aZ +,C.TweenInfo,{ImageTransparency=0.5}):Play()end a_.Visible=false aR:HideTabInfo()C.ActiveTab=nil end if not C.ActiveTab +then a0:Show()end aX.MouseEnter:Connect(function()a0:Hover(true)end)aX.MouseLeave:Connect(function()a0:Hover(false)end) +aX.MouseButton1Click:Connect(a0.Show)a0.Container=a_ setmetatable(a0,au)C.Tabs[aU]=a0 return a0 end function C.Toggle(aT +,aU:boolean?)if typeof(aU)=='boolean'then C.Toggled=aU else C.Toggled=not C.Toggled end aD.Visible=C.Toggled if aw. +UnlockMouseWhileOpen then Y.Modal=C.Toggled end if C.Toggled and not C.IsMobile then local aV=k.MouseIconEnabled pcall( +function()i:UnbindFromRenderStep'ShowCursor'end)i:BindToRenderStep('ShowCursor',Enum.RenderPriority.Last.Value,function( +)k.MouseIconEnabled=not C.ShowCustomCursor Z.Position=UDim2.fromOffset(t.X,t.Y)Z.Visible=C.ShowCustomCursor if not(C. +Toggled and X and X.Parent)then k.MouseIconEnabled=aV Z.Visible=false i:UnbindFromRenderStep'ShowCursor'end end)elseif +not C.Toggled then am.Visible=false for aV,aW in C.Options do if aW.Type=='ColorPicker'then aW.ColorMenu:Close()aW. +ContextMenu:Close()elseif aW.Type=='Dropdown'or aW.Type=='KeyPicker'then aW.Menu:Close()end end end end if aw. +EnableSidebarResize then local aT,aU,aV,aW,aX,aY=(aw.MinSidebarWidth+aw.SidebarCompactWidth)*aw.SidebarCollapseThreshold +,false,(ag('TextButton',{AnchorPoint=Vector2.new(0.5,0),BackgroundTransparency=1,Position=UDim2.fromScale(0.5,0),Size= +UDim2.new(0,8,1,0),Text='',Parent=aE}))aV.MouseEnter:Connect(function()n:Create(aE,C.TweenInfo,{BackgroundColor3=C: +GetLighterColor(C.Scheme.OutlineColor)}):Play()end)aV.MouseLeave:Connect(function()if aU then return end n:Create(aE,C. +TweenInfo,{BackgroundColor3=C.Scheme.OutlineColor}):Play()end)aV.InputBegan:Connect(function(aZ:InputObject)if not L(aZ) +then return end C.CantDragForced=true aW=aZ.Position aX=aR:GetSidebarWidth()aU=true aY=aZ.Changed:Connect(function()if +aZ.UserInputState~=Enum.UserInputState.End then return end C.CantDragForced=false n:Create(aE,C.TweenInfo,{ +BackgroundColor3=C.Scheme.OutlineColor}):Play()aU=false if aY and aY.Connected then aY:Disconnect()aY=nil end end)end)C: +GiveSignal(k.InputChanged:Connect(function(aZ:InputObject)if not C.Toggled or not(X and X.Parent)then aU=false if aY and +aY.Connected then aY:Disconnect()aY=nil end return end if aU and M(aZ)then local a_=aZ.Position-aW local a0=aX+a_.X if +aw.DisableCompactingSnap then aR:SetSidebarWidth(a0)return end if a0>aT then aR:SetSidebarWidth(math.max(a0,aw. +MinSidebarWidth))else aR:SetSidebarWidth(aw.SidebarCompactWidth)end end end))end if aw.EnableCompacting and aw. +SidebarCompacted then aR:SetSidebarWidth(aw.SidebarCompactWidth)end if aw.AutoShow then task.spawn(C.Toggle)end if C. +IsMobile then local aT,aU=C:AddDraggableButton('Toggle',function()C:Toggle()end,true),C:AddDraggableButton('Lock', +function(aT)C.CantDragForced=not C.CantDragForced aT:SetText(C.CantDragForced and'Unlock'or'Lock')end,true)if aw. +MobileButtonsSide=='Right'then aT.Button.Position=UDim2.new(1,-6,0,6)aT.Button.AnchorPoint=Vector2.new(1,0)aU.Button. +Position=UDim2.new(1,-6,0,46)aU.Button.AnchorPoint=Vector2.new(1,0)else aU.Button.Position=UDim2.fromOffset(6,46)end end +aJ:GetPropertyChangedSignal'Text':Connect(function()C:UpdateSearch(aJ.Text)end)C:GiveSignal(k.InputBegan:Connect( +function(aT:InputObject)if C.Unloaded then return end if k:GetFocusedTextBox()then return end if(typeof(C.ToggleKeybind) +=='table'and C.ToggleKeybind.Type=='KeyPicker'and aT.KeyCode.Name==C.ToggleKeybind.Value)or aT.KeyCode==C.ToggleKeybind +then C.Toggle()end end))C:GiveSignal(k.WindowFocused:Connect(function()C.IsRobloxFocused=true end))C:GiveSignal(k. +WindowFocusReleased:Connect(function()C.IsRobloxFocused=false end))return aR end local function av()if C.Unloaded then +return end local aw,ax=T(),T(true)for ay,az in x do if az.Type=='Dropdown'and az.SpecialType=='Player'then az:SetValues( +az.ExcludeLocalPlayer and ax or aw)end end end local function aw()if C.Unloaded then return end local ax=U()for ay,az in +x do if az.Type=='Dropdown'and az.SpecialType=='Team'then az:SetValues(ax)end end end C:GiveSignal(h.PlayerAdded: +Connect(av))C:GiveSignal(h.PlayerRemoving:Connect(av))C:GiveSignal(m.ChildAdded:Connect(aw))C:GiveSignal(m.ChildRemoved: +Connect(aw))o().Library=C return C end)()end,[6]=function()local aa,ab,ac=a(6)local ad return(function(...)local ae,af, +ag,ah=game:GetService'Players',game:GetService'TweenService',game:GetService'RunService',{}local function ai()local aj= +ae.LocalPlayer if not aj then return nil end local ak=aj:FindFirstChildOfClass'PlayerGui'if not ak then ak=Instance.new +'PlayerGui'ak.Name='PlayerGui'ak.Parent=aj end local al=Instance.new'ScreenGui'al.Name='ObsidianLoader'al.IgnoreGuiInset +=true al.ResetOnSpawn=false local am=Instance.new'Frame'am.Name='Root'am.Size=UDim2.fromScale(1,1)am. +BackgroundTransparency=1 am.BorderSizePixel=0 am.Parent=al local an=Instance.new'Frame'an.Name='Panel'an.Size=UDim2. +fromScale(0.32,0.14)an.Position=UDim2.fromScale(0.5,0.52)an.AnchorPoint=Vector2.new(0.5,0.5)an.BackgroundColor3=Color3. +fromRGB(14,18,26)an.BackgroundTransparency=0.08 an.BorderSizePixel=0 an.Parent=am local ao=Instance.new'UIStroke'ao. +Color=Color3.fromRGB(58,72,94)ao.Thickness=1 ao.Parent=an local ap=Instance.new'UICorner'ap.CornerRadius=UDim.new(0,10) +ap.Parent=an local aq=Instance.new'TextLabel'aq.Name='Title'aq.BackgroundTransparency=1 aq.Size=UDim2.new(1,-24,0,24)aq. +Position=UDim2.new(0,12,0,12)aq.Font=Enum.Font.GothamSemibold aq.Text='Obsidian'aq.TextSize=20 aq.TextColor3=Color3. +fromRGB(236,242,252)aq.TextXAlignment=Enum.TextXAlignment.Left aq.Parent=an local ar=Instance.new'TextLabel'ar.Name= +'Subtitle'ar.BackgroundTransparency=1 ar.Size=UDim2.new(1,-24,0,18)ar.Position=UDim2.new(0,12,0,40)ar.Font=Enum.Font. +Gotham ar.Text='Initializing UI...'ar.TextSize=14 ar.TextColor3=Color3.fromRGB(160,175,195)ar.TextXAlignment=Enum. +TextXAlignment.Left ar.Parent=an local as=Instance.new'Frame'as.Name='Bar'as.Size=UDim2.new(1,-24,0,6)as.Position=UDim2. +new(0,12,1,-20)as.BackgroundColor3=Color3.fromRGB(24,30,42)as.BackgroundTransparency=0.2 as.BorderSizePixel=0 as.Parent= +an local at=Instance.new'UICorner'at.CornerRadius=UDim.new(1,0)at.Parent=as local au=Instance.new'Frame'au.Name='Fill'au +.Size=UDim2.new(0.05,0,1,0)au.BackgroundColor3=Color3.fromRGB(72,165,255)au.BorderSizePixel=0 au.Parent=as local av= +Instance.new'UICorner'av.CornerRadius=UDim.new(1,0)av.Parent=au local aw=Instance.new'Frame'aw.Name='Shimmer'aw.Size= +UDim2.new(0.25,0,1,0)aw.Position=UDim2.new(-0.3,0,0,0)aw.BackgroundColor3=Color3.fromRGB(255,255,255)aw. +BackgroundTransparency=0.8 aw.BorderSizePixel=0 aw.Parent=au local ax=Instance.new'UIGradient'ax.Color=ColorSequence.new +{ColorSequenceKeypoint.new(0,Color3.fromRGB(255,255,255)),ColorSequenceKeypoint.new(1,Color3.fromRGB(255,255,255))}ax. +Transparency=NumberSequence.new{NumberSequenceKeypoint.new(0,1),NumberSequenceKeypoint.new(0.5,0.3), +NumberSequenceKeypoint.new(1,1)}ax.Rotation=20 ax.Parent=aw local ay=Instance.new'UIGradient'ay.Color=ColorSequence.new{ +ColorSequenceKeypoint.new(0,Color3.fromRGB(52,120,200)),ColorSequenceKeypoint.new(1,Color3.fromRGB(92,210,255))}ay. +Rotation=-15 ay.Parent=au al.Parent=ak return al,au,ar,an,ao,aw end function ah.show()local aj,ak,al,am,an,ao=ai()if not +aj then return{destroy=function()end,setProgress=function()end}end local ap,aq=0.05,true am.Position=UDim2.fromScale(0.5 +,0.56)am.BackgroundTransparency=1 an.Transparency=1 al.TextTransparency=1 ak.BackgroundTransparency=1 local function ar( +as,at)ap=math.clamp(as,0.05,0.98)if at then al.Text=at end af:Create(ak,TweenInfo.new(0.2,Enum.EasingStyle.Quad,Enum. +EasingDirection.Out),{Size=UDim2.new(ap,0,1,0)}):Play()end af:Create(am,TweenInfo.new(0.45,Enum.EasingStyle.Quint,Enum. +EasingDirection.Out),{Position=UDim2.fromScale(0.5,0.5),BackgroundTransparency=0.08}):Play()af:Create(an,TweenInfo.new( +0.45,Enum.EasingStyle.Quint,Enum.EasingDirection.Out),{Transparency=0}):Play()af:Create(al,TweenInfo.new(0.45,Enum. +EasingStyle.Quint,Enum.EasingDirection.Out),{TextTransparency=0}):Play()af:Create(ak,TweenInfo.new(0.45,Enum.EasingStyle +.Quint,Enum.EasingDirection.Out),{BackgroundTransparency=0}):Play()local as as=ag.Heartbeat:Connect(function()if not aq +then as:Disconnect()return end end)task.spawn(function()while aq do af:Create(an,TweenInfo.new(1.2,Enum.EasingStyle.Sine +,Enum.EasingDirection.InOut),{Thickness=2}):Play()task.wait(1.2)if not aq then break end af:Create(an,TweenInfo.new(1.2, +Enum.EasingStyle.Sine,Enum.EasingDirection.InOut),{Thickness=1}):Play()task.wait(1.2)end end)task.spawn(function()while +aq do ao.Position=UDim2.new(-0.3,0,0,0)af:Create(ao,TweenInfo.new(1,Enum.EasingStyle.Sine,Enum.EasingDirection.Out),{ +Position=UDim2.new(1.1,0,0,0)}):Play()task.wait(1.1)end end)return{setProgress=ar,destroy=function()aq=false af:Create( +am,TweenInfo.new(0.3,Enum.EasingStyle.Quad,Enum.EasingDirection.In),{Position=UDim2.fromScale(0.5,0.46), +BackgroundTransparency=1}):Play()af:Create(an,TweenInfo.new(0.3,Enum.EasingStyle.Quad,Enum.EasingDirection.In),{ +Transparency=1}):Play()af:Create(al,TweenInfo.new(0.25,Enum.EasingStyle.Quad,Enum.EasingDirection.In),{TextTransparency= +1}):Play()af:Create(ak,TweenInfo.new(0.25,Enum.EasingStyle.Quad,Enum.EasingDirection.In),{BackgroundTransparency=1}): +Play()task.wait(0.25)aj:Destroy()end}end return ah end)()end,[7]=function()local aa,ab,ac=a(7)local ad return(function( +...)local ae=ab.Parent return{ObsidianLibrary=ac(ae:WaitForChild'ObsidianLibrary'),Types=ac(ae:WaitForChild +'ObsidianLibrary.d'),ObsidianUI=ae:WaitForChild'ObsidianUI'}end)()end,[8]=function()local aa,ab,ac=a(8)local ad return( +function(...)local ae=(cloneref or clonereference or function(ae:any)return ae end)local af:CoreGui,ag:Players,ah: +RunService,ai:SoundService,aj:UserInputService,ak:TextService,al:Teams,am:TweenService,an,ao,ap=ae(game:GetService +'CoreGui'),ae(game:GetService'Players'),ae(game:GetService'RunService'),ae(game:GetService'SoundService'),ae(game: +GetService'UserInputService'),ae(game:GetService'TextService'),ae(game:GetService'Teams'),ae(game:GetService +'TweenService'),getgenv or function()return shared end,setclipboard or nil,protectgui or(syn and syn.protect_gui)or +function()end local aq,ar=gethui or function()return af end,ag.LocalPlayer or ag.PlayerAdded:Wait()local as,at,au,av,aw, +ax,ay,az=ae(ar:GetMouse()),{},{},{},{},{},[[https://raw.githubusercontent.com/deividcomsono/Obsidian/refs/heads/main/]], +{}local aA={TransparencyTexture={RobloxId=139785960036434,Path='Obsidian/assets/TransparencyTexture.png',URL=ay.. +'assets/TransparencyTexture.png',Id=nil},SaturationMap={RobloxId=4155801252,Path='Obsidian/assets/SaturationMap.png',URL +=ay..'assets/SaturationMap.png',Id=nil}}do local function aB(aC:string,aD:boolean?)if not isfolder or not makefolder +then return end local aE,aF=aC:split'/',''if aD then table.remove(aE,#aE)end for aG,aH in ipairs(aE)do if not isfolder( +aF..aH)then makefolder(aF..aH)end aF=aF..aH..'/'end return aF end function az.AddAsset(aC:string,aD:number,aE:string,aF: +boolean?)if aA[aC]~=nil then error(string.format('Asset %q already exists',aC))end assert(typeof(aD)=='number', +'RobloxAssetId must be a number')aA[aC]={RobloxId=aD,Path=string.format('Obsidian/custom_assets/%s',aC),URL=aE,Id=nil}az +.DownloadAsset(aC,aF)end function az.GetAsset(aC:string)if not aA[aC]then return nil end local aD=aA[aC]if aD.Id then +return aD.Id end local aE=string.format('rbxassetid://%s',aD.RobloxId)if getcustomasset then local aF,aG=pcall( +getcustomasset,aD.Path)if aF and aG then aE=aG end end aD.Id=aE return aE end function az.DownloadAsset(aC:string,aD: +boolean?)if not getcustomasset or not writefile or not isfile then return false,'missing functions'end local aE=aA[aC] +aB(aE.Path,true)if aD~=true and isfile(aE.Path)then return true,nil end local aF,aG=pcall(function()writefile(aE.Path, +game:HttpGet(aE.URL))end)return aF,aG end for aC,aD in aA do az.DownloadAsset(aC)end end local aB={LocalPlayer=ar, +DevicePlatform=nil,IsMobile=false,IsRobloxFocused=true,ScreenGui=nil,SearchText='',Searching=false,GlobalSearch=false, +LastSearchTab=nil,ActiveTab=nil,Tabs={},TabButtons={},DependencyBoxes={},KeybindFrame=nil,KeybindContainer=nil, +KeybindToggles={},Notifications={},ToggleKeybind=Enum.KeyCode.RightControl,TweenInfo=TweenInfo.new(0.1,Enum.EasingStyle. +Quad,Enum.EasingDirection.Out),NotifyTweenInfo=TweenInfo.new(0.25,Enum.EasingStyle.Quad,Enum.EasingDirection.Out), +Toggled=false,Unloaded=false,Labels=at,Buttons=au,Toggles=av,Options=aw,NotifySide='Right',ShowCustomCursor=true, +ForceCheckbox=false,ShowToggleFrameInKeybinds=true,NotifyOnError=false,ForceTextIcons=false,CantDragForced=false,Signals +={},UnloadSignals={},OriginalMinSize=Vector2.new(480,360),MinSize=Vector2.new(480,360),DPIScale=1,CornerRadius=4, +IsLightTheme=false,Scheme={BackgroundColor=Color3.fromRGB(15,15,15),MainColor=Color3.fromRGB(25,25,25),AccentColor= +Color3.fromRGB(125,85,255),OutlineColor=Color3.fromRGB(40,40,40),FontColor=Color3.new(1,1,1),Font=Font.fromEnum(Enum. +Font.Code),RedColor=Color3.fromRGB(255,50,50),DarkColor=Color3.new(0,0,0),WhiteColor=Color3.new(1,1,1)},Registry={}, +Scales={},ImageManager=az}if ah:IsStudio()then if aj.TouchEnabled and not aj.MouseEnabled then aB.IsMobile=true aB. +OriginalMinSize=Vector2.new(480,240)else aB.IsMobile=false aB.OriginalMinSize=Vector2.new(480,360)end else pcall( +function()aB.DevicePlatform=aj:GetPlatform()end)aB.IsMobile=(aB.DevicePlatform==Enum.Platform.Android or aB. +DevicePlatform==Enum.Platform.IOS)aB.OriginalMinSize=aB.IsMobile and Vector2.new(480,240)or Vector2.new(480,360)end +local aC,aD,aE,aF,aG={Frame={BorderSizePixel=0},ImageLabel={BackgroundTransparency=1,BorderSizePixel=0},ImageButton={ +AutoButtonColor=false,BorderSizePixel=0},ScrollingFrame={BorderSizePixel=0},TextLabel={BorderSizePixel=0,FontFace='Font' +,RichText=true,TextColor3='FontColor'},TextButton={AutoButtonColor=false,BorderSizePixel=0,FontFace='Font',RichText=true +,TextColor3='FontColor'},TextBox={BorderSizePixel=0,FontFace='Font',PlaceholderColor3=function()local aC,aD,aE=aB.Scheme +.FontColor:ToHSV()return Color3.fromHSV(aC,aD,aE/2)end,Text='',TextColor3='FontColor'},UIListLayout={SortOrder=Enum. +SortOrder.LayoutOrder},UIStroke={ApplyStrokeMode=Enum.ApplyStrokeMode.Border},Window={Title='No Title',Footer= +'No Footer',Position=UDim2.fromOffset(6,6),Size=UDim2.fromOffset(720,600),IconSize=UDim2.fromOffset(30,30),AutoShow=true +,Center=true,Resizable=true,SearchbarSize=UDim2.fromScale(1,1),GlobalSearch=false,CornerRadius=4,NotifySide='Right', +ShowCustomCursor=true,Font=Enum.Font.Code,ToggleKeybind=Enum.KeyCode.RightControl,MobileButtonsSide='Left', +UnlockMouseWhileOpen=true,EnableSidebarResize=false,EnableCompacting=true,DisableCompactingSnap=false,SidebarCompacted= +false,MinContainerWidth=256,MinSidebarWidth=128,SidebarCompactWidth=48,SidebarCollapseThreshold=0.5, +CompactWidthActivation=128},Toggle={Text='Toggle',Default=false,Callback=function()end,Changed=function()end,Risky=false +,Disabled=false,Visible=true},Input={Text='Input',Default='',Finished=false,Numeric=false,ClearTextOnFocus=true, +Placeholder='',AllowEmpty=true,EmptyReset='---',Callback=function()end,Changed=function()end,Disabled=false,Visible=true +},Slider={Text='Slider',Default=0,Min=0,Max=100,Rounding=0,Prefix='',Suffix='',Callback=function()end,Changed=function() +end,Disabled=false,Visible=true},Dropdown={Values={},DisabledValues={},Multi=false,MaxVisibleDropdownItems=8,Callback= +function()end,Changed=function()end,Disabled=false,Visible=true},Viewport={Object=nil,Camera=nil,Clone=true,AutoFocus= +true,Interactive=false,Height=200,Visible=true},Image={Image='',Transparency=0,BackgroundTransparency=0,Color=Color3. +new(1,1,1),RectOffset=Vector2.zero,RectSize=Vector2.zero,ScaleType=Enum.ScaleType.Fit,Height=200,Visible=true},Video={ +Video='',Looped=false,Playing=false,Volume=1,Height=200,Visible=true},UIPassthrough={Instance=nil,Height=24,Visible=true +},KeyPicker={Text='KeyPicker',Default='None',DefaultModifiers={},Mode='Toggle',Modes={'Always','Toggle','Hold'}, +SyncToggleState=false,Callback=function()end,ChangedCallback=function()end,Changed=function()end,Clicked=function()end}, +ColorPicker={Default=Color3.new(1,1,1),Callback=function()end,Changed=function()end}},{Bottom={0,1},Right={1,0}},{Left={ +0.5,1},Right={0.5,1}},{RedColor='Red',WhiteColor='White',DarkColor='Dark'},{Red='RedColor',White='WhiteColor',Dark= +'DarkColor'}local function aH(aI)if not aI then return nil end local aJ=aF[aI]if aJ and aB.Scheme[aJ]~=nil then aB. +Scheme[aI]=aB.Scheme[aJ]aB.Scheme[aJ]=nil return aB.Scheme[aI]end local aK=aG[aI]if aK and aB.Scheme[aK]~=nil then warn( +string.format('Scheme Value %q is deprecated, please use %q instead.',aI,aK))return aB.Scheme[aK]end return aB.Scheme[aI +]end local function aI(aJ,aK,aL)local aM=Instance.new'BindableEvent'local aN=aJ:Once(function(...)if not aL or typeof(aL +)=='function'and aL(...)then aM:Fire(true)else aM:Fire(false)end end)task.delay(aK,function()aN:Disconnect()aM:Fire( +false)end)local aO=aM.Event:Wait()aM:Destroy()return aO end local function aJ(aK:InputObject,aL:boolean?)return aK. UserInputType==Enum.UserInputType.MouseButton1 or(aL==true and aK.UserInputType==Enum.UserInputType.MouseButton2)or aK. UserInputType==Enum.UserInputType.Touch end local function aK(aL:InputObject,aM:boolean?)return aJ(aL,aM)and aL. UserInputState==Enum.UserInputState.Begin and aB.IsRobloxFocused end local function aL(aM:InputObject)return(aM. @@ -2095,19 +2094,18 @@ TextButton,z,A,B,C,D w=aB:GetCustomIcon(w)or aY do y=a1('TextButton',{Background BackgroundTransparency=1,Size=UDim2.new(1,0,0,40),Text='',Parent=p})local E=a1('UIPadding',{PaddingBottom=UDim.new(0,d and 6 or 11),PaddingLeft=UDim.new(0,d and 6 or 12),PaddingRight=UDim.new(0,d and 6 or 12),PaddingTop=UDim.new(0,d and 6 or 11),Parent=y})z=a1('TextLabel',{BackgroundTransparency=1,Position=UDim2.fromOffset(30,0),Size=UDim2.new(1,-30,1,0), -Text=v,TextSize=16,TextTransparency=0.5,TextXAlignment=Enum.TextXAlignment.Left,Visible=not d,Parent=y})local F=a1( -'TextLabel',{BackgroundTransparency=1,Position=UDim2.fromOffset(6,9),Size=UDim2.fromOffset(22,22),Text=v:sub(1,1):upper( -),TextSize=14,TextXAlignment=Enum.TextXAlignment.Center,TextYAlignment=Enum.TextYAlignment.Center,TextColor3='FontColor' -,Visible=aB.ForceTextIcons or(w and w.Url==aY.Url),Parent=y})if w then A=a1('ImageLabel',{Image=w.Url,ImageColor3=w. -Custom and'WhiteColor'or'AccentColor',ImageRectOffset=w.ImageRectOffset,ImageRectSize=w.ImageRectSize,ImageTransparency= -0.5,ScaleType=Enum.ScaleType.Fit,Size=UDim2.fromScale(1,1),SizeConstraint=d and Enum.SizeConstraint.RelativeXY or Enum. -SizeConstraint.RelativeYY,Parent=y})if aB.ForceTextIcons then A.ImageTransparency=0.85 end end table.insert(aB. -TabButtons,{Label=z,Padding=E,Icon=A})B=a1('Frame',{BackgroundTransparency=1,Size=UDim2.fromScale(1,1),Visible=false, -Parent=q})C=a1('ScrollingFrame',{AutomaticCanvasSize=Enum.AutomaticSize.Y,BackgroundTransparency=1,CanvasSize=UDim2. -fromScale(0,0),ScrollBarImageTransparency=1,ScrollBarThickness=0,Size=UDim2.new(0.5,-3,1,0),Parent=B})a1('UIListLayout', -{Padding=UDim.new(0,2),Parent=C})a1('UIPadding',{PaddingBottom=UDim.new(0,2),PaddingLeft=UDim.new(0,2),PaddingRight=UDim -.new(0,2),PaddingTop=UDim.new(0,2),Parent=C})do a1('Frame',{BackgroundTransparency=1,LayoutOrder=-1,Parent=C})a1('Frame' -,{BackgroundTransparency=1,LayoutOrder=1,Parent=C})end D=a1('ScrollingFrame',{AnchorPoint=Vector2.new(1,0), +Text=v,TextSize=16,TextTransparency=0.5,TextXAlignment=Enum.TextXAlignment.Left,Visible=not d,Parent=y})if aB. +ForceTextIcons then z.Text=string.format('[%s] %s',v:sub(1,1):upper(),v)z.Position=UDim2.fromOffset(12,0)z.Size=UDim2. +new(1,-12,1,0)end if w then A=a1('ImageLabel',{Image=w.Url,ImageColor3=w.Custom and'WhiteColor'or'AccentColor', +ImageRectOffset=w.ImageRectOffset,ImageRectSize=w.ImageRectSize,ImageTransparency=0.5,ScaleType=Enum.ScaleType.Fit,Size= +UDim2.fromScale(1,1),SizeConstraint=d and Enum.SizeConstraint.RelativeXY or Enum.SizeConstraint.RelativeYY,Parent=y})if +aB.ForceTextIcons then A.ImageTransparency=0.85 end end table.insert(aB.TabButtons,{Label=z,Padding=E,Icon=A})B=a1( +'Frame',{BackgroundTransparency=1,Size=UDim2.fromScale(1,1),Visible=false,Parent=q})C=a1('ScrollingFrame',{ +AutomaticCanvasSize=Enum.AutomaticSize.Y,BackgroundTransparency=1,CanvasSize=UDim2.fromScale(0,0), +ScrollBarImageTransparency=1,ScrollBarThickness=0,Size=UDim2.new(0.5,-3,1,0),Parent=B})a1('UIListLayout',{Padding=UDim. +new(0,2),Parent=C})a1('UIPadding',{PaddingBottom=UDim.new(0,2),PaddingLeft=UDim.new(0,2),PaddingRight=UDim.new(0,2), +PaddingTop=UDim.new(0,2),Parent=C})do a1('Frame',{BackgroundTransparency=1,LayoutOrder=-1,Parent=C})a1('Frame',{ +BackgroundTransparency=1,LayoutOrder=1,Parent=C})end D=a1('ScrollingFrame',{AnchorPoint=Vector2.new(1,0), AutomaticCanvasSize=Enum.AutomaticSize.Y,BackgroundTransparency=1,CanvasSize=UDim2.fromScale(0,0),Position=UDim2. fromScale(1,0),ScrollBarImageTransparency=1,ScrollBarThickness=0,Size=UDim2.new(0.5,-3,1,0),Parent=B})a1('UIListLayout', {Padding=UDim.new(0,2),Parent=D})a1('UIPadding',{PaddingBottom=UDim.new(0,2),PaddingLeft=UDim.new(0,2),PaddingRight=UDim @@ -2197,99 +2195,100 @@ d and 6 or 12),PaddingTop=UDim.new(0,d and 6 or 11),Parent=x})y=a1('TextLabel',{ fromOffset(30,0),Size=UDim2.new(1,-30,1,0),Text=u,TextSize=16,TextTransparency=0.5,TextXAlignment=Enum.TextXAlignment. Left,Visible=not d,Parent=x})if v then z=a1('ImageLabel',{Image=v.Url,ImageColor3=v.Custom and'WhiteColor'or 'AccentColor',ImageRectOffset=v.ImageRectOffset,ImageRectSize=v.ImageRectSize,ImageTransparency=0.5,Size=UDim2. -fromScale(1,1),SizeConstraint=d and Enum.SizeConstraint.RelativeXY or Enum.SizeConstraint.RelativeYY,Parent=x})end table -.insert(aB.TabButtons,{Label=y,Padding=B,Icon=z})A=a1('ScrollingFrame',{AutomaticCanvasSize=Enum.AutomaticSize.Y, -BackgroundTransparency=1,CanvasSize=UDim2.fromScale(0,0),ScrollBarThickness=0,Size=UDim2.fromScale(1,1),Visible=false, -Parent=q})a1('UIListLayout',{HorizontalAlignment=Enum.HorizontalAlignment.Center,Padding=UDim.new(0,8),VerticalAlignment -=Enum.VerticalAlignment.Center,Parent=A})a1('UIPadding',{PaddingLeft=UDim.new(0,1),PaddingRight=UDim.new(0,1),Parent=A}) -end local B={Elements={},IsKeyTab=true}function B.AddKeyBox(C,D)assert(typeof(D)=='function', -'Callback must be a function')local E=a1('Frame',{BackgroundTransparency=1,Size=UDim2.new(0.75,0,0,21),Parent=A})local F -=a1('TextBox',{BackgroundColor3='MainColor',BorderColor3='OutlineColor',BorderSizePixel=1,PlaceholderText='Key',Size= -UDim2.new(1,-71,1,0),TextSize=14,TextXAlignment=Enum.TextXAlignment.Left,Parent=E})a1('UIPadding',{PaddingLeft=UDim.new( -0,8),PaddingRight=UDim.new(0,8),Parent=F})local G=a1('TextButton',{AnchorPoint=Vector2.new(1,0),BackgroundColor3= -'MainColor',BorderColor3='OutlineColor',BorderSizePixel=1,Position=UDim2.fromScale(1,0),Size=UDim2.new(0,63,1,0),Text= -'Execute',TextSize=14,Parent=E})G.InputBegan:Connect(function(H)if not aK(H)then return end if not aB:MouseIsOverFrame(G -,H.Position)then return end D(F.Text)end)end function B.RefreshSides(C)end function B.Resize(C)end function B.Hover(C,D) -if aB.ActiveTab==B then return end am:Create(y,aB.TweenInfo,{TextTransparency=D and 0.25 or 0.5}):Play()if z then am: -Create(z,aB.TweenInfo,{ImageTransparency=D and 0.25 or 0.5}):Play()end end function B.Show(C)if aB.ActiveTab then aB. -ActiveTab:Hide()end am:Create(x,aB.TweenInfo,{BackgroundTransparency=0}):Play()am:Create(y,aB.TweenInfo,{ -TextTransparency=0}):Play()if z then am:Create(z,aB.TweenInfo,{ImageTransparency=0}):Play()end A.Visible=true if w then -s:ShowTabInfo(u,w)end B:RefreshSides()aB.ActiveTab=B if aB.Searching then aB:UpdateSearch(aB.SearchText)end end function -B.Hide(C)am:Create(x,aB.TweenInfo,{BackgroundTransparency=1}):Play()am:Create(y,aB.TweenInfo,{TextTransparency=0.5}): -Play()if z then am:Create(z,aB.TweenInfo,{ImageTransparency=0.5}):Play()end A.Visible=false s:HideTabInfo()aB.ActiveTab= -nil end if not aB.ActiveTab then B:Show()end x.MouseEnter:Connect(function()B:Hover(true)end)x.MouseLeave:Connect( -function()B:Hover(false)end)x.MouseButton1Click:Connect(B.Show)B.Container=A setmetatable(B,bi)aB.Tabs[u]=B return B end -function aB.Toggle(bp,u:boolean?)if typeof(u)=='boolean'then aB.Toggled=u else aB.Toggled=not aB.Toggled end e.Visible= -aB.Toggled if bk.UnlockMouseWhileOpen then a5.Modal=aB.Toggled end if aB.Toggled and not aB.IsMobile then local v=aj. -MouseIconEnabled pcall(function()ah:UnbindFromRenderStep'ShowCursor'end)ah:BindToRenderStep('ShowCursor',Enum. -RenderPriority.Last.Value,function()aj.MouseIconEnabled=not aB.ShowCustomCursor a6.Position=UDim2.fromOffset(as.X,as.Y) -a6.Visible=aB.ShowCustomCursor if not(aB.Toggled and a4 and a4.Parent)then aj.MouseIconEnabled=v a6.Visible=false ah: -UnbindFromRenderStep'ShowCursor'end end)elseif not aB.Toggled then ba.Visible=false for v,w in aB.Options do if w.Type== -'ColorPicker'then w.ColorMenu:Close()w.ContextMenu:Close()elseif w.Type=='Dropdown'or w.Type=='KeyPicker'then w.Menu: -Close()end end end end if bk.EnableSidebarResize then local bp,u,v,w,x,y=(bk.MinSidebarWidth+bk.SidebarCompactWidth)*bk. -SidebarCollapseThreshold,false,(a1('TextButton',{AnchorPoint=Vector2.new(0.5,0),BackgroundTransparency=1,Position=UDim2. -fromScale(0.5,0),Size=UDim2.new(0,8,1,0),Text='',Parent=f}))v.MouseEnter:Connect(function()am:Create(f,aB.TweenInfo,{ -BackgroundColor3=aB:GetLighterColor(aB.Scheme.OutlineColor)}):Play()end)v.MouseLeave:Connect(function()if u then return -end am:Create(f,aB.TweenInfo,{BackgroundColor3=aB.Scheme.OutlineColor}):Play()end)v.InputBegan:Connect(function(z: -InputObject)if not aK(z)then return end aB.CantDragForced=true w=z.Position x=s:GetSidebarWidth()u=true y=z.Changed: -Connect(function()if z.UserInputState~=Enum.UserInputState.End then return end aB.CantDragForced=false am:Create(f,aB. -TweenInfo,{BackgroundColor3=aB.Scheme.OutlineColor}):Play()u=false if y and y.Connected then y:Disconnect()y=nil end end -)end)aB:GiveSignal(aj.InputChanged:Connect(function(z:InputObject)if not aB.Toggled or not(a4 and a4.Parent)then u=false -if y and y.Connected then y:Disconnect()y=nil end return end if u and aL(z)then local A=z.Position-w local B=x+A.X if bk -.DisableCompactingSnap then s:SetSidebarWidth(B)return end if B>bp then s:SetSidebarWidth(math.max(B,bk.MinSidebarWidth) -)else s:SetSidebarWidth(bk.SidebarCompactWidth)end end end))end if bk.EnableCompacting and bk.SidebarCompacted then s: -SetSidebarWidth(bk.SidebarCompactWidth)end if bk.AutoShow then task.spawn(aB.Toggle)end if aB.IsMobile then local bp,u= -aB:AddDraggableButton('Toggle',function()aB:Toggle()end,true),aB:AddDraggableButton('Lock',function(bp)aB.CantDragForced -=not aB.CantDragForced bp:SetText(aB.CantDragForced and'Unlock'or'Lock')end,true)if bk.MobileButtonsSide=='Right'then bp -.Button.Position=UDim2.new(1,-6,0,6)bp.Button.AnchorPoint=Vector2.new(1,0)u.Button.Position=UDim2.new(1,-6,0,46)u.Button -.AnchorPoint=Vector2.new(1,0)else u.Button.Position=UDim2.fromOffset(6,46)end end k:GetPropertyChangedSignal'Text': -Connect(function()aB:UpdateSearch(k.Text)end)aB:GiveSignal(aj.InputBegan:Connect(function(bp:InputObject)if aB.Unloaded -then return end if aj:GetFocusedTextBox()then return end if(typeof(aB.ToggleKeybind)=='table'and aB.ToggleKeybind.Type== -'KeyPicker'and bp.KeyCode.Name==aB.ToggleKeybind.Value)or bp.KeyCode==aB.ToggleKeybind then aB.Toggle()end end))aB: -GiveSignal(aj.WindowFocused:Connect(function()aB.IsRobloxFocused=true end))aB:GiveSignal(aj.WindowFocusReleased:Connect( -function()aB.IsRobloxFocused=false end))return s end local function bj()if aB.Unloaded then return end local bk,bl=aS(), -aS(true)for bm,bn in aw do if bn.Type=='Dropdown'and bn.SpecialType=='Player'then bn:SetValues(bn.ExcludeLocalPlayer and -bl or bk)end end end local function bk()if aB.Unloaded then return end local bl=aT()for bm,bn in aw do if bn.Type== -'Dropdown'and bn.SpecialType=='Team'then bn:SetValues(bl)end end end aB:GiveSignal(ag.PlayerAdded:Connect(bj))aB: -GiveSignal(ag.PlayerRemoving:Connect(bj))aB:GiveSignal(al.ChildAdded:Connect(bk))aB:GiveSignal(al.ChildRemoved:Connect( -bk))an().Library=aB return aB end)()end,[9]=function()local aa,ab,ac=a(9)local ad return(function(...)export type Scheme -={BackgroundColor:Color3,MainColor:Color3,AccentColor:Color3,OutlineColor:Color3,FontColor:Color3,Font:Font,RedColor: -Color3,DarkColor:Color3,WhiteColor:Color3}export type Icon={Url:string,ImageRectOffset:Vector2,ImageRectSize:Vector2} -export type ContextMenu={Active:boolean,Holder:GuiObject,Menu:GuiObject,List:UIListLayout?,Signal:RBXScriptConnection?, -Size:UDim2|(()->UDim2),Open:(self:ContextMenu)->(),Close:(self:ContextMenu)->(),Toggle:(self:ContextMenu)->(),SetSize:( -self:ContextMenu,Size:UDim2|(()->UDim2))->()}export type Tooltip={Disabled:boolean,Hovering:boolean,Signals:{[number]: -RBXScriptConnection},Destroy:(self:Tooltip)->()}export type Notification={Title:string?,Description:string,Time:number| -Instance,SoundId:string|number?,Steps:number?,Persist:boolean?,Destroyed:boolean,Resize:(self:Notification)->(), -ChangeTitle:(self:Notification,Text:string)->(),ChangeDescription:(self:Notification,Text:string)->(),ChangeStep:(self: -Notification,NewStep:number)->(),Destroy:(self:Notification)->()}export type KeybindToggle={Normal:boolean,Holder: -TextButton,Label:TextLabel,Checkbox:Frame,Loaded:boolean,Display:(self:KeybindToggle,State:boolean)->(),SetText:(self: -KeybindToggle,Text:string)->(),SetVisibility:(self:KeybindToggle,Visibility:boolean)->(),SetNormal:(self:KeybindToggle, -Normal:boolean)->()}export type DraggableLabel={Label:TextLabel,SetText:(self:DraggableLabel,Text:string)->(),SetVisible -:(self:DraggableLabel,Visible:boolean)->()}export type DraggableButton={Button:TextButton,SetText:(self:DraggableButton, -Text:string)->()}export type ButtonInfo={Text:string,Func:()->(),DoubleClick:boolean?,Tooltip:string?,DisabledTooltip: -string?,Risky:boolean?,Disabled:boolean?,Visible:boolean?}export type ToggleInfo={Text:string,Default:boolean?,Callback: -((boolean)->())?,Changed:((boolean)->())?,Tooltip:string?,DisabledTooltip:string?,Risky:boolean?,Disabled:boolean?, -Visible:boolean?}export type InputInfo={Text:string,Default:string?,Finished:boolean?,Numeric:boolean?,ClearTextOnFocus: -boolean?,Placeholder:string?,AllowEmpty:boolean?,EmptyReset:string?,MaxLength:number?,Tooltip:string?,DisabledTooltip: -string?,Callback:((string)->())?,Changed:((string)->())?,Disabled:boolean?,Visible:boolean?}export type SliderInfo={Text -:string,Default:number?,Min:number?,Max:number?,Rounding:number?,Prefix:string?,Suffix:string?,Compact:boolean?,HideMax: -boolean?,FormatDisplayValue:((Slider,number)->string)?,Tooltip:string?,DisabledTooltip:string?,Callback:((number)->())?, -Changed:((number)->())?,Disabled:boolean?,Visible:boolean?}export type DropdownInfo={Text:string?,Values:{any},Default: -any,DisabledValues:{any}?,Multi:boolean?,MaxVisibleDropdownItems:number?,SpecialType:'Player'|'Team'?,ExcludeLocalPlayer -:boolean?,AllowNull:boolean?,Searchable:boolean?,FormatDisplayValue:((any)->string)?,Tooltip:string?,DisabledTooltip: -string?,Callback:((any)->())?,Changed:((any)->())?,Disabled:boolean?,Visible:boolean?}export type ViewportInfo={Object: -BasePart|Model,Camera:Camera?,Clone:boolean?,AutoFocus:boolean?,Interactive:boolean?,Height:number?,Visible:boolean?} -export type ImageInfo={Image:string,Transparency:number?,Color:Color3?,RectOffset:Vector2?,RectSize:Vector2?,ScaleType: -Enum.ScaleType?,Height:number?,Visible:boolean?}export type VideoInfo={Video:string,Looped:boolean?,Playing:boolean?, -Volume:number?,Height:number?,Visible:boolean?}export type UIPassthroughInfo={Instance:GuiBase2d,Height:number?,Visible: -boolean?}export type KeyPickerInfo={Text:string,Default:string?,Mode:'Always'|'Toggle'|'Hold'|'Press'?,Modes:{'Always'| -'Toggle'|'Hold'|'Press'}?,SyncToggleState:boolean?,NoUI:boolean?,WaitForCallback:boolean?,Callback:((boolean)->())?, -ChangedCallback:((Enum.KeyCode|Enum.UserInputType)->())?,Changed:((Enum.KeyCode|Enum.UserInputType)->())?,Clicked:(()->( -))?}export type ColorPickerInfo={Default:Color3?,Transparency:number?,Title:string?,Callback:((Color3)->())?,Changed:(( -Color3)->())?}export type KeyPicker={Text:string,Value:string,Toggled:boolean,Mode:'Always'|'Toggle'|'Hold'|'Press', -SyncToggleState:boolean,Callback:(Toggled:boolean)->(),ChangedCallback:(Key:Enum.KeyCode|Enum.UserInputType)->(),Changed -:(Key:Enum.KeyCode|Enum.UserInputType)->(),Clicked:()->(),Type:'KeyPicker',Menu:ContextMenu,Display:(self:KeyPicker)->() -,Update:(self:KeyPicker)->(),GetState:(self:KeyPicker)->boolean,OnChanged:(self:KeyPicker,Func:(Key:Enum.KeyCode|Enum. +fromScale(1,1),SizeConstraint=d and Enum.SizeConstraint.RelativeXY or Enum.SizeConstraint.RelativeYY,Parent=x})if aB. +ForceTextIcons then z.Visible=false end end table.insert(aB.TabButtons,{Label=y,Padding=B,Icon=z})A=a1('ScrollingFrame', +{AutomaticCanvasSize=Enum.AutomaticSize.Y,BackgroundTransparency=1,CanvasSize=UDim2.fromScale(0,0),ScrollBarThickness=0, +Size=UDim2.fromScale(1,1),Visible=false,Parent=q})a1('UIListLayout',{HorizontalAlignment=Enum.HorizontalAlignment.Center +,Padding=UDim.new(0,8),VerticalAlignment=Enum.VerticalAlignment.Center,Parent=A})a1('UIPadding',{PaddingLeft=UDim.new(0, +1),PaddingRight=UDim.new(0,1),Parent=A})end local B={Elements={},IsKeyTab=true}function B.AddKeyBox(C,D)assert(typeof(D) +=='function','Callback must be a function')local E=a1('Frame',{BackgroundTransparency=1,Size=UDim2.new(0.75,0,0,21), +Parent=A})local F=a1('TextBox',{BackgroundColor3='MainColor',BorderColor3='OutlineColor',BorderSizePixel=1, +PlaceholderText='Key',Size=UDim2.new(1,-71,1,0),TextSize=14,TextXAlignment=Enum.TextXAlignment.Left,Parent=E})a1( +'UIPadding',{PaddingLeft=UDim.new(0,8),PaddingRight=UDim.new(0,8),Parent=F})local G=a1('TextButton',{AnchorPoint=Vector2 +.new(1,0),BackgroundColor3='MainColor',BorderColor3='OutlineColor',BorderSizePixel=1,Position=UDim2.fromScale(1,0),Size= +UDim2.new(0,63,1,0),Text='Execute',TextSize=14,Parent=E})G.InputBegan:Connect(function(H)if not aK(H)then return end if +not aB:MouseIsOverFrame(G,H.Position)then return end D(F.Text)end)end function B.RefreshSides(C)end function B.Resize(C) +end function B.Hover(C,D)if aB.ActiveTab==B then return end am:Create(y,aB.TweenInfo,{TextTransparency=D and 0.25 or 0.5 +}):Play()if z then am:Create(z,aB.TweenInfo,{ImageTransparency=D and 0.25 or 0.5}):Play()end end function B.Show(C)if aB +.ActiveTab then aB.ActiveTab:Hide()end am:Create(x,aB.TweenInfo,{BackgroundTransparency=0}):Play()am:Create(y,aB. +TweenInfo,{TextTransparency=0}):Play()if z then am:Create(z,aB.TweenInfo,{ImageTransparency=0}):Play()end A.Visible=true +if w then s:ShowTabInfo(u,w)end B:RefreshSides()aB.ActiveTab=B if aB.Searching then aB:UpdateSearch(aB.SearchText)end +end function B.Hide(C)am:Create(x,aB.TweenInfo,{BackgroundTransparency=1}):Play()am:Create(y,aB.TweenInfo,{ +TextTransparency=0.5}):Play()if z then am:Create(z,aB.TweenInfo,{ImageTransparency=0.5}):Play()end A.Visible=false s: +HideTabInfo()aB.ActiveTab=nil end if not aB.ActiveTab then B:Show()end x.MouseEnter:Connect(function()B:Hover(true)end)x +.MouseLeave:Connect(function()B:Hover(false)end)x.MouseButton1Click:Connect(B.Show)B.Container=A setmetatable(B,bi)aB. +Tabs[u]=B return B end function aB.Toggle(bp,u:boolean?)if typeof(u)=='boolean'then aB.Toggled=u else aB.Toggled=not aB. +Toggled end e.Visible=aB.Toggled if bk.UnlockMouseWhileOpen then a5.Modal=aB.Toggled end if aB.Toggled and not aB. +IsMobile then local v=aj.MouseIconEnabled pcall(function()ah:UnbindFromRenderStep'ShowCursor'end)ah:BindToRenderStep( +'ShowCursor',Enum.RenderPriority.Last.Value,function()aj.MouseIconEnabled=not aB.ShowCustomCursor a6.Position=UDim2. +fromOffset(as.X,as.Y)a6.Visible=aB.ShowCustomCursor if not(aB.Toggled and a4 and a4.Parent)then aj.MouseIconEnabled=v a6 +.Visible=false ah:UnbindFromRenderStep'ShowCursor'end end)elseif not aB.Toggled then ba.Visible=false for v,w in aB. +Options do if w.Type=='ColorPicker'then w.ColorMenu:Close()w.ContextMenu:Close()elseif w.Type=='Dropdown'or w.Type== +'KeyPicker'then w.Menu:Close()end end end end if bk.EnableSidebarResize then local bp,u,v,w,x,y=(bk.MinSidebarWidth+bk. +SidebarCompactWidth)*bk.SidebarCollapseThreshold,false,(a1('TextButton',{AnchorPoint=Vector2.new(0.5,0), +BackgroundTransparency=1,Position=UDim2.fromScale(0.5,0),Size=UDim2.new(0,8,1,0),Text='',Parent=f}))v.MouseEnter: +Connect(function()am:Create(f,aB.TweenInfo,{BackgroundColor3=aB:GetLighterColor(aB.Scheme.OutlineColor)}):Play()end)v. +MouseLeave:Connect(function()if u then return end am:Create(f,aB.TweenInfo,{BackgroundColor3=aB.Scheme.OutlineColor}): +Play()end)v.InputBegan:Connect(function(z:InputObject)if not aK(z)then return end aB.CantDragForced=true w=z.Position x= +s:GetSidebarWidth()u=true y=z.Changed:Connect(function()if z.UserInputState~=Enum.UserInputState.End then return end aB. +CantDragForced=false am:Create(f,aB.TweenInfo,{BackgroundColor3=aB.Scheme.OutlineColor}):Play()u=false if y and y. +Connected then y:Disconnect()y=nil end end)end)aB:GiveSignal(aj.InputChanged:Connect(function(z:InputObject)if not aB. +Toggled or not(a4 and a4.Parent)then u=false if y and y.Connected then y:Disconnect()y=nil end return end if u and aL(z) +then local A=z.Position-w local B=x+A.X if bk.DisableCompactingSnap then s:SetSidebarWidth(B)return end if B>bp then s: +SetSidebarWidth(math.max(B,bk.MinSidebarWidth))else s:SetSidebarWidth(bk.SidebarCompactWidth)end end end))end if bk. +EnableCompacting and bk.SidebarCompacted then s:SetSidebarWidth(bk.SidebarCompactWidth)end if bk.AutoShow then task. +spawn(aB.Toggle)end if aB.IsMobile then local bp,u=aB:AddDraggableButton('Toggle',function()aB:Toggle()end,true),aB: +AddDraggableButton('Lock',function(bp)aB.CantDragForced=not aB.CantDragForced bp:SetText(aB.CantDragForced and'Unlock'or +'Lock')end,true)if bk.MobileButtonsSide=='Right'then bp.Button.Position=UDim2.new(1,-6,0,6)bp.Button.AnchorPoint=Vector2 +.new(1,0)u.Button.Position=UDim2.new(1,-6,0,46)u.Button.AnchorPoint=Vector2.new(1,0)else u.Button.Position=UDim2. +fromOffset(6,46)end end k:GetPropertyChangedSignal'Text':Connect(function()aB:UpdateSearch(k.Text)end)aB:GiveSignal(aj. +InputBegan:Connect(function(bp:InputObject)if aB.Unloaded then return end if aj:GetFocusedTextBox()then return end if( +typeof(aB.ToggleKeybind)=='table'and aB.ToggleKeybind.Type=='KeyPicker'and bp.KeyCode.Name==aB.ToggleKeybind.Value)or bp +.KeyCode==aB.ToggleKeybind then aB.Toggle()end end))aB:GiveSignal(aj.WindowFocused:Connect(function()aB.IsRobloxFocused= +true end))aB:GiveSignal(aj.WindowFocusReleased:Connect(function()aB.IsRobloxFocused=false end))return s end +local function bj()if aB.Unloaded then return end local bk,bl=aS(),aS(true)for bm,bn in aw do if bn.Type=='Dropdown'and +bn.SpecialType=='Player'then bn:SetValues(bn.ExcludeLocalPlayer and bl or bk)end end end local function bk()if aB. +Unloaded then return end local bl=aT()for bm,bn in aw do if bn.Type=='Dropdown'and bn.SpecialType=='Team'then bn: +SetValues(bl)end end end aB:GiveSignal(ag.PlayerAdded:Connect(bj))aB:GiveSignal(ag.PlayerRemoving:Connect(bj))aB: +GiveSignal(al.ChildAdded:Connect(bk))aB:GiveSignal(al.ChildRemoved:Connect(bk))an().Library=aB return aB end)()end,[9]= +function()local aa,ab,ac=a(9)local ad return(function(...)export type Scheme={BackgroundColor:Color3,MainColor:Color3, +AccentColor:Color3,OutlineColor:Color3,FontColor:Color3,Font:Font,RedColor:Color3,DarkColor:Color3,WhiteColor:Color3} +export type Icon={Url:string,ImageRectOffset:Vector2,ImageRectSize:Vector2}export type ContextMenu={Active:boolean, +Holder:GuiObject,Menu:GuiObject,List:UIListLayout?,Signal:RBXScriptConnection?,Size:UDim2|(()->UDim2),Open:(self: +ContextMenu)->(),Close:(self:ContextMenu)->(),Toggle:(self:ContextMenu)->(),SetSize:(self:ContextMenu,Size:UDim2|(()-> +UDim2))->()}export type Tooltip={Disabled:boolean,Hovering:boolean,Signals:{[number]:RBXScriptConnection},Destroy:(self: +Tooltip)->()}export type Notification={Title:string?,Description:string,Time:number|Instance,SoundId:string|number?, +Steps:number?,Persist:boolean?,Destroyed:boolean,Resize:(self:Notification)->(),ChangeTitle:(self:Notification,Text: +string)->(),ChangeDescription:(self:Notification,Text:string)->(),ChangeStep:(self:Notification,NewStep:number)->(), +Destroy:(self:Notification)->()}export type KeybindToggle={Normal:boolean,Holder:TextButton,Label:TextLabel,Checkbox: +Frame,Loaded:boolean,Display:(self:KeybindToggle,State:boolean)->(),SetText:(self:KeybindToggle,Text:string)->(), +SetVisibility:(self:KeybindToggle,Visibility:boolean)->(),SetNormal:(self:KeybindToggle,Normal:boolean)->()}export type +DraggableLabel={Label:TextLabel,SetText:(self:DraggableLabel,Text:string)->(),SetVisible:(self:DraggableLabel,Visible: +boolean)->()}export type DraggableButton={Button:TextButton,SetText:(self:DraggableButton,Text:string)->()}export type +ButtonInfo={Text:string,Func:()->(),DoubleClick:boolean?,Tooltip:string?,DisabledTooltip:string?,Risky:boolean?,Disabled +:boolean?,Visible:boolean?}export type ToggleInfo={Text:string,Default:boolean?,Callback:((boolean)->())?,Changed:(( +boolean)->())?,Tooltip:string?,DisabledTooltip:string?,Risky:boolean?,Disabled:boolean?,Visible:boolean?}export type +InputInfo={Text:string,Default:string?,Finished:boolean?,Numeric:boolean?,ClearTextOnFocus:boolean?,Placeholder:string?, +AllowEmpty:boolean?,EmptyReset:string?,MaxLength:number?,Tooltip:string?,DisabledTooltip:string?,Callback:((string)->()) +?,Changed:((string)->())?,Disabled:boolean?,Visible:boolean?}export type SliderInfo={Text:string,Default:number?,Min: +number?,Max:number?,Rounding:number?,Prefix:string?,Suffix:string?,Compact:boolean?,HideMax:boolean?,FormatDisplayValue: +((Slider,number)->string)?,Tooltip:string?,DisabledTooltip:string?,Callback:((number)->())?,Changed:((number)->())?, +Disabled:boolean?,Visible:boolean?}export type DropdownInfo={Text:string?,Values:{any},Default:any,DisabledValues:{any}? +,Multi:boolean?,MaxVisibleDropdownItems:number?,SpecialType:'Player'|'Team'?,ExcludeLocalPlayer:boolean?,AllowNull: +boolean?,Searchable:boolean?,FormatDisplayValue:((any)->string)?,Tooltip:string?,DisabledTooltip:string?,Callback:((any +)->())?,Changed:((any)->())?,Disabled:boolean?,Visible:boolean?}export type ViewportInfo={Object:BasePart|Model,Camera: +Camera?,Clone:boolean?,AutoFocus:boolean?,Interactive:boolean?,Height:number?,Visible:boolean?}export type ImageInfo={ +Image:string,Transparency:number?,Color:Color3?,RectOffset:Vector2?,RectSize:Vector2?,ScaleType:Enum.ScaleType?,Height: +number?,Visible:boolean?}export type VideoInfo={Video:string,Looped:boolean?,Playing:boolean?,Volume:number?,Height: +number?,Visible:boolean?}export type UIPassthroughInfo={Instance:GuiBase2d,Height:number?,Visible:boolean?}export type +KeyPickerInfo={Text:string,Default:string?,Mode:'Always'|'Toggle'|'Hold'|'Press'?,Modes:{'Always'|'Toggle'|'Hold'| +'Press'}?,SyncToggleState:boolean?,NoUI:boolean?,WaitForCallback:boolean?,Callback:((boolean)->())?,ChangedCallback:(( +Enum.KeyCode|Enum.UserInputType)->())?,Changed:((Enum.KeyCode|Enum.UserInputType)->())?,Clicked:(()->())?}export type +ColorPickerInfo={Default:Color3?,Transparency:number?,Title:string?,Callback:((Color3)->())?,Changed:((Color3)->())?} +export type KeyPicker={Text:string,Value:string,Toggled:boolean,Mode:'Always'|'Toggle'|'Hold'|'Press',SyncToggleState: +boolean,Callback:(Toggled:boolean)->(),ChangedCallback:(Key:Enum.KeyCode|Enum.UserInputType)->(),Changed:(Key:Enum. +KeyCode|Enum.UserInputType)->(),Clicked:()->(),Type:'KeyPicker',Menu:ContextMenu,Display:(self:KeyPicker)->(),Update:( +self:KeyPicker)->(),GetState:(self:KeyPicker)->boolean,OnChanged:(self:KeyPicker,Func:(Key:Enum.KeyCode|Enum. UserInputType)->())->(),OnClick:(self:KeyPicker,Func:()->())->(),DoClick:(self:KeyPicker)->(),SetValue:(self:KeyPicker, Data:{string})->(),SetText:(self:KeyPicker,Text:string)->()}export type ColorPicker={Value:Color3,Transparency:number, Title:string?,Callback:(Value:Color3)->(),Changed:(Value:Color3)->(),Type:'ColorPicker',Hue:number,Sat:number,Vib:number @@ -2447,24 +2446,25 @@ CreateWindow(ai.Window)print'[LOG] Adding tabs to window...'print('[DEBUG] Windo 'rbxassetid://6031071053'),Player=ay('user','rbxassetid://6031071508'),Aimbot=ay('crosshair','rbxassetid://6031071320'), ItemSpawner=ay('box','rbxassetid://6031071146'),Visual=ay('palette','rbxassetid://6031071569'),Utils=ay('wrench', 'rbxassetid://6031071626'),Fly=ay('wind','rbxassetid://6031071087'),Noclip=ay('ghost','rbxassetid://6031071453'), -UISettings=ay('sliders-horizontal','rbxassetid://6031071591')}local aB={ESP=az:AddTab('ESP',aA.ESP),Player=az:AddTab( -'Player',aA.Player),Aimbot=az:AddTab('Aimbot',aA.Aimbot),ItemSpawner=az:AddTab('Item Spawner',aA.ItemSpawner),Visual=az: -AddTab('Visual',aA.Visual),Utils=az:AddTab('Utils',aA.Utils),Fly=az:AddTab('Fly',aA.Fly),Noclip=az:AddTab('Noclip',aA. -Noclip),['UI Settings']=az:AddTab('UI Settings',aA.UISettings)}pcall(function()ag:PreloadAsync{aA.ESP,aA.Player,aA. -Aimbot,aA.ItemSpawner,aA.Visual,aA.Utils,aA.Fly,aA.Noclip,aA.UISettings}end)print('[DEBUG] Tabs table created with',#aB, -'entries')local function aC(aD,aE,...)if not aB[aD]then warn(string.format( -'[ERROR] Tab %q not created (nil). Skipping build.',aD))return end local aF,aG=pcall(aE,...)if not aF then warn(string. -format('[ERROR] Failed to build tab %q: %s',aD,aG))end end print'[LOG] Building ESP tab...'aC('ESP',aj.build,av,aB)print -'[LOG] Building Player tab...'aC('Player',am.build,av,aB)print'[LOG] Building Aimbot tab...'aC('Aimbot',an.build,av,aB) -print'[LOG] Building Item Spawner tab...'aC('ItemSpawner',ao.build,av,aB)print'[LOG] Building Visual tab...'aC('Visual', -ap.build,av,aB)print'[LOG] Building Utils tab...'aC('Utils',aq.build,av,aB)print'[DEBUG] Utils tab built successfully' -print'[LOG] Building Fly tab...'aC('Fly',ak.build,av,aB)print'[DEBUG] Fly tab built successfully'print -'[LOG] Building Noclip tab...'aC('Noclip',al.build,av,aB)print'[DEBUG] Noclip tab built successfully'print -'[LOG] Building UI Settings tab...'aC('UI Settings',ar.build,av,aB)print'[DEBUG] UI Settings tab built successfully' +UISettings=ay('sliders-horizontal','rbxassetid://6031071591')}local function aB(aC,aD)local aE,aF=pcall(function()return +az:AddTab(aC,aD)end)if not aE then warn(string.format('[ERROR] Failed to add tab %q: %s',aC,aF))return nil end return aF +end local aC={ESP=aB('ESP',aA.ESP),Player=aB('Player',aA.Player),Aimbot=aB('Aimbot',aA.Aimbot),ItemSpawner=aB( +'Item Spawner',aA.ItemSpawner),Visual=aB('Visual',aA.Visual),Utils=aB('Utils',aA.Utils),Fly=aB('Fly',aA.Fly),Noclip=aB( +'Noclip',aA.Noclip),['UI Settings']=aB('UI Settings',aA.UISettings)}pcall(function()ag:PreloadAsync{aA.ESP,aA.Player,aA. +Aimbot,aA.ItemSpawner,aA.Visual,aA.Utils,aA.Fly,aA.Noclip,aA.UISettings}end)print('[DEBUG] Tabs table created with',#aC, +'entries')local function aD(aE,aF,...)if not aC[aE]then warn(string.format( +'[ERROR] Tab %q not created (nil). Skipping build.',aE))return end local aG,aH=pcall(aF,...)if not aG then warn(string. +format('[ERROR] Failed to build tab %q: %s',aE,aH))end end print'[LOG] Building ESP tab...'aD('ESP',aj.build,av,aC)print +'[LOG] Building Player tab...'aD('Player',am.build,av,aC)print'[LOG] Building Aimbot tab...'aD('Aimbot',an.build,av,aC) +print'[LOG] Building Item Spawner tab...'aD('ItemSpawner',ao.build,av,aC)print'[LOG] Building Visual tab...'aD('Visual', +ap.build,av,aC)print'[LOG] Building Utils tab...'aD('Utils',aq.build,av,aC)print'[DEBUG] Utils tab built successfully' +print'[LOG] Building Fly tab...'aD('Fly',ak.build,av,aC)print'[DEBUG] Fly tab built successfully'print +'[LOG] Building Noclip tab...'aD('Noclip',al.build,av,aC)print'[DEBUG] Noclip tab built successfully'print +'[LOG] Building UI Settings tab...'aD('UI Settings',ar.build,av,aC)print'[DEBUG] UI Settings tab built successfully' print'[LOG] All tabs initialized successfully'print'[LOG] Obsidian Admin Panel ready!'print -'[LOG] Setting up unload mechanism...'local aD=getgenv and getgenv()or _G aD.unloadObsidian=function()print -'[LOG] Unload requested, unloading UI...'local aE,aF=pcall(function()if av and not av.Unloaded then av:Unload()end end) -if aE then print'[LOG] UI unloaded successfully'else print('[ERROR] Failed to unload UI:',aF)end end av:OnUnload( +'[LOG] Setting up unload mechanism...'local aE=getgenv and getgenv()or _G aE.unloadObsidian=function()print +'[LOG] Unload requested, unloading UI...'local aF,aG=pcall(function()if av and not av.Unloaded then av:Unload()end end) +if aF then print'[LOG] UI unloaded successfully'else print('[ERROR] Failed to unload UI:',aG)end end av:OnUnload( function()if getgenv then getgenv().unloadObsidian=nil getgenv().Library=nil else _G.unloadObsidian=nil _G.Library=nil end end)print[[[LOG] Unload mechanism ready. Use: getgenv().unloadObsidian() or _G.unloadObsidian()]]end return at end)( )end,[12]=function()local aa,ab,ac=a(12)local ad return(function(...)local ae,af= @@ -3725,12 +3725,12 @@ Brightness=1 ah:Notify{Title='Night Vision',Description='Effekte entfernt.',Time do table.insert(af.Icons,ag)end function af.GetAsset(ag)local ah=tostring(ag):lower()local ai,aj=ah,ah if not ah:match '^lucide%-'then ai='lucide-'..ah else aj=ah:gsub('^lucide%-','')end local ak=ae[ah]or ae[ai]or ae[aj]if ak==nil then return nil end return{Url=ak,ImageRectOffset=Vector2.zero,ImageRectSize=Vector2.zero,Custom=false}end return af end)() -end},{{1,1,{'waxbundle'},{{10,1,{'ObsidianUI'},{{30,1,{'utils'},{{31,2,{'icons'}}}},{13,2,{'UIConfig'}},{18,1,{'tabs'},{ -{21,2,{'ESPTab'}},{23,2,{'ItemSpawnerTab'}},{19,2,{'AimbotTab'}},{25,2,{'MainTab'}},{20,2,{'AutoFarmTab'}},{28,2,{ -'UtilsTab'}},{24,2,{'LocalTab'}},{22,2,{'FlyTab'}},{29,2,{'VisualTab'}},{27,2,{'UISettingsTab'}},{26,2,{'NoclipTab'}}}}, -{14,1,{'scripts'},{{15,2,{'CustomESP'}},{16,2,{'FlyController'}},{17,2,{'NoclipController'}}}},{11,2,{'Bootstrap'}},{12, -2,{'FallbackIcons'}}}},{9,2,{'ObsidianLibrary.d'}},{8,2,{'ObsidianLibrary'}},{2,4,{'BundleEntry'}},{7,2,{'MainModule'}}, -{3,2,{'Init'},{{5,2,{'ObsidianLibrary'}},{4,2,{'ObsidianLibrary.d'}}}},{6,2,{'Loader'}}}}},'0.4.2','WaxRuntime',string, +end},{{1,1,{'waxbundle'},{{9,2,{'ObsidianLibrary.d'}},{7,2,{'MainModule'}},{10,1,{'ObsidianUI'},{{14,1,{'scripts'},{{15, +2,{'CustomESP'}},{16,2,{'FlyController'}},{17,2,{'NoclipController'}}}},{30,1,{'utils'},{{31,2,{'icons'}}}},{18,1,{ +'tabs'},{{20,2,{'AutoFarmTab'}},{22,2,{'FlyTab'}},{24,2,{'LocalTab'}},{27,2,{'UISettingsTab'}},{29,2,{'VisualTab'}},{26, +2,{'NoclipTab'}},{28,2,{'UtilsTab'}},{19,2,{'AimbotTab'}},{25,2,{'MainTab'}},{23,2,{'ItemSpawnerTab'}},{21,2,{'ESPTab'}} +}},{13,2,{'UIConfig'}},{12,2,{'FallbackIcons'}},{11,2,{'Bootstrap'}}}},{6,2,{'Loader'}},{8,2,{'ObsidianLibrary'}},{2,4,{ +'BundleEntry'}},{3,2,{'Init'},{{4,2,{'ObsidianLibrary.d'}},{5,2,{'ObsidianLibrary'}}}}}}},'0.4.2','WaxRuntime',string, task,setmetatable,error,next,table,unpack,coroutine,script,type,require,pcall,tostring,tonumber,_VERSION local au,av,aw, ax,ay,az,aA=aj.insert,aj.remove,aj.freeze or function(au)return au end,al.wrap,ae.sub,ae.match,ae.gmatch if as and ay(as ,1,4)=='Lune'then local aB,aC=ap(ao,'@lune/task')if aB and aC then af=aC end end local aB=af and af.defer local aC,aD,aE