I've had an idea of how to come across this but my script does not seem to work. When the player spawns in, I give them custom clothes but when they die, they return back to their original state before they spawned/got the clothes(no clothes). And yes, I have Load Character Appearance off.
In my script, when the player dies, it puts the clothes in the character's body but when the character respawns the clothes disappear and the folder is empty. Also, when the character respawns, it adds another folder with the character's name which is empty so it cancels out the other folder making it inaccessible.
Is there any possible way to do this? I've ran out of ideas. Sorry if my code is a little sloppy.
Script in ServerScriptService:
game.Players.PlayerAdded:Connect(function(p)
p.CharacterAdded:Connect(function(char)
local hum = char:WaitForChild("Humanoid")
local playergui = p:WaitForChild("PlayerGui")
local playeraccessories = Instance.new("Folder", script)
playeraccessories.Name = p.name.."'s Accessories"
p:WaitForChild("Spawned").Changed:Connect(function(newvalue)
if newvalue == true then
playergui.SpawnClothes:Destroy(p)
game.StarterGui.SpawnClothes:Destroy()
for _, children in pairs(char:GetChildren()) do
if children:IsA("Shirt") or children:IsA("Pants") then
local clonedclothes = children:Clone()
clonedclothes.Parent = playeraccessories
end
end
end
end)
hum.Died:Connect(function()
while true do
wait(1.5)
if char and not char:FindFirstChild("Shirt") or not char:FindFirstChild("Pants") then
for _, clothes in pairs(playeraccessories:GetChildren()) do
if playeraccessories.Name == p.Name.."'s Accessories" then
local c = clothes:Clone()
c.Parent = char
end
end
end
end
end)
end)
end)
