local Players = game:GetService("Players")
local DataStoreService = game:GetService("DataStoreService")
local datastore = DataStoreService:GetDataStore("Test11")
local aurachange = game:GetService("ReplicatedStorage").Events.AuraChange
local RunService = game:GetService("RunService")
Players.PlayerAdded:Connect(function(plr)
plr.CharacterAdded:Connect(function(character)
local leaderstats = Instance.new("Folder", plr)
leaderstats.Name = "leaderstats"
local etc = Instance.new("Folder", leaderstats)
etc.Name = "Etc"
local auravalue = Instance.new("NumberValue")
auravalue.Parent = etc
auravalue.Name = "CurrentAura"
auravalue.Value = 1
local money = Instance.new("NumberValue")
money.Parent = etc
money.Name = "Money"
money.Value = 100
local reqmoney = Instance.new("NumberValue")
reqmoney.Parent = etc
reqmoney.Name = "RequimentMoney"
reqmoney.Value = 300
local Rolls = Instance.new("IntValue", leaderstats)
Rolls.Name = "Rolls"
local folder = Instance.new("Folder", leaderstats)
folder.Name = "StorageOfAuras"
for i, stor in pairs(plr.PlayerGui:WaitForChild("Main").invertory.AurasList:GetChildren()) do
local number = tonumber(stor.Name)
if number then
local valuestor = Instance.new("StringValue")
valuestor.Name = number
valuestor.Parent = folder
valuestor.Value = plr.PlayerGui:WaitForChild("Main").invertory.AurasList[number].SlotName.Text
end
end
local Success, Data = pcall(function()
return datastore:GetAsync(plr.UserId.."Table")
end)
local number = 0
local guiplayer = plr.Character:WaitForChild("Head"):WaitForChild("GUIPlayers")
if Data ~= nil then
local function getem()
for i, b in pairs(plr.leaderstats.StorageOfAuras:GetChildren()) do
if tonumber(Data[tonumber(b.Name)][1]) then
b.Value = Data[tonumber(b.Name)][2]
plr.PlayerGui.Main.invertory.AurasList[tonumber(b.Name)].SlotName.Text = b.Value
number = b.Name
plr.PlayerGui.Main.invertory.AnimScript.Disabled = true
wait(0.05)
plr.PlayerGui.Main.invertory.AnimScript.Disabled = false
else
b:Destroy()
end
end
end
getem()
task.wait(1)
if Data[number+1][1] ~= "Rolls" then
repeat
local valuestor = Instance.new("StringValue")
valuestor.Name = number + 1
valuestor.Parent = folder
local new = plr.PlayerGui.Main.invertory.AurasList[1]:Clone()
new.Parent = plr.PlayerGui.Main.invertory.AurasList
new.Name = number + 1
getem()
number += 1
task.wait(0.1)
until Data[number+1][1] == "Rolls"
end
Rolls.Value = Data[number+1][2]
auravalue.Value = Data[number+2][2]
money.Value = Data[number+3][2]
reqmoney.Value = Data[number+4][2]
plr.PlayerGui.Main.CoinsAndBiome.Coins.Text = money.Value.."$"
plr.PlayerGui.Main.invertory.Buy.Text = "Buy ["..money.Value.."$]"
if plr.leaderstats.StorageOfAuras[auravalue.Value].Value ~= "None" then
guiplayer.Aura.Text = plr.leaderstats.StorageOfAuras[auravalue.Value].Value
aurachange:Fire(plr)
end
else
Rolls.Value = 0
auravalue.Value = 1
end
end)
end)
Players.PlayerRemoving:Connect(function(Player)
local table1 = {}
for i, stor in pairs(Player.leaderstats.StorageOfAuras:GetChildren()) do
table.insert(table1,{ stor.Name, stor.Value})
end
table.insert(table1, {"Rolls", Player.leaderstats.Rolls.Value})
table.insert(table1, {"AuraValue", Player.leaderstats.Etc.CurrentAura.Value})
table.insert(table1, {"Money", Player.leaderstats.Etc.Money.Value})
table.insert(table1, {"RequimentMoney", Player.leaderstats.Etc.RequimentMoney.Value})
local Success, Error = pcall(function()
print(table1)
datastore:SetAsync(Player.UserId.."Table", table1)
end)
if Error == true then
warn(Error)
end
end)
This code saving…:
- Inverotry
- Coins
- Reequipment Coins to buy Slots
- Rolls Amout