
πΊοΈJob Center Locations
Easily add more job center locations via Config.Locations
IMPORTANT INFORMATION
The
key
is the location name and must be uniqueThe zone
coords
must be avector4
value as this is shared with the ped (if enabled)The zone
size
must be avector3
valueThe jobs you list in the jobs table must exist in your jobs.lua file
The licenses you list in the licenses table must exist in your qb-core/config.lua file in the licenses metadata table
Location Name
The
key
is the location name and must be unqiue
['My Custom Location'] = { -- the key is the location name
---
},
Zone
To enable visual debugging of the zone location set debug to true if the ped for this location is disabled
The
coords
must bevector4
The
size
must bevector3
['My Custom Location'] = { -- the key is the location name
zone = { -- zone settings
debug = false, -- enable zone debug if ped is disabled
coords = vector4(-545.12, -203.98, 38.22, 210.9), -- must be vector4
size = vector3(2.0, 2.0, 2.0), -- must be vector3
},
---
},
Target
If required you can set a ped to spawn (if disabled then a target zone is created instead) by setting ped to true
The model is the ped model you want to use (ped models: https://docs.fivem.net/docs/game-references/ped-models/)
You can specify a scenario for the ped to use
The icon is the target icon
The label is the target label
The distance is the max target interaction distance
['My Custom Location'] = { -- the key is the location name
--
target = { -- ped settings
ped = true, -- enalbe ped in this location if set to false just the zone spawns
model = 'a_m_m_prolhost_01', -- ped model
scenario = 'WORLD_HUMAN_AA_COFFEE', -- scenario to play if a ped is used
icon = 'fa-solid fa-clipboard', -- target icon
label = 'Employment Info', -- target label
distance = 3.0, -- target distance
},
--
},
Blip
If required each location can have its own blip
The id is the blip id
The colour is the blip colour
The scale is the blip scale
The title is the blip name (advised to keep these the same name to group them up and prevent map issues)
['My Custom Location'] = { -- the key is the location name
--
blip = { -- blip settings
enabled = true, -- set to true to enable blips for this location
id = 126, -- blip id
colour = 3, -- blip colour
scale = 0.6, -- blip scale
title = 'City Hall Services', -- blip title
},
--
},
Progress Circle
When getting licenses or identity documents a small progress circle is played with an animation and a prop
The duration is the duration of the progress circle
The label is the label for the progress circle
Define animation data in the anim table
Define prop data in the prop table
['My Custom Location'] = { -- the key is the location name
--
progress = { -- progressCircle settings
duration = 5000, -- duration of progress circle
label = 'Filling out required information', -- progress circle label
anim = { -- animation settings
anim = 'missheistdockssetup1clipboard@base', -- anim name
dict = 'base', -- anim dict
flag = 49, -- anim flag
},
prop = { -- prop settings
model = 'prop_notepad_01', -- prop name
bone = 18905, -- bone index
pos = vec3(0.1, 0.02, 0.05), -- prop position must be vec3
rot = vec3(10.0, 0.0, 0.0), -- prop rotation must be vec3
},
},
--
},
Jobs
You can add jobs where required to each location using the jobs table
Ensure the jobs you add are in your jobs.lua file
The
key
is the job nameThe info is a small description of that job for the menu
['My Custom Location'] = { -- the key is the location name
--
jobs = { -- job settings
['bus'] = { -- the key is the job name
info = 'Collect and drop off passengers', -- job description
},
['trucker'] = { -- the key is the job name
info = 'Complete various deliveries', -- job description
},
['tow'] = { -- the key is the job name
info = 'Tow stranded vehicles to repair stations', -- job description
},
['garbage'] = { -- the key is the job name
info = 'Collect and dispose of rubbish', -- job description
},
['vineyard'] = { -- the key is the job name
info = 'Collect fruits and process into various products', -- job description
},
['hotdog'] = { -- the key is the job name
info = 'Get your hotdogs, hotdogs here!', -- job description
},
['taxi'] = { -- the key is the job name
info = 'Collect and drop off passengers', -- job description
},
--add more jobs as required for this location making sure the jobs you add are in qb-core/shared/jobs.lua file
},
--
},
Licenses
You can add licenses where required to each location in the licenses table
Ensure the licenses you add are in your qb-core/config.lua file in the license metadata table
The
key
is the licenses nameThe
info
is a small description of that licenseThe
cost
is the cost to purchase that licenseThe
item
is the item name given when purchasing that license ensure this exists in your items.lua and also ensure you have added the relevant data you wish to be added in the following callbacklusty94_jobcenter:server:giveLicense
Ensure you also add the relevant data you wish to be displayed in the following event
lusty94_jobcenter:server:useItem
Ensure you also add the respective item name to the
useableItems
table in server/funcs.lua if adding custom licenses to ensure it is useable
['My Custom Location'] = { -- the key is the location name
--
licenses = { -- license settings
['driver'] = { -- the key is the license name
info = 'Allows you to drive vehicles on the public roads', -- license description
cost = 1000, -- license cost
item = 'driving_license', -- item name to give
},
['business'] = { -- the key is the license name
info = 'Allows you to own a public business', -- license description
cost = 5000, -- license cost
item = 'business_license', -- item name to give
rank = 3, -- job rank required to get license
},
['weapon'] = { -- the key is the license name
info = 'Allows you to legally own a firearm, just don\'t be stupid!', -- license description
cost = 10000, -- license cost
item = 'weapon_license', -- item name to give
},
--add more licenses as required for this location making sure the licenses you add are in the license metadata table in qb-core/config.lua
},
--
},
Identity Documents
You can add identity documents where required for each location in the identity table
The
key
is the item name and must be in your items.lua as it gets the label of it for the menuThe
info
is a small description of that identity documentThe
cost
is the cost to purchase that item and can be set to 0 if requiredThe
item
is the item name received and must be in your items.luaThe
requiredJob
is the job required to purchase that documentThe
rank
is the required rank of that job to purchase that document
['My Custom Location'] = { -- the key is the location name
--
identity = { -- identity settings
['passport'] = { -- the key is the document name
info = 'An important identity document which allows travel to other countries', -- document description
cost = 1000, -- document cost
item = 'passport', -- item name to give
},
['lawyerpass'] = { -- the key is the document name
info = 'A legal document showing your lawyer status', -- document description
cost = 1000, -- document cost
item = 'lawyerpass', -- item name to give
requiredJob = 'lawyer', -- required job to get this document
rank = 0, -- job rank required to get document
},
['police_badge'] = { -- the key is the document name
info = 'An official Police badge', -- document description
cost = 100, -- document cost
item = 'police_badge', -- item name to give
requiredJob = 'police', -- required job to get this document
rank = 1, -- job rank required to get document
},
['medic_badge'] = { -- the key is the document name
info = 'An official Medical badge', -- document description
cost = 100, -- document cost
item = 'medic_badge', -- item name to give
requiredJob = 'ambulance', -- required job to get this document
rank = 1, -- job rank required to get document
},
--add more licenses as required for this location making sure the licenses you add are in the license metadata table in qb-core/config.lua
},
},
Last updated