Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local DataStoreService = game:GetService("DataStoreService")
- local DataStore = DataStoreService:GetDataStore("DataStore")
- local Players = game:GetService("Players")
- local Autosave = 10
- local Data
- local StartData = {1}
- local DataNames = {"Stage"}
- local DataTypes = {Instance.new("NumberValue")}
- Players.PlayerAdded:Connect(function(Player)
- local Key = "Key: "..Player.UserId
- local success, errormessage = pcall(function()
- Data = DataStore:GetAsync(Key)
- end)
- local leaderstats = Instance.new("Folder", Player)
- leaderstats.Name = "leaderstats"
- if success then
- if Data == nil then
- print("Data = nil, Setting Data to StartData")
- Data = StartData
- print(Data)
- end
- for X = 1,#Data do
- local Value = DataTypes[X]
- Value.Name = DataNames[X]
- Value.Value = Data[X]
- Value.Parent = leaderstats
- end
- else
- print("Error While Loading Data, Setting To Default Values Anyway. ErrorMessage: "..errormessage)
- for X = 1,#StartData do
- local Value = DataTypes[X]
- Value.Name = DataNames[X]
- Value.Value = StartData[X]
- Value.Parent = leaderstats
- end
- end
- while wait(Autosave) do
- local DataToSave = {}
- for X = 1, #Player.leaderstats:GetChildren() do
- table.insert(DataToSave,X,Player.leaderstats:GetChildren()[X].Value)
- end
- local success, errormessage = pcall(function()
- DataStore:SetAsync(Key,DataToSave)
- end)
- if success then
- print("Successfully Saved Data")
- else
- print("Error While Saving Data, ErrorMessage: "..errormessage)
- end
- end
- end)
- Players.PlayerRemoving:Connect(function(Player)
- local Key = "Key: "..Player.UserId
- local DataToSave = {}
- for X = 1, #Player.leaderstats:GetChildren() do
- table.insert(DataToSave,X,Player.leaderstats:GetChildren()[X].Value)
- end
- local success, errormessage = pcall(function()
- DataStore:SetAsync(Key,DataToSave)
- end)
- if success then
- print("Successfully Saved Data")
- else
- print("Error While Saving Data, ErrorMessage: "..errormessage)
- end
- end)
Add Comment
Please, Sign In to add comment