So I have an instructions GUI with lots of buttons and frames, and the script that makes the frames open and close is extremely inefficient. I have to manually add each frame every time a add a new button to the GUI, and its super time consuming. What I would like to know is if there is a function that can get all the children of a frame except one specific one. Is that possible?
local BUTTON = script.Parent
local TlFRAME = BUTTON.Parent.Parent
local FRAME = TlFRAME.Arbalest
local NAME = BUTTON.Text
local ITEMNAME = FRAME.Itemname
local CRUDECLUB = TlFRAME.CrudeClub
local HUNTINGCLUB = TlFRAME.HuntingClub
local FLINT = TlFRAME.Flint
local CRUDEBUCKET = TlFRAME.CrudeBucket
local COPPERAXE = TlFRAME.CopperAxe
local COPPERPICKAXE = TlFRAME.CopperPickaxe
local IRONAXE = TlFRAME.IronAxe
local IRONPICKAXE = TlFRAME.IronPickaxe
local CRUDEBOW = TlFRAME.CrudeBow
local CRUDEFISHINGROD = TlFRAME.CrudeFishingRod
local LONGBOW = TlFRAME.Longbow
local SHORTBOW = TlFRAME.Shortbow
local HUNTINGBOW = TlFRAME.HuntingBow
local FISHINGROD = TlFRAME.FishingRod
local CROSSBOW = TlFRAME.Crossbow
local ARBALEST = TlFRAME.Arbalest
local STEELAXE = TlFRAME.SteelAxe
local STEELPICKAXE = TlFRAME.SteelPickaxe
local BUCKET = TlFRAME.Bucket
local CRAFTINGKNIFE = TlFRAME.CraftingKnife
local SKINNINGKNIFE = TlFRAME.SkinningKnife
local LUMBERSAW = TlFRAME.Lumbersaw
local SLEDGEHAMMER = TlFRAME.SledgeHammer
local MASONRYHAMMER = TlFRAME.MasonryHammer
local BLUNDERBUSS = TlFRAME.Blunderbuss
local FLINTSTEEL = TlFRAME.FlintSteel
local DYE = TlFRAME.Dye
FRAME.Visible = false
function on_button1_down()
CRUDECLUB.Visible = false
HUNTINGCLUB.Visible = false
FLINT.Visible = false
CRUDEBUCKET.Visible = false
COPPERAXE.Visible = false
COPPERPICKAXE.Visible = false
IRONAXE.Visible = false
IRONPICKAXE.Visible = false
CRUDEBOW.Visible = false
CRUDEFISHINGROD.Visible = false
LONGBOW.Visible = false
SHORTBOW.Visible = false
HUNTINGBOW.Visible = false
FISHINGROD.Visible = false
CROSSBOW.Visible = false
--ARBALEST.Visible = false
STEELAXE.Visible = false
STEELPICKAXE.Visible = false
BUCKET.Visible = false
CRAFTINGKNIFE.Visible = false
SKINNINGKNIFE.Visible = false
LUMBERSAW.Visible = false
SLEDGEHAMMER.Visible = false
MASONRYHAMMER.Visible = false
BLUNDERBUSS.Visible = false
FLINTSTEEL.Visible = false
DYE.Visible = false
ITEMNAME.Text = NAME
FRAME.Visible = (not FRAME.Visible)
end
BUTTON.MouseButton1Down:connect(on_button1_down)

1 comment
That's actually a good answer. Since all the assets are held in TlFRAME and they are all being set to a certain property.