@@ -394,33 +394,30 @@ function QBCore.Functions.CreateVehicle(source, model, vehtype, coords, warp)
394394 return veh
395395end
396396
397- --- Paychecks (standalone - don't touch)
398397function PaycheckInterval ()
399- if next (QBCore .Players ) then
400- for _ , Player in pairs (QBCore .Players ) do
401- if Player then
402- local payment = QBShared .Jobs [Player .PlayerData .job .name ][' grades' ][tostring (Player .PlayerData .job .grade .level )].payment
403- if not payment then payment = Player .PlayerData .job .payment end
404- if Player .PlayerData .job and payment > 0 and (QBShared .Jobs [Player .PlayerData .job .name ].offDutyPay or Player .PlayerData .job .onduty ) then
405- if QBCore .Config .Money .PayCheckSociety then
406- local account = exports [' qb-banking' ]:GetAccountBalance (Player .PlayerData .job .name )
407- if account ~= 0 then -- Checks if player is employed by a society
408- if account < payment then -- Checks if company has enough money to pay society
409- TriggerClientEvent (' QBCore:Notify' , Player .PlayerData .source , Lang :t (' error.company_too_poor' ), ' error' )
410- else
411- Player .Functions .AddMoney (' bank' , payment , ' paycheck' )
412- exports [' qb-banking' ]:RemoveMoney (Player .PlayerData .job .name , payment , ' Employee Paycheck' )
413- TriggerClientEvent (' QBCore:Notify' , Player .PlayerData .source , Lang :t (' info.received_paycheck' , { value = payment }))
414- end
415- else
416- Player .Functions .AddMoney (' bank' , payment , ' paycheck' )
417- TriggerClientEvent (' QBCore:Notify' , Player .PlayerData .source , Lang :t (' info.received_paycheck' , { value = payment }))
418- end
398+ if not next (QBCore .Players ) then return end
399+ for _ , Player in pairs (QBCore .Players ) do
400+ if not Player then return end
401+ local payment = QBShared .Jobs [Player .PlayerData .job .name ][' grades' ][tostring (Player .PlayerData .job .grade .level )].payment
402+ if not payment then payment = Player .PlayerData .job .payment end
403+ if Player .PlayerData .job and payment > 0 and (QBShared .Jobs [Player .PlayerData .job .name ].offDutyPay or Player .PlayerData .job .onduty ) then
404+ if QBCore .Config .Money .PayCheckSociety then
405+ local account = exports [' qb-banking' ]:GetAccountBalance (Player .PlayerData .job .name )
406+ if account ~= 0 then
407+ if account < payment then
408+ TriggerClientEvent (' QBCore:Notify' , Player .PlayerData .source , Lang :t (' error.company_too_poor' ), ' error' )
419409 else
420410 Player .Functions .AddMoney (' bank' , payment , ' paycheck' )
411+ exports [' qb-banking' ]:RemoveMoney (Player .PlayerData .job .name , payment , ' Employee Paycheck' )
421412 TriggerClientEvent (' QBCore:Notify' , Player .PlayerData .source , Lang :t (' info.received_paycheck' , { value = payment }))
422413 end
414+ else
415+ Player .Functions .AddMoney (' bank' , payment , ' paycheck' )
416+ TriggerClientEvent (' QBCore:Notify' , Player .PlayerData .source , Lang :t (' info.received_paycheck' , { value = payment }))
423417 end
418+ else
419+ Player .Functions .AddMoney (' bank' , payment , ' paycheck' )
420+ TriggerClientEvent (' QBCore:Notify' , Player .PlayerData .source , Lang :t (' info.received_paycheck' , { value = payment }))
424421 end
425422 end
426423 end
@@ -471,15 +468,15 @@ end
471468function QBCore .Functions .CreateUseableItem (item , data )
472469 local rawFunc = nil
473470
474- if type (data ) == " table" then
471+ if type (data ) == ' table' then
475472 if rawget (data , ' __cfx_functionReference' ) then
476473 rawFunc = data
477474 elseif data .cb and rawget (data .cb , ' __cfx_functionReference' ) then
478475 rawFunc = data .cb
479476 elseif data .callback and rawget (data .callback , ' __cfx_functionReference' ) then
480477 rawFunc = data .callback
481478 end
482- elseif type (data ) == " function" then
479+ elseif type (data ) == ' function' then
483480 rawFunc = data
484481 end
485482
@@ -654,23 +651,23 @@ end
654651function QBCore .Functions .GetDatabaseInfo ()
655652 local details = {
656653 exists = false ,
657- database = " " ,
654+ database = ' ' ,
658655 }
659- local connectionString = GetConvar (" mysql_connection_string" , " " )
656+ local connectionString = GetConvar (' mysql_connection_string' , ' ' )
660657
661- if connectionString == " " then
658+ if connectionString == ' ' then
662659 return details
663- elseif connectionString :find (" mysql://" ) then
660+ elseif connectionString :find (' mysql://' ) then
664661 connectionString = connectionString :sub (9 , - 1 )
665- details .database = connectionString :sub (connectionString :find (" / " ) + 1 , - 1 ):gsub (" [%?]+[%w%p]*$" , " " )
662+ details .database = connectionString :sub (connectionString :find (' / ' ) + 1 , - 1 ):gsub (' [%?]+[%w%p]*$' , ' ' )
666663 details .exists = true
667664 return details
668665 else
669- connectionString = { string .strsplit (" ; " , connectionString ) }
666+ connectionString = { string .strsplit (' ; ' , connectionString ) }
670667
671668 for i = 1 , # connectionString do
672669 local v = connectionString [i ]
673- if v :match (" database" ) then
670+ if v :match (' database' ) then
674671 details .database = v :sub (10 , # v )
675672 details .exists = true
676673 return details
@@ -728,3 +725,12 @@ function QBCore.Functions.PrepForSQL(source, data, pattern)
728725 end
729726 return true
730727end
728+
729+ for functionName , func in pairs (QBCore .Functions ) do
730+ if type (func ) == ' function' then
731+ exports (functionName , func )
732+ end
733+ end
734+
735+ -- Access a specific function directly:
736+ -- exports['qb-core']:Notify(source, 'Hello Player!')
0 commit comments