Server
Manages jobs and player employment, allowing job creation, assignment, and modification.
core.jobmanager.listJobs
Returns the list of registered jobs.
core.jobmanager.listJobs()
-- or
core.jobmanager.jobs- Returns:
table<string, Job>
core.jobmanager.setPlayerJob
Sets a player's job and grade. Set grade to 0 to remove job.
core.jobmanager.setPlayerJob(playerId, jobName, grade)- playerId:
integer - jobName:
string - grade:
integer - Returns:
boolean(success)
core.jobmanager.getPlayerJobs
Returns a list of a player's jobs.
core.jobmanager.getPlayerJobs(playerId)- playerId:
integer - Returns:
PlayerJobs[]
core.jobmanager.getPlayersInJob
Returns a list of players in a specific job.
core.jobmanager.getPlayersInJob(jobName)- jobName:
string - Returns:
Player[] | nil
core.jobmanager.isPlayerInJob
Checks if a player is in a specific job.
core.jobmanager.isPlayerInJob(playerId, jobName)- playerId:
integer - jobName:
string - Returns:
boolean
core.jobmanager.createJob
Creates a job and adds it to the job list.
core.jobmanager.createJob(jobName, label)- jobName:
string - label:
string
core.jobmanager.addGrade
Adds a new grade to a job.
core.jobmanager.addGrade(jobName, label, position)- jobName:
string - label:
string - position:
number
core.jobmanager.removeGrade
Removes a grade from a job.
core.jobmanager.removeGrade(jobName, position)- jobName:
string - position:
number
core.jobmanager.renameGrade
Renames a grade for a job.
core.jobmanager.renameGrade(jobName, index, newName)- jobName:
string - index:
number - newName:
string
core.jobmanager.addGradePermission
Adds a permission to a grade.
core.jobmanager.addGradePermission(jobName, index, permission)- jobName:
string - index:
number - permission:
GradePermissions | GradePermissions[]
core.jobmanager.removeGradePermission
Removes a permission from a grade.
core.jobmanager.removeGradePermission(jobName, index, permission)- jobName:
string - index:
number - permission:
GradePermissions | GradePermissions[]
core.jobmanager.setDuty
Sets a player's duty status.
core.jobmanager.setDuty(playerId, jobName, onDuty)- playerId:
integer - jobName:
string - onDuty?:
boolean(If left nil, it will toggle the duty status.)
Events
playerJobUpdated
Triggered when a player's job is updated.
RegisterNetEvent('osrp-core:server:playerJobUpdated', function(playerId, jobName, grade) end)
RegisterNetEvent('osrp-core:client:playerJobUpdated', function(playerId, jobName, grade) end)- playerId:
integer - jobName:
string - grade:
integer
playerDutyUpdated
Triggered when a player's duty status is updated.
RegisterNetEvent('osrp-core:server:playerDutyUpdated', function(playerId, jobName, onDuty) end)
RegisterNetEvent('osrp-core:client:playerDutyUpdated', function(playerId, jobName, onDuty) end)- playerId:
integer - jobName:
string - onDuty:
boolean
setDuty
Trigger to set a players duty status
TriggerServerEvent('osrp-core:server:setDuty', jobName, onDuty)- jobName:
string - onDuty:
boolean