-- made by za1k -- https://discord.gg/yzUwcnuMue -- https://discord.gg/yzUwcnuMue local TweenService = game:GetService("TweenService") local UserInputService = game:GetService("UserInputService") local GuiService = game:GetService("GuiService") local ChristmasMode = false local Scripts = { {Name = "Script 1", Code = function() print("Script 1 executed") end}, {Name = "Super cool print script", Code = function() print("im the sigma rizzler 193") end}, {Name = "Script 3", Code = function() print("Script 3 executed") end} } local AccentColor = Color3.fromRGB(200, 16, 46) local SelectedScript = nil local ScreenGui = Instance.new("ScreenGui") ScreenGui.Name = "LoaderGui" ScreenGui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling ScreenGui.Parent = game:GetService("CoreGui") local Blur = Instance.new("BlurEffect") Blur.Size = 0 Blur.Parent = game:GetService("Lighting") TweenService:Create(Blur, TweenInfo.new(0.5, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {Size = 15}):Play() local Sound = nil if ChristmasMode then Sound = Instance.new("Sound") Sound.SoundId = "rbxassetid://1839945406" Sound.Volume = 0 Sound.Looped = true Sound.Parent = ScreenGui Sound:Play() TweenService:Create(Sound, TweenInfo.new(2, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {Volume = 0.3}):Play() end local SnowContainer = Instance.new("Frame") SnowContainer.Name = "SnowContainer" SnowContainer.Size = UDim2.new(1, 0, 1, 0) SnowContainer.BackgroundTransparency = 1 SnowContainer.ZIndex = 1 SnowContainer.Parent = ScreenGui if ChristmasMode then local function spawnSnowflake() local Snowflake = Instance.new("Frame") Snowflake.Size = UDim2.new(0, 4, 0, 4) Snowflake.Position = UDim2.new(math.random(0, 100) / 100, 0, 0, -10) Snowflake.BackgroundColor3 = Color3.fromRGB(255, 255, 255) Snowflake.BorderSizePixel = 0 Snowflake.BackgroundTransparency = 0.2 Snowflake.ZIndex = 1 Snowflake.Parent = SnowContainer local SnowCorner = Instance.new("UICorner") SnowCorner.CornerRadius = UDim.new(1, 0) SnowCorner.Parent = Snowflake local fallTime = math.random(80, 150) / 10 local swayDistance = math.random(-150, 150) local startX = Snowflake.Position.X.Scale local fallTween = TweenService:Create( Snowflake, TweenInfo.new(fallTime, Enum.EasingStyle.Linear, Enum.EasingDirection.Out), { Position = UDim2.new(startX + (swayDistance / 1000), 0, 1, 10), BackgroundTransparency = 1 } ) fallTween:Play() fallTween.Completed:Wait() if Snowflake and Snowflake.Parent == SnowContainer then Snowflake:Destroy() end end task.spawn( function() while ChristmasMode do task.spawn(spawnSnowflake) task.wait(0.1) end end ) end local Outline = Instance.new("Frame") Outline.Name = "Outline" Outline.AnchorPoint = Vector2.new(0.5, 0.5) Outline.Position = UDim2.new(0.5, 0, 0.5, 0) Outline.Size = UDim2.new(0, 400, 0, 0) Outline.BackgroundColor3 = Color3.fromRGB(50, 50, 50) Outline.BorderSizePixel = 0 Outline.ZIndex = 50 Outline.Parent = ScreenGui local OutlineCorner = Instance.new("UICorner") OutlineCorner.CornerRadius = UDim.new(0, 6) OutlineCorner.Parent = Outline local OutlineStroke = Instance.new("UIStroke") OutlineStroke.Color = Color3.fromRGB(40, 40, 40) OutlineStroke.Parent = Outline local Inline = Instance.new("Frame") Inline.Name = "Inline" Inline.Position = UDim2.new(0, 1, 0, 1) Inline.Size = UDim2.new(1, -2, 1, -2) Inline.BackgroundColor3 = Color3.fromRGB(13, 13, 13) Inline.BorderSizePixel = 0 Inline.ClipsDescendants = false Inline.ZIndex = 51 Inline.Parent = Outline local InlineCorner = Instance.new("UICorner") InlineCorner.CornerRadius = UDim.new(0, 6) InlineCorner.Parent = Inline local Logo = Instance.new("ImageLabel") Logo.Name = "Logo" Logo.Image = "http://www.roblox.com/asset/?id=102043068618093" Logo.ScaleType = Enum.ScaleType.Fit Logo.BackgroundTransparency = 1 Logo.Position = UDim2.new(0, 15, 0, 10) Logo.Size = UDim2.new(0, 40, 0, 40) Logo.ZIndex = 52 Logo.Parent = Inline local Title = Instance.new("TextLabel") Title.Name = "Title" Title.Position = UDim2.new(0, 65, 0.02, 0) Title.Size = UDim2.new(1, -100, 0, 50) Title.BackgroundTransparency = 1 Title.Text = "Duck hub" Title.TextColor3 = Color3.fromRGB(200, 200, 200) Title.Font = Enum.Font.GothamBold Title.TextSize = 20 Title.TextXAlignment = Enum.TextXAlignment.Left Title.ZIndex = 52 Title.Parent = Inline local CloseButton = Instance.new("TextButton") CloseButton.Name = "CloseButton" CloseButton.AnchorPoint = Vector2.new(1, 0) CloseButton.Position = UDim2.new(1, -8, 0, 8) CloseButton.Size = UDim2.new(0, 24, 0, 24) CloseButton.BackgroundTransparency = 1 CloseButton.Text = "×" CloseButton.TextColor3 = Color3.fromRGB(150, 150, 150) CloseButton.Font = Enum.Font.GothamBold CloseButton.TextSize = 24 CloseButton.AutoButtonColor = false CloseButton.ZIndex = 52 CloseButton.Parent = Inline CloseButton.MouseEnter:Connect( function() TweenService:Create(CloseButton, TweenInfo.new(0.2), {TextColor3 = Color3.fromRGB(255, 80, 80)}):Play() end ) CloseButton.MouseLeave:Connect( function() TweenService:Create(CloseButton, TweenInfo.new(0.2), {TextColor3 = Color3.fromRGB(150, 150, 150)}):Play() end ) local Line = Instance.new("Frame") Line.Position = UDim2.new(0, 10, 0, 60) Line.Size = UDim2.new(1, -20, 0, 1) Line.BackgroundColor3 = Color3.fromRGB(50, 50, 50) Line.BorderSizePixel = 0 Line.ZIndex = 52 Line.Parent = Inline local DragBar = Instance.new("Frame") DragBar.Name = "DragBar" DragBar.AnchorPoint = Vector2.new(0.5, 0) DragBar.Position = UDim2.new(0.5, 0, 1, 8) DragBar.Size = UDim2.new(0, 140, 0, 4) DragBar.BackgroundColor3 = Color3.fromRGB(30, 30, 30) DragBar.BorderSizePixel = 0 DragBar.ZIndex = 52 DragBar.Parent = Inline local DragBarCorner = Instance.new("UICorner") DragBarCorner.CornerRadius = UDim.new(1, 0) DragBarCorner.Parent = DragBar local DragBarStroke = Instance.new("UIStroke") DragBarStroke.Color = Color3.fromRGB(50, 50, 50) DragBarStroke.Thickness = 1 DragBarStroke.Parent = DragBar local DragButton = Instance.new("TextButton") DragButton.Size = UDim2.new(1, 0, 1, 0) DragButton.BackgroundTransparency = 1 DragButton.Text = "" DragButton.AutoButtonColor = false DragButton.ZIndex = 53 DragButton.Parent = DragBar local ContentArea = Instance.new("Frame") ContentArea.Name = "ContentArea" ContentArea.Position = UDim2.new(0, 20, 0, 85) ContentArea.Size = UDim2.new(1, -40, 1, -105) ContentArea.BackgroundTransparency = 1 ContentArea.ZIndex = 52 ContentArea.Parent = Inline local DropdownContainer = Instance.new("Frame") DropdownContainer.Name = "DropdownContainer" DropdownContainer.Position = UDim2.new(0, 0, 0, 0) DropdownContainer.Size = UDim2.new(1, 0, 0, 40) DropdownContainer.BackgroundColor3 = Color3.fromRGB(20, 20, 20) DropdownContainer.BorderSizePixel = 0 DropdownContainer.ZIndex = 52 DropdownContainer.Parent = ContentArea local DropdownCorner = Instance.new("UICorner") DropdownCorner.CornerRadius = UDim.new(0, 4) DropdownCorner.Parent = DropdownContainer local DropdownStroke = Instance.new("UIStroke") DropdownStroke.Color = Color3.fromRGB(40, 40, 40) DropdownStroke.Parent = DropdownContainer local DropdownButton = Instance.new("TextButton") DropdownButton.Size = UDim2.new(1, 0, 1, 0) DropdownButton.BackgroundTransparency = 1 DropdownButton.Text = "Select Script..." DropdownButton.TextColor3 = Color3.fromRGB(150, 150, 150) DropdownButton.Font = Enum.Font.Gotham DropdownButton.TextSize = 13 DropdownButton.TextXAlignment = Enum.TextXAlignment.Left DropdownButton.AutoButtonColor = false DropdownButton.ZIndex = 53 DropdownButton.Parent = DropdownContainer local DropdownPadding = Instance.new("UIPadding") DropdownPadding.PaddingLeft = UDim.new(0, 10) DropdownPadding.Parent = DropdownButton local Arrow = Instance.new("TextLabel") Arrow.AnchorPoint = Vector2.new(1, 0.5) Arrow.Position = UDim2.new(1, -10, 0.5, 0) Arrow.Size = UDim2.new(0, 20, 0, 20) Arrow.BackgroundTransparency = 1 Arrow.Text = "▼" Arrow.TextColor3 = Color3.fromRGB(150, 150, 150) Arrow.Font = Enum.Font.Gotham Arrow.TextSize = 10 Arrow.ZIndex = 53 Arrow.Parent = DropdownContainer local OptionsContainer = Instance.new("ScrollingFrame") OptionsContainer.Name = "Options" OptionsContainer.Position = UDim2.new(0, 0, 0, 45) OptionsContainer.Size = UDim2.new(1, 0, 0, 0) OptionsContainer.BackgroundColor3 = Color3.fromRGB(20, 20, 20) OptionsContainer.BorderSizePixel = 0 OptionsContainer.ClipsDescendants = true OptionsContainer.Visible = false OptionsContainer.ScrollBarThickness = 4 OptionsContainer.ScrollBarImageColor3 = AccentColor OptionsContainer.CanvasSize = UDim2.new(0, 0, 0, 0) OptionsContainer.ZIndex = 54 OptionsContainer.Parent = ContentArea local OptionsCorner = Instance.new("UICorner") OptionsCorner.CornerRadius = UDim.new(0, 4) OptionsCorner.Parent = OptionsContainer local OptionsStroke = Instance.new("UIStroke") OptionsStroke.Color = Color3.fromRGB(40, 40, 40) OptionsStroke.Parent = OptionsContainer local OptionsLayout = Instance.new("UIListLayout") OptionsLayout.SortOrder = Enum.SortOrder.LayoutOrder OptionsLayout.Parent = OptionsContainer for i, script in ipairs(Scripts) do local Option = Instance.new("TextButton") Option.Size = UDim2.new(1, 0, 0, 35) Option.BackgroundColor3 = Color3.fromRGB(20, 20, 20) Option.BorderSizePixel = 0 Option.Text = script.Name Option.TextColor3 = Color3.fromRGB(150, 150, 150) Option.Font = Enum.Font.Gotham Option.TextSize = 12 Option.TextXAlignment = Enum.TextXAlignment.Left Option.AutoButtonColor = false Option.ZIndex = 55 Option.Parent = OptionsContainer local OptionPadding = Instance.new("UIPadding") OptionPadding.PaddingLeft = UDim.new(0, 10) OptionPadding.Parent = Option Option.MouseEnter:Connect( function() TweenService:Create(Option, TweenInfo.new(0.1), {BackgroundColor3 = Color3.fromRGB(30, 30, 30)}):Play() end ) Option.MouseLeave:Connect( function() TweenService:Create(Option, TweenInfo.new(0.1), {BackgroundColor3 = Color3.fromRGB(20, 20, 20)}):Play() end ) Option.MouseButton1Click:Connect( function() SelectedScript = script DropdownButton.Text = script.Name DropdownButton.TextColor3 = Color3.fromRGB(200, 200, 200) TweenService:Create( OptionsContainer, TweenInfo.new(0.2, Enum.EasingStyle.Quad), {Size = UDim2.new(1, 0, 0, 0)} ):Play() TweenService:Create(Arrow, TweenInfo.new(0.2), {Rotation = 0}):Play() DropdownOpen = false tweenOutlineSize(false) task.wait(0.2) OptionsContainer.Visible = false end ) end local LoadButton = Instance.new("TextButton") LoadButton.Name = "LoadButton" LoadButton.AnchorPoint = Vector2.new(1, 1) LoadButton.Position = UDim2.new(1, 0, 1, 0) LoadButton.Size = UDim2.new(0, 90, 0, 27) LoadButton.BackgroundColor3 = AccentColor LoadButton.BorderSizePixel = 0 LoadButton.Text = "Load Script" LoadButton.TextColor3 = Color3.fromRGB(20, 20, 20) LoadButton.Font = Enum.Font.GothamBold LoadButton.TextSize = 13 LoadButton.AutoButtonColor = false LoadButton.ZIndex = 52 LoadButton.Parent = ContentArea local LoadButtonCorner = Instance.new("UICorner") LoadButtonCorner.CornerRadius = UDim.new(0, 4) LoadButtonCorner.Parent = LoadButton LoadButton.MouseEnter:Connect( function() TweenService:Create(LoadButton, TweenInfo.new(0.2), {BackgroundColor3 = Color3.fromRGB(227, 247, 20)}):Play() end ) LoadButton.MouseLeave:Connect( function() TweenService:Create(LoadButton, TweenInfo.new(0.2), {BackgroundColor3 = AccentColor}):Play() end ) local DROPDOWN_HEIGHT = 40 local LOAD_BUTTON_HEIGHT = 27 local PADDING = 20 local HEADER_OFFSET = 85 local FOOTER_OFFSET = 20 local OUTLINE_INSET = 2 local COMPACT_HEIGHT = HEADER_OFFSET + DROPDOWN_HEIGHT + PADDING + LOAD_BUTTON_HEIGHT + FOOTER_OFFSET + (OUTLINE_INSET * 2) local OPTIONS_MAX_HEIGHT = 248 local OPTION_ITEM_HEIGHT = 35 local IDEAL_OPTIONS_HEIGHT = #Scripts * OPTION_ITEM_HEIGHT local DROP_HEIGHT = math.min(IDEAL_OPTIONS_HEIGHT, OPTIONS_MAX_HEIGHT) local EXPANDED_HEIGHT = HEADER_OFFSET + DROPDOWN_HEIGHT + 5 + DROP_HEIGHT + PADDING + LOAD_BUTTON_HEIGHT + FOOTER_OFFSET + (OUTLINE_INSET * 2) local function tweenOutlineSize(isExpanded) local targetHeight = isExpanded and EXPANDED_HEIGHT or COMPACT_HEIGHT local tweenInfo = TweenInfo.new(0.3, Enum.EasingStyle.Quad, Enum.EasingDirection.Out) TweenService:Create(Outline, tweenInfo, {Size = UDim2.new(0, Outline.Size.X.Offset, 0, targetHeight)}):Play() end Outline.Size = UDim2.new(0, 400, 0, COMPACT_HEIGHT) local DropdownOpen = false DropdownButton.MouseButton1Click:Connect( function() DropdownOpen = not DropdownOpen if DropdownOpen then OptionsContainer.Visible = true OptionsContainer.CanvasSize = UDim2.new(0, 0, 0, IDEAL_OPTIONS_HEIGHT) tweenOutlineSize(true) TweenService:Create( OptionsContainer, TweenInfo.new(0.3, Enum.EasingStyle.Quad), {Size = UDim2.new(1, 0, 0, DROP_HEIGHT)} ):Play() TweenService:Create(Arrow, TweenInfo.new(0.3), {Rotation = 180}):Play() else TweenService:Create( OptionsContainer, TweenInfo.new(0.3, Enum.EasingStyle.Quad), {Size = UDim2.new(1, 0, 0, 0)} ):Play() TweenService:Create(Arrow, TweenInfo.new(0.3), {Rotation = 0}):Play() tweenOutlineSize(false) task.wait(0.3) OptionsContainer.Visible = false end end ) local function FadeOutEverything() if Sound then TweenService:Create(Sound, TweenInfo.new(0.3), {Volume = 0}):Play() end TweenService:Create(Blur, TweenInfo.new(0.3), {Size = 0}):Play() TweenService:Create(Outline, TweenInfo.new(0.3), {BackgroundTransparency = 1}):Play() TweenService:Create(OutlineStroke, TweenInfo.new(0.3), {Transparency = 1}):Play() TweenService:Create(Inline, TweenInfo.new(0.3), {BackgroundTransparency = 1}):Play() TweenService:Create(Logo, TweenInfo.new(0.3), {ImageTransparency = 1}):Play() TweenService:Create(Title, TweenInfo.new(0.3), {TextTransparency = 1}):Play() TweenService:Create(CloseButton, TweenInfo.new(0.3), {TextTransparency = 1}):Play() TweenService:Create(Line, TweenInfo.new(0.3), {BackgroundTransparency = 1}):Play() TweenService:Create(DragBar, TweenInfo.new(0.3), {BackgroundTransparency = 1}):Play() TweenService:Create(DragBarStroke, TweenInfo.new(0.3), {Transparency = 1}):Play() TweenService:Create(DropdownContainer, TweenInfo.new(0.3), {BackgroundTransparency = 1}):Play() TweenService:Create(DropdownStroke, TweenInfo.new(0.3), {Transparency = 1}):Play() TweenService:Create(DropdownButton, TweenInfo.new(0.3), {TextTransparency = 1}):Play() TweenService:Create(Arrow, TweenInfo.new(0.3), {TextTransparency = 1}):Play() TweenService:Create(LoadButton, TweenInfo.new(0.3), {BackgroundTransparency = 1}):Play() TweenService:Create(LoadButton, TweenInfo.new(0.3), {TextTransparency = 1}):Play() TweenService:Create(OptionsContainer, TweenInfo.new(0.3), {BackgroundTransparency = 1}):Play() TweenService:Create(OptionsStroke, TweenInfo.new(0.3), {Transparency = 1}):Play() for _, option in pairs(OptionsContainer:GetChildren()) do if option:IsA("TextButton") then TweenService:Create(option, TweenInfo.new(0.3), {BackgroundTransparency = 1}):Play() TweenService:Create(option, TweenInfo.new(0.3), {TextTransparency = 1}):Play() end end for _, snow in pairs(SnowContainer:GetChildren()) do if snow:IsA("Frame") then TweenService:Create(snow, TweenInfo.new(0.3), {BackgroundTransparency = 1}):Play() end end task.wait(0.3) Blur:Destroy() ScreenGui:Destroy() end CloseButton.MouseButton1Click:Connect( function() FadeOutEverything() end ) LoadButton.MouseButton1Click:Connect( function() if SelectedScript then TweenService:Create(LoadButton, TweenInfo.new(0.15), {BackgroundColor3 = Color3.fromRGB(180, 200, 0)}):Play( ) task.wait(0.15) pcall( function() SelectedScript.Code() end ) FadeOutEverything() else TweenService:Create(LoadButton, TweenInfo.new(0.2), {BackgroundColor3 = Color3.fromRGB(255, 100, 100)}):Play( ) task.wait(0.5) TweenService:Create(LoadButton, TweenInfo.new(0.2), {BackgroundColor3 = AccentColor}):Play() end end ) local Dragging = false local DragStart = nil local StartPos = nil DragButton.MouseButton1Down:Connect( function() Dragging = true local mouse = UserInputService:GetMouseLocation() DragStart = Vector2.new(mouse.X, mouse.Y) StartPos = Outline.Position TweenService:Create(DragBar, TweenInfo.new(0.1), {BackgroundColor3 = Color3.fromRGB(50, 50, 50)}):Play() end ) UserInputService.InputEnded:Connect( function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 and Dragging then Dragging = false TweenService:Create(DragBar, TweenInfo.new(0.1), {BackgroundColor3 = Color3.fromRGB(30, 30, 30)}):Play() end end ) UserInputService.InputChanged:Connect( function(input) if input.UserInputType == Enum.UserInputType.MouseMovement and Dragging then local mouse = UserInputService:GetMouseLocation() local delta = Vector2.new(mouse.X - DragStart.X, mouse.Y - DragStart.Y) Outline.Position = UDim2.new(StartPos.X.Scale, StartPos.X.Offset + delta.X, StartPos.Y.Scale, StartPos.Y.Offset + delta.Y) end end ) UserInputService.InputBegan:Connect( function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 and DropdownOpen then local mouse = UserInputService:GetMouseLocation() local guiInset = GuiService:GetGuiInset() local adjusted = Vector2.new(mouse.X, mouse.Y - guiInset.Y) local dropPos = DropdownContainer.AbsolutePosition local dropSize = DropdownContainer.AbsoluteSize local optPos = OptionsContainer.AbsolutePosition local optSize = OptionsContainer.AbsoluteSize local inDrop = adjusted.X >= dropPos.X and adjusted.X <= dropPos.X + dropSize.X and adjusted.Y >= dropPos.Y and adjusted.Y <= dropPos.Y + dropSize.Y local inOpt = adjusted.X >= optPos.X and adjusted.X <= optPos.X + optSize.X and adjusted.Y >= optPos.Y and adjusted.Y <= optPos.Y + optSize.Y if not inDrop and not inOpt then DropdownOpen = false TweenService:Create( OptionsContainer, TweenInfo.new(0.2, Enum.EasingStyle.Quad), {Size = UDim2.new(1, 0, 0, 0)} ):Play() TweenService:Create(Arrow, TweenInfo.new(0.2), {Rotation = 0}):Play() tweenOutlineSize(false) task.wait(0.2) OptionsContainer.Visible = false end end end )