How do you check if a part name exists already? Like how would you create a loop that would constantly run until it finds a part with the name that I want already, but then it checks again if the name I want to change the part to also exists without hardcoding a loop like 50 times. I keep trying to logic through this but then I get stumped and im back to square one.
--What i'm trying to do
local part = Instance.new("Part", game.Workspace) --Part we will be checking to see if it exists
part.Name = "IAmAPart" --The parts name
local anotherPart = Instance.new("Part", game.Workspace) --The other part that will also have the same name
anotherPart.Name = "IAmAPart" --This new part is also named the same as the first part we created in the beginning of the script
for i,v in ipairs(game.Workspace:GetChildren()) do --Iterate through all the parts in the workspace
if v:IsA("BasePart") then
if v.Name == part.Name then --Hey, these two parts have the same name!
part.Name = "IAmAnotherPart" --No more name conflicts! Huzzah!
end
end
end
But what if something like this happens...
--What i'm trying to do
local part = Instance.new("Part", game.Workspace) --Part we will be checking to see if it exists
part.Name = "IAmAPart" --The parts name
local anotherPart = Instance.new("Part", game.Workspace) --The other part that will also have the same name
anotherPart.Name = "IAmAPart" --This new part is also named the same as the first part we created in the beginning of the script
local theThirdWheel = Instance.new("Part", game.Workspace) --Oh wait, another part?
theThirdWheel.Name = "IAmAnotherPart" --But its named what I want to change the first one to...
for i,v in ipairs(game.Workspace:GetChildren()) do --Iterate through all the parts in the workspace
if v:IsA("BasePart") then
if v.Name == part.Name then --Hey, these two parts have the same name!
part.Name = "IAmAnotherPart" --This will clear up the naming conflict with the first two parts, but now the first and third have a naming conflict!
for a,b in ipairs(game.Workspace:GetChildren()) do --So how can I have it iterate through the loops again without doing this again?
if b.Name == part.Name then
--More loops blah blah
end
end
end
end
end

1 comment
I feel so dumb right now