This works for my leaderboard but not for my attributes(Dex, Hp etc..) values. My output log says it's saved after leaving and loaded when I enter the game.
-- Saving
game.Players.PlayerRemoving:connect(function(player)
local datastore = game:GetService("DataStoreService"):GetDataStore(player.userId.."att")
local statstorage = player:FindFirstChild("attributes"):GetChildren()
for i = 1, #statstorage do
datastore:SetAsync(statstorage[i].Name, statstorage[i].Value)
print("saved data number "..i)
end
print("Att successfully saved")
end)
-- Loading
game.Players.PlayerAdded:connect(function(player)
local datastore = game:GetService("DataStoreService"):GetDataStore(player.userId.."att")
player:WaitForChild("attributes")
wait(1)
local stats = player:FindFirstChild("attributes"):GetChildren()
for i = 1, #stats do
stats[i].Value = datastore:GetAsync(stats[i].Name)
print("Att number "..i.." has been found")
end
end)
