Player has more priority than any players

When a player selects a job first, and then a another. The latter is the only one payed instead. I don’t know how to fix it to be completely honest.

local Job_Module = require(script.Parent)

local Players = game:GetService("Players")

Players.PlayerAdded:Connect(function(P)

	local Folder = Instance.new("Folder")
	Folder.Name = "leaderstats"
	Folder.Parent = P

	local Money = Instance.new("NumberValue")
	Money.Name = "Cash"
	Money.Value = 0
	Money.Parent = Folder

	local Job = Instance.new("StringValue")
	Job.Name = "Job"
	Job.Value = "N/A"
	Job.Parent = Folder
	
	coroutine.resume(coroutine.create(function(d)

		local LS = P:WaitForChild("leaderstats", 1)
		local M : NumberValue = LS.Cash
		local J : StringValue = LS.Job

		while wait(5) do

			Job_Module.GiveWage(P, J.Value)

		end

	end))

end)

Module Script

local Job = {
	
	["Jobless"] = {
		["Description"] = "An unemployed person",
		["Wage"] = 0,
	
	},
	
	["Barber"] = {
		["Description"] = "Hair cutting be like",
		["Wage"] = 25,
	},
	
	["Cashier"] = {
		["Description"] = "Imagine???",
		["Wage"] = 10,
		
		
	},
	
	
}

function Job.GiveWage(Player, name)
	
	Player.leaderstats.Cash.Value += Job[name].Wage
	
end



return Job

nevermind solved by me but not sure