I ask too many questions. Anyways, I am trying to save a string value in a datastore, output returns the same error: Workspace.Errors:24: bad argument #3 to 'Value' (string expected, got nil)
I have looked at other similar questions on this site however none of the solutions have worked. How can I fix the error?
local DSS = game:GetService("DataStoreService")
local datastore = DSS:GetDataStore("GeneralSaveData", "Players")
function generateDataKey(player)
local ret = "uid_" .. player.userId
return ret
end
function generateDataTable(player)
local dataTable = {
BusinessName = player.BusinessName.Value
}
return dataTable
end
function saveDataForPlayer(player)
local key = generateDataKey(player)
local data = generateDataTable(player)
datastore:SetAsync(key, data)
end
function inputDataToPlayer(player, data)
player.BusinessName.Value = data.BusinessName
end
function loadDataForPlayer(player)
local key = generateDataKey(player)
local data = datastore:GetAsync(key)
inputDataToPlayer(player, data)
end
game.Players.PlayerAdded:connect(function(player)
local businessName = Instance.new("StringValue")
businessName.Name = 'BusinessName'
businessName.Parent = player
loadDataForPlayer(player)
end)
game.Players.PlayerRemoving:connect(saveDataForPlayer)
