Gui Components Library

You’re such a legend!! Thank you so much!

2 Likes

I needed this so badly :sob:. Finally my plugins will look good. StudioWidgets library by roblox is broken.

2 Likes

Whoa this is AWESOME. I never even thought of this before haha

1 Like

EgoMoose never seems to surprise me with his amazing work

2 Likes

Amazing! Will definitely use it. Thank you so much!

2 Likes

I like the idea of making an inventory system with that radial menu.

1 Like

This is great, I’m making an emote system with the radial menu. It’s really easy to use and extremely helpful, especially the text masking.

1 Like

Oh my god this is so good! You are the best!

Will there be Color Pickers added?

1 Like

Cool
Is this mobile friendly and/or xbox friendly?

1 Like

This is great, thank you for posting this.

There are enaugh topics about that already, just search it :wink:

1 Like

This is an amazing resource! I have one question though, I noticed that the radial backpack relies on an edited version of the PlayerModule. Is likely that this will cause bugs when Roblox updates?

Hey! I used your radial menu code from your rbxl file.
Most of the time it works but some times it crashes my game with this error.


image

Seems to be originating from this line?

Love the work you’ve done and would appreciate if you knew the issue, thanks!

When you have loops like that, sometimes you have to have a task.wait() after a certain amount of iterations, especially if you have a lot of iterations. I’ve had this with a couple of other scripts of mine, but they usually are fixed after adding an occasional wait.

You can add the wait I did by probably doing something like:

if i%20 == 0 then
   task.wait()
end

The 20 means that every 20 iterations, it will run that task.wait(). Of course, you will need to change it as your circumstances are different than mine, but this should work.

This seems really cool, however I think the radial menu uses too many viewport frames for it to work well on lower end devices, it also prevents me from doing things like having draggable UI. I love the idea of a radial inventory, however I can’t seem to find a way to drag the buttons since they technically aren’t buttons but are actually a TON of wedges in one of many viewport frames. Cool library, I just wish that the radial menu had a bit more support put into it.

Edit: also whenever an item is added or removed from my backpack I have to delete the old radial menu and create a new one, which can cause lag if it doesn’t properly get cleaned up, especially if it’s done very quickly.

These Gui components should be directly integrated into Roblox.

1 Like

Nobody has been here for awhile but can i have an example on how to make a dropdown menu? the github has no guide to doing

2 Likes

I’m wondering the same! I need to make a pretty advanced group menu and I will be using the dropdown menu

1 Like

Heya i ended up figuring it out!
if i remember correctly, there was documentation within the module itself i can give a simple example here anyway:

so you wanna use the defaults to grab the dropdowns and then you just clone them into your gui under your local script, and to make it function you do:

local GuiLib = script:WaitForChild("GuiLib")
local Lazy = require(GuiLib:WaitForChild("LazyLoader"))
local ListCreation = require(GuiLib.Constructors:WaitForChild("List"))
local DropdownClass = require(GuiLib.Classes:WaitForChild("Dropdown"))

-- Making a dropdown, you can repeat this however much you want.

local WhateverdropdownButton = YOURGUIPATH.DropdownFrame.DropdownButton
local Whatever_dropdownList = ListCreation.Create({"On", "Off"}, 2) -- On + off and the options, these use a table if i remember correctly 2 is the max displayed at once.
local Whatever_dropdownInstance = DropdownClass.new(WhateverdropdownButton, Whatever_dropdownList)
-- Simple examples on how to get/set data from these:

function SelectedOption(option)
	print("Dropdown selected:", option)
end

Whatever_dropdownInstance.Changed:Connect(SelectedOption) -- Would return On_Button / Off_Button

-- Using Get/Set Methods:

Whatever_dropdownInstance:Set(Whatever_dropdownList.ScrollFrame.On_Button) -- Set takes in an dropdown button object, so you will need to know what the thing you are trying to set to is called.

local WhateverValue = Whatever_dropdownInstance:Get() -- Returns [NAME]_Button

Thats the basics, if this doesnt work let me know lol

Yeah this module is really nice once you learn to use it

1 Like