Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function dragify(Frame)
- dragToggle = nil
- dragSpeed = .25
- dragInput = nil
- dragStart = nil
- dragPos = nil
- function updateInput(input)
- Delta = input.Position - dragStart
- Position = UDim2.new(startPos.X.Scale, startPos.X.Offset + Delta.X, startPos.Y.Scale, startPos.Y.Offset + Delta.Y)
- game:GetService("TweenService"):Create(Frame, TweenInfo.new(.25), {Position = Position}):Play()
- end
- Frame.InputBegan:Connect(function(input)
- if (input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch) then
- dragToggle = true
- dragStart = input.Position
- startPos = Frame.Position
- input.Changed:Connect(function()
- if (input.UserInputState == Enum.UserInputState.End) then
- dragToggle = false
- end
- end)
- end
- end)
- Frame.InputChanged:Connect(function(input)
- if (input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType == Enum.UserInputType.Touch) then
- dragInput = input
- end
- end)
- game:GetService("UserInputService").InputChanged:Connect(function(input)
- if (input == dragInput and dragToggle) then
- updateInput(input)
- end
- end)
- end
- local Library = {}
- function Library:Create()
- local SCREENUI = Instance.new("ScreenGui")
- local UIListLayout = Instance.new("UIListLayout")
- local UIPadding = Instance.new("UIPadding")
- SCREENUI.Name = "SCREENUI"
- SCREENUI.Parent = game:GetService("CoreGui")
- SCREENUI.ZIndexBehavior = Enum.ZIndexBehavior.Global
- SCREENUI.ResetOnSpawn = false
- UIListLayout.Parent = SCREENUI
- UIListLayout.FillDirection = Enum.FillDirection.Horizontal
- UIListLayout.SortOrder = Enum.SortOrder.LayoutOrder
- UIListLayout.Padding = UDim.new(0, 2)
- UIPadding.Parent = SCREENUI
- UIPadding.PaddingLeft = UDim.new(0, 5)
- UIPadding.PaddingTop = UDim.new(0, 5)
- local Window = {}
- function Window:CreateWindow(title)
- local Visible = true
- local topFrame = Instance.new("Frame")
- local lowerFrame = Instance.new("Frame")
- local titleLabel = Instance.new("TextLabel")
- local placeholderFrame = Instance.new("Frame")
- local mainFrame = Instance.new("Frame")
- local itemHolder = Instance.new("Frame")
- local itemLayout = Instance.new("UIListLayout")
- local placeholderFrame_2 = Instance.new("Frame")
- topFrame.Name = "topFrame"
- topFrame.Parent = SCREENUI
- topFrame.BackgroundColor3 = Color3.fromRGB(165, 0, 152)
- topFrame.BorderSizePixel = 0
- topFrame.Position = UDim2.new(0.00527530536, 0, 0.00819672272, 0)
- topFrame.Size = UDim2.new(0, 215, 0, 20)
- dragify(topFrame)
- game:GetService("UserInputService").InputBegan:Connect(function(input)
- if input.KeyCode == Enum.KeyCode.RightShift then
- if Visible then
- Visible = false
- topFrame.Visible = false
- else
- Visible = true
- topFrame.Visible = true
- end
- end
- end)
- lowerFrame.Name = "lowerFrame"
- lowerFrame.Parent = topFrame
- lowerFrame.AnchorPoint = Vector2.new(1, 0)
- lowerFrame.BackgroundColor3 = Color3.fromRGB(219, 0, 201)
- lowerFrame.BorderSizePixel = 0
- lowerFrame.Position = UDim2.new(1, 0, 1, 0)
- lowerFrame.Size = UDim2.new(0, 215, 0, 38)
- titleLabel.Name = "titleLabel"
- titleLabel.Parent = lowerFrame
- titleLabel.AnchorPoint = Vector2.new(0.5, 0.5)
- titleLabel.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
- titleLabel.BackgroundTransparency = 1.000
- titleLabel.BorderSizePixel = 0
- titleLabel.Position = UDim2.new(0.5, 0, 0.5, 0)
- titleLabel.Size = UDim2.new(0, 197, 0, 26)
- titleLabel.Font = Enum.Font.Code
- titleLabel.Text = title
- titleLabel.TextColor3 = Color3.fromRGB(255, 255, 255)
- titleLabel.TextSize = 20.000
- titleLabel.TextXAlignment = Enum.TextXAlignment.Left
- placeholderFrame.Name = "placeholderFrame"
- placeholderFrame.Parent = lowerFrame
- placeholderFrame.BackgroundColor3 = Color3.fromRGB(39, 39, 39)
- placeholderFrame.BorderSizePixel = 0
- placeholderFrame.Position = UDim2.new(0, 0, 1, 0)
- placeholderFrame.Size = UDim2.new(0, 215, 0, 2)
- mainFrame.Name = "mainFrame"
- mainFrame.Parent = lowerFrame
- mainFrame.BackgroundColor3 = Color3.fromRGB(39, 39, 39)
- mainFrame.BorderSizePixel = 0
- mainFrame.Position = UDim2.new(0, 0, 1.05263078, 0)
- mainFrame.Size = UDim2.new(0, 215, 0, 0)
- itemHolder.Name = "itemHolder"
- itemHolder.Parent = mainFrame
- itemHolder.AnchorPoint = Vector2.new(1, 1)
- itemHolder.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
- itemHolder.BackgroundTransparency = 1.000
- itemHolder.BorderSizePixel = 0
- itemHolder.ZIndex = 2
- itemHolder.Position = UDim2.new(1, 0, 1, 0)
- itemHolder.Size = UDim2.new(1, 0, 1, 0)
- itemLayout.Name = "itemLayout"
- itemLayout.Parent = itemHolder
- itemLayout.SortOrder = Enum.SortOrder.LayoutOrder
- placeholderFrame_2.Name = "placeholderFrame"
- placeholderFrame_2.Parent = mainFrame
- placeholderFrame_2.BackgroundColor3 = Color3.fromRGB(39, 39, 39)
- placeholderFrame_2.BorderSizePixel = 0
- placeholderFrame_2.Position = UDim2.new(0, 0, 1, 0)
- placeholderFrame_2.Size = UDim2.new(0, 215, 0, 2)
- local function Resize()
- local Size = mainFrame.Size
- Size = UDim2.new(mainFrame.Size.X.Scale, mainFrame.Size.X.Offset, mainFrame.Size.Y.Scale, mainFrame.Size.Y.Offset + 23);
- mainFrame.Size = Size
- end
- local Items = {}
- function Items:Button(Text, Callback)
- Resize()
- local buttonStuff = {
- MouseEnterColor = Color3.fromRGB(219, 0, 201);
- MouseLeaveColor = Color3.fromRGB(165, 0, 152);
- TweenColor = function(object,properties)
- game:GetService("TweenService"):Create(object, TweenInfo.new(.2,Enum.EasingStyle.Quad,Enum.EasingDirection.InOut,0,false,0), properties):Play()
- end;
- Ripple = function(btn)
- spawn(function()
- local img = Instance.new('ImageLabel')
- img.BackgroundTransparency = 1
- img.BorderSizePixel = 0
- img.Image = "rbxassetid://3188341304"
- img.ImageColor3 = Color3.new(54/255, 126/255, 207/255)
- img.Size = UDim2.new(0,0,0,0)
- img.Position = UDim2.new(.5,0,.5,0)
- img.Parent = btn
- img:TweenSizeAndPosition(UDim2.new(0,200,0,200),UDim2.new(.5,-100,.5,-100),Enum.EasingDirection.Out,Enum.EasingStyle.Linear,.5)
- for i = 0.1,1,.05 do
- img.ImageTransparency = i
- wait()
- end
- img:Destroy()
- end)
- end
- }
- local buttonHolder = Instance.new("Frame")
- local buttonConnect = Instance.new("TextButton")
- buttonHolder.Name = "buttonHolder"
- buttonHolder.Parent = itemHolder
- buttonHolder.BackgroundColor3 = Color3.fromRGB(39, 39, 39)
- buttonHolder.BackgroundTransparency = 1.000
- buttonHolder.BorderSizePixel = 0
- buttonHolder.Position = UDim2.new(0.210025817, 0, 0.674279809, 0)
- buttonHolder.Size = UDim2.new(0, 215, 0, 23)
- buttonConnect.Name = "buttonConnect"
- buttonConnect.Parent = buttonHolder
- buttonConnect.AnchorPoint = Vector2.new(0.5, 0.5)
- buttonConnect.BackgroundColor3 = Color3.fromRGB(159, 0, 147)
- buttonConnect.BorderSizePixel = 0
- buttonConnect.ClipsDescendants = true
- buttonConnect.Position = UDim2.new(0.5, 0, 0.5, 0)
- buttonConnect.Size = UDim2.new(0, 206, 0, 20)
- buttonConnect.AutoButtonColor = false
- buttonConnect.Font = Enum.Font.Code
- buttonConnect.Text = Text
- buttonConnect.TextColor3 = Color3.fromRGB(255, 255, 255)
- buttonConnect.TextSize = 16.00
- buttonConnect.MouseButton1Down:Connect(function()
- Callback()
- buttonStuff.Ripple(buttonConnect)
- buttonStuff.TweenColor(buttonConnect, {BackgroundColor3 = buttonStuff.MouseEnterColor})
- end)
- buttonConnect.MouseEnter:Connect(function()
- buttonStuff.TweenColor(buttonConnect, {BackgroundColor3 = buttonStuff.MouseEnterColor})
- end)
- buttonConnect.MouseLeave:Connect(function()
- buttonStuff.TweenColor(buttonConnect, {BackgroundColor3 = buttonStuff.MouseLeaveColor})
- end)
- end
- function Items:TextBox(Text, Callback)
- Resize()
- local boxHolder = Instance.new("Frame")
- local boxConnect = Instance.new("TextBox")
- boxHolder.Name = "boxHolder"
- boxHolder.Parent = itemHolder
- boxHolder.BackgroundColor3 = Color3.fromRGB(39, 39, 39)
- boxHolder.BackgroundTransparency = 1.000
- boxHolder.BorderSizePixel = 0
- boxHolder.Position = UDim2.new(0.210025817, 0, 0.757103384, 0)
- boxHolder.Size = UDim2.new(0, 215, 0, 23)
- boxConnect.Name = "boxConnect"
- boxConnect.Parent = boxHolder
- boxConnect.AnchorPoint = Vector2.new(0.5, 0.5)
- boxConnect.BackgroundColor3 = Color3.fromRGB(159, 0, 147)
- boxConnect.BorderSizePixel = 0
- boxConnect.Position = UDim2.new(0.5, 0, 0.5, 0)
- boxConnect.Size = UDim2.new(0, 206, 0, 20)
- boxConnect.Font = Enum.Font.Code
- boxConnect.PlaceholderText = Text
- boxConnect.Text = ""
- boxConnect.TextColor3 = Color3.fromRGB(255, 255, 255)
- boxConnect.TextSize = 16.000
- local boxStuff = {
- MouseEnterColor = Color3.fromRGB(219, 0, 201);
- MouseLeaveColor = Color3.fromRGB(165, 0, 152);
- TweenColor = function(object,properties)
- game:GetService("TweenService"):Create(object, TweenInfo.new(.2,Enum.EasingStyle.Quad,Enum.EasingDirection.InOut,0,false,0), properties):Play()
- end;
- focused = false;
- }
- boxConnect.Focused:Connect(function()
- boxStuff.focused = true
- boxStuff.TweenColor(boxConnect, {BackgroundColor3 = boxStuff.MouseLeaveColor})
- wait(.2)
- boxStuff.TweenColor(boxConnect, {BackgroundColor3 = boxStuff.MouseEnterColor})
- end)
- boxConnect.FocusLost:Connect(function()
- Callback(boxConnect.Text)
- boxStuff.focused = false
- boxConnect.Text = ""
- boxStuff.TweenColor(boxConnect, {BackgroundColor3 = boxStuff.MouseLeaveColor})
- wait(.2)
- boxStuff.TweenColor(boxConnect, {BackgroundColor3 = boxStuff.MouseEnterColor})
- wait(.2)
- boxStuff.TweenColor(boxConnect, {BackgroundColor3 = boxStuff.MouseLeaveColor})
- end)
- boxConnect.MouseEnter:Connect(function()
- boxStuff.TweenColor(boxConnect, {BackgroundColor3 = boxStuff.MouseEnterColor})
- end)
- boxConnect.MouseLeave:Connect(function()
- if boxStuff.focused then
- boxStuff.TweenColor(boxConnect, {BackgroundColor3 = boxStuff.MouseEnterColor})
- else
- boxStuff.TweenColor(boxConnect, {BackgroundColor3 = boxStuff.MouseLeaveColor})
- end
- end)
- end
- function Items:Slider(Text, minAmmount, maxAmmount, Callback)
- Resize()
- local sliderHolder = Instance.new("Frame")
- local sliderFrame = Instance.new("TextButton")
- local sliderObject = Instance.new("TextButton")
- local sliderText = Instance.new("TextLabel")
- sliderHolder.Name = "sliderHolder"
- sliderHolder.Parent = itemHolder
- sliderHolder.BackgroundColor3 = Color3.fromRGB(39, 39, 39)
- sliderHolder.BackgroundTransparency = 1.000
- sliderHolder.BorderSizePixel = 0
- sliderHolder.Position = UDim2.new(0.210025817, 0, 0.841245651, 0)
- sliderHolder.Size = UDim2.new(0, 215, 0, 23)
- sliderFrame.Name = "sliderFrame"
- sliderFrame.Parent = sliderHolder
- sliderFrame.AnchorPoint = Vector2.new(0.5, 0.5)
- sliderFrame.BackgroundColor3 = Color3.fromRGB(159, 0, 147)
- sliderFrame.BorderSizePixel = 0
- sliderFrame.Position = UDim2.new(0.5, 0, 0.5, 0)
- sliderFrame.Size = UDim2.new(0, 206, 0, 20)
- sliderFrame.AutoButtonColor = false
- sliderFrame.Font = Enum.Font.Code
- sliderFrame.Text = ""
- sliderFrame.TextColor3 = Color3.fromRGB(255, 255, 255)
- sliderFrame.TextSize = 18.000
- sliderObject.Name = "sliderObject"
- sliderObject.Parent = sliderFrame
- sliderObject.BackgroundColor3 = Color3.fromRGB(219, 0, 201)
- sliderObject.BorderSizePixel = 0
- sliderObject.ClipsDescendants = true
- sliderObject.Size = UDim2.new(0, 0, 0, 20)
- sliderObject.AutoButtonColor = false
- sliderObject.Font = Enum.Font.Code
- sliderObject.Text = ""
- sliderObject.TextColor3 = Color3.fromRGB(255, 255, 255)
- sliderObject.TextSize = 18.000
- sliderText.Name = "sliderText"
- sliderText.Parent = sliderFrame
- sliderText.AnchorPoint = Vector2.new(0.5, 0.5)
- sliderText.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
- sliderText.BackgroundTransparency = 1.000
- sliderText.BorderSizePixel = 0
- sliderText.Position = UDim2.new(0.49999994, 0, 0.5, 0)
- sliderText.Size = UDim2.new(0, 206, 0, 20)
- sliderText.Font = Enum.Font.Code
- sliderText.Text = Text
- sliderText.TextColor3 = Color3.fromRGB(255, 255, 255)
- sliderText.TextSize = 16.000
- sliderText.TextTransparency = 0.500
- sliderText.TextWrapped = true
- local TweenColor = function(object,properties)
- game:GetService("TweenService"):Create(object, TweenInfo.new(.2,Enum.EasingStyle.Quad,Enum.EasingDirection.InOut,0,false,0), properties):Play()
- end;
- local MouseEnterColor = Color3.fromRGB(219, 0, 201);
- local MouseLeaveColor = Color3.fromRGB(165, 0, 152);
- sliderFrame.MouseEnter:Connect(function()
- TweenColor(sliderText, {TextTransparency = 0})
- end)
- sliderFrame.MouseLeave:Connect(function()
- TweenColor(sliderText, {TextTransparency = .5})
- end)
- local renderSteppedConnection = nil
- local inputBeganConnection = nil
- local inputEndedConnection = nil
- local mouseLeaveConnection = nil
- local mouseDownConnection = nil
- local mouseUpConnection = nil
- sliderFrame.MouseEnter:Connect(function()
- local function Update()
- if renderSteppedConnection then renderSteppedConnection:Disconnect() end
- renderSteppedConnection = game:GetService("RunService").RenderStepped:Connect(function()
- local Mouse = game:GetService('UserInputService'):GetMouseLocation()
- local Percent = (Mouse.X - sliderFrame.AbsolutePosition.X) / (sliderFrame.AbsoluteSize.X)
- Percent = math.clamp(Percent, 0, 1)
- Percent = tonumber(string.format('%.2f', Percent))
- sliderObject:TweenSize(UDim2.new(math.clamp(Percent, 0, 01), 0, 0, 20), Enum.EasingDirection.InOut, Enum.EasingStyle.Quad, .05, true)
- local Number = math.floor(minAmmount + (maxAmmount - minAmmount) * Percent)
- sliderText.Text = Text .. ": " .. Number
- Callback(Number)
- end)
- end
- function Disconnect()
- if renderSteppedConnection then renderSteppedConnection:Disconnect() end
- if inputBeganConnection then inputBeganConnection:Disconnect() end
- if inputEndedConnection then inputEndedConnection:Disconnect() end
- if mouseLeaveConnection then mouseLeaveConnection:Disconnect() end
- if mouseUpConnection then mouseUpConnection:Disconnect() end
- end
- inputBeganConnection = sliderFrame.InputBegan:connect(function(input)
- if input.UserInputType == Enum.UserInputType.MouseButton1 then
- Update()
- end
- end)
- inputEndedConnection = sliderFrame.InputEnded:connect(function(input)
- if input.UserInputType == Enum.UserInputType.MouseButton1 then
- Disconnect()
- end
- end)
- mouseDownConnection = sliderObject.MouseButton1Down:Connect(Update)
- mouseUpConnection = game:GetService('UserInputService').InputEnded:connect(function(a, b)
- if a.UserInputType == Enum.UserInputType.MouseButton1 and (mouseDownConnection.Connected) then
- Disconnect()
- end
- end)
- end)
- end
- function Items:Toggle(Text, Callback)
- Resize()
- local toggleHolder = Instance.new("Frame")
- local toggleOutline = Instance.new("Frame")
- local toggleBox = Instance.new("Frame")
- local toggleText = Instance.new("TextLabel")
- local toggleConnect = Instance.new("TextButton")
- toggleHolder.Name = "toggleHolder"
- toggleHolder.Parent = itemHolder
- toggleHolder.BackgroundColor3 = Color3.fromRGB(39, 39, 39)
- toggleHolder.BackgroundTransparency = 1.000
- toggleHolder.BorderSizePixel = 0
- toggleHolder.Position = UDim2.new(0.210025817, 0, 0.507912457, 0)
- toggleHolder.Size = UDim2.new(0, 215, 0, 23)
- toggleOutline.Name = "toggleOutline"
- toggleOutline.Parent = toggleHolder
- toggleOutline.AnchorPoint = Vector2.new(0.5, 0.5)
- toggleOutline.BackgroundColor3 = Color3.fromRGB(39, 39, 39)
- toggleOutline.BorderColor3 = Color3.fromRGB(165, 0, 152)
- toggleOutline.Position = UDim2.new(0.926046491, 0, 0.5, 0)
- toggleOutline.Size = UDim2.new(0, 20, 0, 20)
- toggleBox.Name = "toggleBox"
- toggleBox.Parent = toggleOutline
- toggleBox.AnchorPoint = Vector2.new(0.5, 0.5)
- toggleBox.BackgroundColor3 = Color3.fromRGB(165, 0, 152)
- toggleBox.BorderColor3 = Color3.fromRGB(219, 0, 201)
- toggleBox.BorderSizePixel = 0
- toggleBox.Position = UDim2.new(0.5, 0, 0.5, 0)
- toggleText.Name = "toggleText"
- toggleText.Parent = toggleHolder
- toggleText.AnchorPoint = Vector2.new(0.5, 0.5)
- toggleText.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
- toggleText.BackgroundTransparency = 1.000
- toggleText.BorderSizePixel = 0
- toggleText.Position = UDim2.new(0.442000011, 0, 0.5, 0)
- toggleText.Size = UDim2.new(0, 178, 0, 20)
- toggleText.Font = Enum.Font.Code
- toggleText.Text = Text
- toggleText.TextColor3 = Color3.fromRGB(255, 255, 255)
- toggleText.TextSize = 16.000
- toggleText.TextWrapped = true
- toggleText.TextXAlignment = Enum.TextXAlignment.Left
- toggleConnect.Name = "toggleConnect"
- toggleConnect.Parent = toggleHolder
- toggleConnect.AnchorPoint = Vector2.new(0.5, 0.5)
- toggleConnect.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
- toggleConnect.BackgroundTransparency = 1.000
- toggleConnect.Position = UDim2.new(0.939999998, 0, 0.5, 0)
- toggleConnect.Size = UDim2.new(0, 20, 0, 20)
- toggleConnect.Font = Enum.Font.SourceSans
- toggleConnect.Text = ""
- toggleConnect.TextColor3 = Color3.fromRGB(0, 0, 0)
- toggleConnect.TextSize = 14.000
- local toggleStuff = {
- MouseEnterColor = Color3.fromRGB(219, 0, 201);
- MouseLeaveColor = Color3.fromRGB(165, 0, 152);
- ToggledSize = UDim2.new(0, 18, 0, 18);
- UntoggledSize = UDim2.new(0, 0, 0, 0);
- TweenColor = function(object,properties)
- game:GetService("TweenService"):Create(object, TweenInfo.new(.2,Enum.EasingStyle.Quad,Enum.EasingDirection.InOut,0,false,0), properties):Play()
- end;
- }
- local Toggled = false
- toggleConnect.MouseButton1Down:Connect(function()
- if Toggled == true then
- toggleBox:TweenSize(toggleStuff.UntoggledSize, Enum.EasingDirection.InOut, Enum.EasingStyle.Quad, .2, false, function()
- Toggled = not Toggled
- Callback(Toggled)
- end)
- end
- if Toggled == false then
- toggleBox:TweenSize(toggleStuff.ToggledSize, Enum.EasingDirection.InOut, Enum.EasingStyle.Quad, .2, false, function()
- Toggled = not Toggled
- Callback(Toggled)
- end)
- end
- end)
- toggleConnect.MouseEnter:Connect(function()
- toggleStuff.TweenColor(toggleOutline, {BorderColor3 = toggleStuff.MouseEnterColor})
- toggleStuff.TweenColor(toggleBox, {BackgroundColor3 = toggleStuff.MouseEnterColor})
- end)
- toggleConnect.MouseLeave:Connect(function()
- toggleStuff.TweenColor(toggleOutline, {BorderColor3 = toggleStuff.MouseLeaveColor})
- toggleStuff.TweenColor(toggleBox, {BackgroundColor3 = toggleStuff.MouseLeaveColor})
- end)
- end
- function Items:Dropdown(Text, items, Callback)
- Resize()
- local dropdownHolder = Instance.new("Frame")
- local dropdownConnect = Instance.new("TextButton")
- local rippleEffectHolder = Instance.new("Frame")
- local dropdownItemHolder = Instance.new("Frame")
- local dropdownLayout = Instance.new("UIListLayout")
- local dropdownPadding = Instance.new("UIPadding")
- dropdownHolder.Name = "dropdownHolder"
- dropdownHolder.Parent = itemHolder
- dropdownHolder.BackgroundColor3 = Color3.fromRGB(39, 39, 39)
- dropdownHolder.BackgroundTransparency = 1.000
- dropdownHolder.BorderSizePixel = 0
- dropdownHolder.Position = UDim2.new(0.210025817, 0, 0.590315938, 0)
- dropdownHolder.Size = UDim2.new(0, 215, 0, 23)
- dropdownConnect.Name = "dropdownConnect"
- dropdownConnect.Parent = dropdownHolder
- dropdownConnect.AnchorPoint = Vector2.new(0.5, 0.5)
- dropdownConnect.BackgroundColor3 = Color3.fromRGB(159, 0, 147)
- dropdownConnect.BorderSizePixel = 0
- dropdownConnect.Position = UDim2.new(0.5, 0, 0.5, 0)
- dropdownConnect.Size = UDim2.new(0, 206, 0, 20)
- dropdownConnect.AutoButtonColor = false
- dropdownConnect.Font = Enum.Font.Code
- dropdownConnect.Text = Text
- dropdownConnect.TextColor3 = Color3.fromRGB(255, 255, 255)
- dropdownConnect.TextSize = 16.000
- rippleEffectHolder.Name = "rippleEffectHolder"
- rippleEffectHolder.Parent = dropdownConnect
- rippleEffectHolder.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
- rippleEffectHolder.BackgroundTransparency = 1.000
- rippleEffectHolder.ClipsDescendants = true
- rippleEffectHolder.Size = UDim2.new(0, 206, 0, 20)
- dropdownItemHolder.Name = "dropdownItemHolder"
- dropdownItemHolder.Parent = dropdownConnect
- dropdownItemHolder.BackgroundColor3 = Color3.fromRGB(219, 0, 201)
- dropdownItemHolder.BorderSizePixel = 0
- dropdownItemHolder.ClipsDescendants = true
- dropdownItemHolder.Position = UDim2.new(0, 0, 1, 0)
- dropdownItemHolder.Size = UDim2.new(0, 206, 0, 0)
- dropdownItemHolder.ZIndex = 3
- dropdownLayout.Name = "dropdownLayout"
- dropdownLayout.Parent = dropdownItemHolder
- dropdownLayout.HorizontalAlignment = Enum.HorizontalAlignment.Center
- dropdownLayout.SortOrder = Enum.SortOrder.LayoutOrder
- dropdownLayout.Padding = UDim.new(0, 2)
- dropdownPadding.Name = "dropdownPadding"
- dropdownPadding.Parent = dropdownItemHolder
- dropdownPadding.PaddingTop = UDim.new(0, 2)
- local dropdownStuff = {
- ClosedSize = UDim2.new(0, 206,0, 0);
- OpenSize = UDim2.new(0, 206, 0, 0);
- AddAmmountFirst = 24;
- AddAmmountOthers = 22;
- MouseEnterColor = Color3.fromRGB(219, 0, 201);
- MouseLeaveColor = Color3.fromRGB(165, 0, 152);
- TweenColor = function(object,properties)
- game:GetService("TweenService"):Create(object, TweenInfo.new(.2,Enum.EasingStyle.Quad,Enum.EasingDirection.InOut,0,false,0), properties):Play()
- end;
- CurrentlyOpen = false;
- Ripple = function(btn)
- spawn(function()
- local img = Instance.new('ImageLabel')
- img.BackgroundTransparency = 1
- img.BorderSizePixel = 0
- img.Image = "rbxassetid://3188341304"
- img.ImageColor3 = Color3.new(54/255, 126/255, 207/255)
- img.Size = UDim2.new(0,0,0,0)
- img.Position = UDim2.new(.5,0,.5,0)
- img.Parent = btn
- img:TweenSizeAndPosition(UDim2.new(0,200,0,200),UDim2.new(.5,-100,.5,-100),Enum.EasingDirection.Out,Enum.EasingStyle.Linear,.5)
- for i = 0.1,1,.05 do
- img.ImageTransparency = i
- wait()
- end
- img:Destroy()
- end)
- end;
- }
- local function changeIndex(index)
- for i,v in pairs(itemHolder:GetChildren()) do
- if v.Name ~= "dropdownItemHolder" then
- for i2,v2 in pairs(v:GetDescendants()) do
- if not v2:IsA("UIListLayout") or not v2:IsA("UIPadding") then
- v.ZIndex = index
- end
- end
- end
- end
- end
- dropdownConnect.MouseEnter:Connect(function()
- dropdownStuff.TweenColor(dropdownConnect, {BackgroundColor3 = dropdownStuff.MouseEnterColor})
- end)
- dropdownConnect.MouseLeave:Connect(function()
- dropdownStuff.TweenColor(dropdownConnect, {BackgroundColor3 = dropdownStuff.MouseLeaveColor})
- end)
- dropdownConnect.MouseButton1Down:Connect(function()
- dropdownStuff.Ripple(rippleEffectHolder)
- if dropdownStuff.CurrentlyOpen then
- dropdownItemHolder:TweenSize(dropdownStuff.ClosedSize, Enum.EasingDirection.InOut, Enum.EasingStyle.Quad, .2, false, function()
- dropdownStuff.CurrentlyOpen = not dropdownStuff.CurrentlyOpen
- changeIndex(1)
- end)
- else
- changeIndex(-1)
- dropdownItemHolder:TweenSize(dropdownStuff.OpenSize, Enum.EasingDirection.InOut, Enum.EasingStyle.Quad, .2, false, function()
- dropdownStuff.CurrentlyOpen = not dropdownStuff.CurrentlyOpen
- end)
- end
- end)
- for i,v in pairs(items) do
- local dropdownItem = Instance.new("TextButton")
- dropdownItem.Name = "dropdownItem"
- dropdownItem.Parent = dropdownItemHolder
- dropdownItem.AnchorPoint = Vector2.new(0.5, 0.5)
- dropdownItem.BackgroundColor3 = Color3.fromRGB(159, 0, 147)
- dropdownItem.BorderSizePixel = 0
- dropdownItem.ClipsDescendants = true
- dropdownItem.Position = UDim2.new(0.503953516, 0, 0.5, 0)
- dropdownItem.Size = UDim2.new(0, 200, 0, 20)
- dropdownItem.AutoButtonColor = false
- dropdownItem.Font = Enum.Font.Code
- dropdownItem.Text = v
- dropdownItem.ZIndex = 10
- dropdownItem.TextColor3 = Color3.fromRGB(255, 255, 255)
- dropdownItem.TextSize = 16.000
- dropdownItem.MouseButton1Down:Connect(function()
- dropdownItemHolder:TweenSize(dropdownStuff.ClosedSize, Enum.EasingDirection.InOut, Enum.EasingStyle.Quad, .2, false, function()
- dropdownStuff.CurrentlyOpen = not dropdownStuff.CurrentlyOpen
- end)
- Callback(dropdownItem.Text)
- end)
- dropdownItem.MouseEnter:Connect(function()
- dropdownStuff.TweenColor(dropdownItem, {BackgroundColor3 = dropdownStuff.MouseEnterColor})
- end)
- dropdownItem.MouseLeave:Connect(function()
- dropdownStuff.TweenColor(dropdownItem, {BackgroundColor3 = dropdownStuff.MouseLeaveColor})
- end)
- end
- for i,v in pairs(items) do
- if i == 1 then
- dropdownStuff.OpenSize = UDim2.new(dropdownItemHolder.Size.X.Scale, dropdownItemHolder.Size.X.Offset, dropdownItemHolder.Size.Y.Scale, dropdownItemHolder.Size.Y.Offset + dropdownStuff.AddAmmountFirst)
- end
- if i ~= 1 then
- dropdownStuff.OpenSize = UDim2.new(dropdownItemHolder.Size.X.Scale, dropdownItemHolder.Size.X.Offset, dropdownItemHolder.Size.Y.Scale, dropdownItemHolder.Size.Y.Offset + dropdownStuff.AddAmmountOthers)
- end
- dropdownItemHolder.Size = dropdownStuff.OpenSize
- end
- dropdownItemHolder.Size = UDim2.new(dropdownItemHolder.Size.X.Scale, dropdownItemHolder.Size.X.Offset, dropdownItemHolder.Size.Y.Scale, 0)
- end
- return Items
- end
- return Window
- end
- return Library
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement