Hey, I am creating a datastore checker script so I can perform actions to the user's screen. Unfortunately, I am constantly facing an issue where the "plr" variable changes to nil, and I can't seem to find why.

Here is my server script!

local rs = game:GetService("ReplicatedStorage")
local ds = game:GetService("DataStoreService")

local dsActivated = ds:GetDataStore("WindowsActivated")
local newKey = ds:GetDataStore("ProductKey")
local event = rs.licenseKey

local globalPlayerVar

event.OnServerEvent:Connect(function(plr, key)
	globalPlayerVar = plr
	script.Parent.Text = key
	script.Parent.Parent.changeKey.Visible = false
	local success1, errorMessage = pcall(function()
		newKey:SetAsync(plr.UserId.."keyWin", key)
		print(key)
	end)
	if not success1 then
		print(errorMessage)
	end
	
	local success2, errorMessage2 = pcall(function()
		dsActivated:SetAsync(plr.UserId.."activated", "true")
	end)
	if not success2 then
		print(errorMessage2)
	end
	
end)

wait(5)

while wait(5) do
	local success3, errorMsg3 = pcall(function()
		license = newKey:GetAsync(globalPlayerVar.UserId.."keyWin")
	end)
	if not success3 then
		print(errorMsg3)
	end

	local success4, errorMsg4 = pcall(function()
		activatedStat = dsActivated:GetAsync(globalPlayerVar.UserId.."activated")
	end)
	if not success4 then
		print(errorMsg4)
	end
end

game.Players.PlayerRemoving:Connect(function(plr2)
	if activatedStat ~= nil then
		if activatedStat == "true" then
			local success, errorMessage = pcall(function()
				dsActivated:SetAsync(plr2.UserId.."activated", "true")
			end)
			if not success then
				print(errorMessage)
			end
		else
			local success, errorMessage = pcall(function()
				dsActivated:SetAsync(plr2.UserId.."activated", "false")
			end)
			if not success then
				print(errorMessage)
			end
		end
	end
end)

Also, I am getting this error in the Output. This could be helpful to fixing my issue.

16:32:55.524 Players.PaleNoobs.PlayerGui.pc.screen.windows.settingsWindow.activation.selectedKey.Script:35: attempt to index nil with 'UserId' - Server - Script:38 16:32:55.524 Players.PaleNoobs.PlayerGui.pc.screen.windows.settingsWindow.activation.selectedKey.Script:42: attempt to index nil with 'UserId' - Server - Script:45

All help is greatly appreciated! -PaleNoobs