Ported Functions: Difference between revisions

ClearAllChildren, FindFirstAncestor, FindFirstAncestorOfClass, FindFirstChildOfClass
(Improvements)
(ClearAllChildren, FindFirstAncestor, FindFirstAncestorOfClass, FindFirstChildOfClass)
Line 27: Line 27:
end
end


return descendants -- returns all children found
return descendants
end
</syntaxhighlight>
== ClearAllChildren ==
Use this when working with releases before 49.
<syntaxhighlight lang="lua">
local function clearAllChildren(instance)
for index, value in ipairs(instance:GetChildren()) do
value:Remove()
end
end
</syntaxhighlight>
== FindFirstAncestor ==
<syntaxhighlight lang="lua">
local function findFirstAncestor(instance, name)
local ancestor = instance.Parent
 
while ancestor and ancestor ~= game do
if ancestor.Name == name then
return ancestor
else
ancestor = ancestor.Parent
end
end
 
return nil
end
</syntaxhighlight>
== FindFirstAncestorOfClass ==
<syntaxhighlight lang="lua">
local function findFirstAncestorOfClass(instance, className)
local ancestor = instance.Parent
 
while ancestor and ancestor ~= game do
if ancestor.ClassName == className then
return ancestor
else
ancestor = ancestor.Parent
end
end
 
return nil
end
</syntaxhighlight>
== FindFirstChildOfClass ==
<syntaxhighlight lang="lua">
local function findFirstChildOfClass(instance, className)
for index, value in ipairs(instance:GetChildren()) do
if value.ClassName == className then
return value
end
end
 
return nil
end
end
</syntaxhighlight>
</syntaxhighlight>