ESX.StartPayCheck = function() function payCheck() local xPlayers = ESX.GetPlayers() for i=1, #xPlayers, 1 do local xPlayer = ESX.GetPlayerFromId(xPlayers[i]) local job = xPlayer.job.grade_name local salary = xPlayer.job.grade_salary if salary > 0 then if job == 'unemployed' then -- unemployed xPlayer.addAccountMoney('bank', salary) TriggerClientEvent('esx:showAdvancedNotification', xPlayer.source, _U('bank'), _U('received_paycheck'), _U('received_help', salary), 'CHAR_BANK_MAZE', 9) elseif Config.EnableSocietyPayouts then -- possibly a society TriggerEvent('esx_society:getSociety', xPlayer.job.name, function (society) if society ~= nil then -- verified society TriggerEvent('esx_addonaccount:getSharedAccount', society.account, function (account) if account.money >= salary then -- does the society money to pay its employees? xPlayer.addAccountMoney('bank', salary) account.removeMoney(salary) TriggerClientEvent('esx:showAdvancedNotification', xPlayer.source, _U('bank'), _U('received_paycheck'), _U('received_salary', salary), 'CHAR_BANK_MAZE', 9) else TriggerClientEvent('esx:showAdvancedNotification', xPlayer.source, _U('bank'), '', _U('company_nomoney'), 'CHAR_BANK_MAZE', 1) end end) else -- not a society xPlayer.addAccountMoney('bank', salary) TriggerClientEvent('esx:showAdvancedNotification', xPlayer.source, _U('bank'), _U('received_paycheck'), _U('received_salary', salary), 'CHAR_BANK_MAZE', 9) end end) else -- generic job xPlayer.addAccountMoney('bank', salary) TriggerClientEvent('esx:showAdvancedNotification', xPlayer.source, _U('bank'), _U('received_paycheck'), _U('received_salary', salary), 'CHAR_BANK_MAZE', 9) end end end SetTimeout(Config.PaycheckInterval, payCheck) end SetTimeout(Config.PaycheckInterval, payCheck) end