diff --git a/server/functions.lua b/server/functions.lua index ab6de98..f33e34a 100644 --- a/server/functions.lua +++ b/server/functions.lua @@ -167,30 +167,34 @@ end -- Paychecks (standalone - don't touch) function PaycheckInterval() - for _, Player in pairs(QBCore.Players) do - local payment = Player.PlayerData.job.payment - if Player.PlayerData.job and payment > 0 and (QBShared.Jobs[Player.PlayerData.job.name].offDutyPay or Player.PlayerData.job.onduty) then - if QBCore.Config.Money.PayCheckSociety then - local account = exports['qb-bossmenu']:GetAccount(Player.PlayerData.job.name) - if account ~= 0 then -- Checks if player is employed by a society - if account < payment then -- Checks if company has enough money to pay society - TriggerClientEvent('QBCore:Notify', Player.PlayerData.source, Lang:t('error.company_too_poor'), 'error') + if next(QBCore.Players) then + for _, Player in pairs(QBCore.Players) do + if Player then + local payment = Player.PlayerData.job.payment + if Player.PlayerData.job and payment > 0 and (QBShared.Jobs[Player.PlayerData.job.name].offDutyPay or Player.PlayerData.job.onduty) then + if QBCore.Config.Money.PayCheckSociety then + local account = exports['qb-bossmenu']:GetAccount(Player.PlayerData.job.name) + if account ~= 0 then -- Checks if player is employed by a society + if account < payment then -- Checks if company has enough money to pay society + TriggerClientEvent('QBCore:Notify', Player.PlayerData.source, Lang:t('error.company_too_poor'), 'error') + else + Player.Functions.AddMoney('bank', payment) + TriggerEvent('qb-bossmenu:server:removeAccountMoney', Player.PlayerData.job.name, payment) + TriggerClientEvent('QBCore:Notify', Player.PlayerData.source, Lang:t('info.received_paycheck', {value = payment})) + end + else + Player.Functions.AddMoney('bank', payment) + TriggerClientEvent('QBCore:Notify', Player.PlayerData.source, Lang:t('info.received_paycheck', {value = payment})) + end else Player.Functions.AddMoney('bank', payment) - TriggerEvent('qb-bossmenu:server:removeAccountMoney', Player.PlayerData.job.name, payment) TriggerClientEvent('QBCore:Notify', Player.PlayerData.source, Lang:t('info.received_paycheck', {value = payment})) end - else - Player.Functions.AddMoney('bank', payment) - TriggerClientEvent('QBCore:Notify', Player.PlayerData.source, Lang:t('info.received_paycheck', {value = payment})) end - else - Player.Functions.AddMoney('bank', payment) - TriggerClientEvent('QBCore:Notify', Player.PlayerData.source, Lang:t('info.received_paycheck', {value = payment})) end end end - SetTimeout(QBCore.Config.Money.PayCheckTimeOut * (60 * 1000), PaycheckLoop) + SetTimeout(QBCore.Config.Money.PayCheckTimeOut * (60 * 1000), PaycheckInterval) end -- Callbacks @@ -397,4 +401,4 @@ function QBCore.Functions.IsLicenseInUse(license) end end return false -end \ No newline at end of file +end