What is gui.enabled

I don’t understand what layercollector is when the wiki explains gui.enabled image

It basically determines whether all of the LayerCollector’s descendants are visible. Scripts and UI sizing will still update regardless of whether this is enabled.

LayerCollector inherits all these instances:
image

This is an easy way that Roblox can share properties and methods among other instances without the hassle of manually coding in the properties and methods. These “container” classes (as i’d like to call them) are only containers to hold things that other classes can use.

For instance, BillboardGui contains everything inside LayerCollector, GuiBase2d, Instance, but it also has its own properties, methods, and events.

You can not use anything with GuiBase2d, LayerCollector, and Instance alone, but you can certainly use BillboardGuis to interact with all the properties given.

what is layercollector??? and how can it be used effectively by turning it off?

It’s a superclass that contains all of the instances that are shown in @good_evening’s post.

It’s like how the BasePart superclass is composed of Parts, MeshParts, and Unions.

What can you achieve by turning layercollector off? Is there much use for it?

I’m a bit confused. You can’t disable whether something is part of a superclass or not. The Enabled property of LayerCollectors is basically just saying that BillboardGuis, ScreenGuis, PluginGuis, and SurfaceGuis have the Enabled property. It just inherits the properties from its superclass.

For example, if we look at the BasePart superclass, it has properties such as Transparency, Color, Anchored, CanCollide etc., which just says that every BasePart has this property.
https://developer.roblox.com/en-us/api-reference/class/BasePart

What does it do to a gui when the enabled property is false? I just don’t know what it does exactly or whats the point of changing this property is all.

1 Like

Ohh my bad, it just determines whether the descendants of it that are GuiObjects are visible or not. It doesn’t affect UI sizing, script performance, or anything that may be a descendant of it except for GuiObjects (frames, buttons, textboxes, labels etc)

1 Like