So, I want to spawn 4 frames around another frame and change they visibillity togather.
The problem that roblox studio crashes after i try to change parent of other 4 frames.
My script:
local skillTreeHelper = script.Parent
local skillTree = script.Parent.Parent.skillTree
local Clones = {
}
for i = 1,4 do
task.wait()
local Clone = skillTreeHelper:Clone()
Clone.Parent = skillTreeHelper.Parent
Clone.Position = skillTree.Position
if i == 1 then
Clone.Position = UDim2.new(UDim.new(Clone.Position.Width.Scale,Clone.Position.Width.Offset + skillTree.Position.Width.Offset * 2),UDim.new(Clone.Position.Height.Scale,Clone.Position.Height.Offset))
end
if i == 2 then
Clone.Position = UDim2.new(UDim.new(Clone.Position.Width.Scale ,Clone.Position.Width.Offset - skillTree.Position.Width.Offset * 2),UDim.new(Clone.Position.Height.Scale,Clone.Position.Height.Offset))
end
if i == 3 then
Clone.Position = UDim2.new(UDim.new(Clone.Position.Width.Scale,Clone.Position.Width.Offset),UDim.new(Clone.Position.Height.Scale,Clone.Position.Height.Offset + skillTree.Position.Height.Offset * 2))
end
if i == 4 then
Clone.Position = UDim2.new(UDim.new(Clone.Position.Width.Scale,Clone.Position.Width.Offset),UDim.new(Clone.Position.Height.Scale,Clone.Position.Height.Offset - skillTree.Position.Width.Offset * 2))
end
Clone.Size = skillTree.Size
table.insert(Clones,i,Clone)
end
local function ChangedVisibillity()
if skillTree.Visible == true then
for i,v in pairs(Clones) do
v.Visible = true
end
elseif skillTree.Visible == false then
for i,v in pairs(Clones) do
v.Visible = false
end
end
end
skillTree:GetPropertyChangedSignal("Visible"):Connect(ChangedVisibillity)
I tried:
- Add on first line:repeat task.wait() until (script.Parent.Parent.Parent ~= game:GetService(“StarterGui”))
2.Add to string when i add 4 frames into table like this:
table.insert(Clones,i,tostring(Clone))
instead of thistable.insert(Clones,i,Clone)