What am I doing wrong?

local getdatastore = game:GetService("DataStoreService")
local mydatastore = getdatastore:GetDataStore("myDataStore")
local credits = game.StarterPlayer.playersValue.ammountofcredits
local stones = game.StarterPlayer.playersValue.prestigeStones
local credits
local stones 

--[[
	# load player data when joining
--]]

game.Players.PlayerAdded:connect(function(player)
		
	local success, errormessage = pcall(function()
		credits = mydatastore:GetAsync(player.UserId.."-crd")
		stones = mydatastore:GetAsync(player.UserId.."-stones")
	end)
	
	if success then
		credits.Value = credits
		stones.Value = stones
	else
		warn(errormessage)
	end
	
end)

--[[
	# save player data when leaving
--]]

game.Players.PlayerRemoving:connect(function(player)
	local success, errormessage = pcall(function()
		mydatastore:SetAsync(player.UserId.."-crd", credits.Value)
		mydatastore:SetAsync(player.UserId.."-stones", stones.Value)
	end)
	
   if success then
	print("plr data loaded:"..player.UserId)
	if errormessage then
	print("plr data was nil:"..player.UserId)	
	end
end
end)