My game has an IntValue that is meant to be used for save and load, but instead it resets to the saved value on game exit: Example: I use DataStore Editor to set my value to 50. Then I play the game and set my value to 55 (with explorer not DataStore Editor). Then I leave and test again. My IntValue is back at 50. Why is this happening? Code:
local DataStoreService = game:GetService("DataStoreService")
local dataStore = DataStoreService:GetDataStore("DAT")
game.Players.PlayerAdded:Connect(function(player)
local coins = Instance.new("IntValue")
coins.Name = "coins"
coins.Parent = player
local playerUserId = "Player_"..player.UserId
print(playerUserId)
local data1
local success, err = pcall(function()
data1 = dataStore:GetAsync(playerUserId)
end)
print(data1)
player.coins.Value = data1
if success then
print("Load success!")
game.StarterGui.ScreenGui.TextButton.Text = player.coins.Value
else
warn(err)
end
print(player.coins.Value)
end)
game.Players.PlayerRemoving:Connect(function(player)
print(player.coins.Value)
local success, err = pcall(function()
local playerUserId = "Player_"..player.UserId
print(playerUserId)
dataStore:SetAsync(playerUserId, player.coins.Value)
end)
if success then
print("Save success!")
else
warn(err)
end
end)
game:BindToClose(function()
wait(5)
end)
