local player = game.Players.LocalPlayer
local mageval = script.Parent.Parent
script.Parent.MouseButton1Click:connect(function(changecostume)
local characterpart = player.Charachter:GetChildren()
for i,v in pairs(characterpart()) do
if v.ClassName == "CharacterMesh" then
v:remove()
else
print("NotAPart")
end
end
wait(2)
local costumechose = player.Costumes.Skeleton:GetChildren()
for i,v in pairs(costumechose()) do
if v.ClassName == "CharacterMesh" then
local clone = v:clone()
clone.Parent = player.Character
else
print("NotAPart")
end
end
end)
why does this clone so many of the same parts? Do I need to add a debounce?

3 comments
If you don't want it to be spamable then you need a debounce
I tried doing that?
Line 14, 'costumechose()' -- why do you have a parenthesis?