Files
red-valley/resources/[framework]/[base]/[jobs]/17mov_JobCenter/Config.lua
2026-03-29 21:41:17 +03:00

551 lines
28 KiB
Lua

Config = {}
Config.Lang = "ro" -- Langugage that you want to use (before changing this value make sure that this lang is exists into ./locale directory)
Config.UseTarget = false -- Change it to true if you want to use a target system. All settings about the target system are under target.lua file.
Config.DistanceCheck = true -- Allows to find players that thries to get some job with 17mov_JobCenter:SetPlayerJob event, but he's so far from job center ped. If set to true job will not be set and you will receive information in the server console. Set this to false if you want to open menu from other locations than default with 17mov_JobCenter:OpenMenu event
-- Configuration of locations where you can open job center menu
Config.Locations = {
{
Model = "a_f_y_business_04", -- Model of ped https://docs.fivem.net/docs/game-references/ped-models/
Position = vector4(-266.42642211914, -968.20806884766, 31.224351882935, 300.66781616211), -- Position of ped (it's vector4 so first 3 numbers are xyz and 4 number is heading)
Distance = 4, -- Distance of interaction - how close you need to stay to be able to open menu
},
}
-- Here you can configure blips
Config.Blips = {
{
Label = _L("Blip.Label"), -- Can be changed into locale
Position = vector3(-266.42642211914, -968.20806884766, 31.224351882935),
Sprite = 457,
Color = 51,
Scale = 0.8,
}
}
-- Some settings of menu
Config.NUI = {
GlobalColor = "#ff1a35", -- "Accent" color of menu
Logo = "images/logo.webp", -- Path to logo (located into /web) - should be relative path, so should start without "/"
AnnouncementEnabled = true, -- You can toogle displaying of "announcement" tab into header
Tabs = { -- Here you can change path to background images of each "tab"
ServerJobs = "images/jobs.webp",
ServerBusiness = "images/business.webp",
Chat = "images/chat.webp",
},
ChatSettings = { -- This is configuration of "rate limits" into chat. Telling how much messages you can send into specified time
MessagesCount = 10, -- How much messages
TimeLimit = 5000, -- In what time (ms)
},
}
-- Here you can add jobs to job center
-- NOTE: If your job is not displaying into menu it's propably not registered as job into framework!
Config.Jobs = {
-- ["NAME_OF_JOB"] = { -- Key is name of job from framework
-- enabled = true, -- Is this job enabled
-- applyJob = true, -- Is player can apply to this job
-- grade = 1, -- Grade that player will recive
-- coords = vector3(926.47, -1560.25, 30.74), -- Job location
-- icon = "path/to/icon.svg", -- URL to icon - iff nil it's just not displayed
-- image = "path/to/image.webp", -- URL to image that is "banner"
-- subtitle = "Lorem ipsum", -- Subtitle of this job
-- description = "Lorem ipsum dolor sit amet, consectetur adipiscing elit.", -- Description of this job
-- stats = { -- Stats configuration
-- -- These functions allows you to configure your stats systems. Both working on server side! If nil is returned then it's just not display
-- earnings = function()
-- -- Average hour salary- returns string you can use FormatMoney(earnings) function
-- if IsDuplicityVersion() then
-- return nil
-- end
-- end,
-- time = function()
-- -- Average worked time - need to return number (time into ms)
-- if IsDuplicityVersion() then
-- return nil
-- end
-- end,
-- },
-- },
["builder"] = {
enabled = true,
applyJob = true,
grade = 1,
coords = vector3(926.47, -1560.25, 30.74),
icon = "images/icons/builder.svg",
image = "images/jobs/builder.webp",
title = "Constructor",
subtitle = "Construieste-ti viitorul, cladire cu cladire",
description = "E timpul sa-ti pui casca si sa-ti construiesti viitorul! Ca constructor, vei prelua proiecte de constructii in tot orasul, de la turnarea fundatiilor pana la ridicarea structurilor. Foloseste echipamente grele, transporta materiale si priveste cum munca ta prinde viata la finalizarea fiecarui proiect. Fie ca lucrezi singur sau in echipa, acest rol este perfect pentru jucatorii care adora sa puna mana si sa aiba un impact vizibil. Suflea-ti manecile, ia-ti uneltele si incepe sa construiesti drumul spre succes!",
stats = {
-- These functions allows you to configure your stats systems. Both working on server side! If nil is returned then it's just not display
earnings = function()
-- Average hour salary- returns string you can use FormatMoney(earnings) function
if IsDuplicityVersion() then
return nil
end
end,
time = function()
-- Average worked time - need to return number (time into ms)
if IsDuplicityVersion() then
return nil
end
end,
},
},
["deliverer"] = {
enabled = true,
applyJob = true,
grade = 1,
coords = vector3(78.66, 111.75, 81.17),
icon = "images/icons/deliverer.svg",
image = "images/jobs/deliverer.webp",
title = "Curier",
subtitle = "Livram zambete in tot orasul",
description = "Livreaza coletele si pastreaza orasul fericit! Ca livrator, vei ridica si livra pachete si obiecte importante rezidentilor si afacerilor din oras. Ramai in miscare, urmeaza-ti ruta si asigura-te ca totul ajunge la locul potrivit la timp. Acest loc de munca este perfect pentru jucatorii care se bucura de un ritm constant si de satisfactia finalizarii sarcinilor. Ia-ti geanta, iesi pe strazi si incepe sa livrezi astazi!",
stats = {
-- These functions allows you to configure your stats systems. Both working on server side! If nil is returned then it's just not display
earnings = function()
-- Average hour salary- need to return number
if IsDuplicityVersion() then
return nil
end
end,
time = function()
-- Average worked time - need to return number (time into ms)
if IsDuplicityVersion() then
return nil
end
end,
},
},
["electrician"] = {
enabled = true,
applyJob = true,
grade = 1,
coords = vector3(751.06, 222.85, 87.42),
icon = "images/icons/electrician.svg",
image = "images/jobs/electrician.webp",
title = "Electrician",
subtitle = "Tine luminile aprinse si circuitele in viata",
description = "Lumineaza orasul si castiga bani seriosi ca electrician! Fie ca repari linii electrice, instalezi sisteme noi sau depanezi probleme de cablare, acest loc de munca te acopera. Foloseste-ti uneltele pentru a pastra luminile aprinse si totul sa functioneze. Perfect pentru jucatorii care adora rezolvarea problemelor si munca manuala, locul de munca de electrician ofera recompense excelente. Ia-ti echipamentul, pune-te pe treaba si pastreaza orasul incarcat!",
stats = {
-- These functions allows you to configure your stats systems. Both working on server side! If nil is returned then it's just not display
earnings = function()
-- Average hour salary- need to return number
if IsDuplicityVersion() then
return nil
end
end,
time = function()
-- Average worked time - need to return number (time into ms)
if IsDuplicityVersion() then
return nil
end
end,
},
},
["garbage"] = {
enabled = true,
applyJob = true,
grade = 1,
coords = vector3(-321.56, -1545.74, 30.01),
icon = "images/icons/garbage.svg",
image = "images/jobs/garbage.webp",
title = "Gunoier",
subtitle = "Pastram orasul curat si verde",
description = "Ajuta la mentinerea curateniei in oras si castiga bani! Ca gunoier, vei conduce un camion de gunoi, vei ridica sacii de gunoi din locurile desemnate si ii vei livra la statia de procesare a deseurilor. Este un loc de munca simplu cu plata constanta, perfect pentru jucatorii care se bucura de munca practica. Suflea-ti manecile, urca-te in camion si incepe sa faci diferenta pastrand strazile impecabile!",
stats = {
-- These functions allows you to configure your stats systems. Both working on server side! If nil is returned then it's just not display
earnings = function()
-- Average hour salary- need to return number
if IsDuplicityVersion() then
return nil
end
end,
time = function()
-- Average worked time - need to return number (time into ms)
if IsDuplicityVersion() then
return nil
end
end,
},
},
["lumberjack"] = {
enabled = true,
applyJob = true,
grade = 1,
coords = vector3(-552.9, 5348.58, 74.74),
icon = "images/icons/lumberjack.svg",
image = "images/jobs/lumberjack.webp",
title = "Taietor de Lemne",
subtitle = "Taie, transporta si construieste-ti succesul",
description = "Ca taietor de lemne, vei merge in padure sa tai copaci, sa incarci bustenii si sa-i transporti la statia de prelucrare. Priveste cum lemnul brut se transforma in materiale valoroase pe care le poti vinde pentru profit! Cu animatii fluide si pasi usor de urmat, acest loc de munca ofera o modalitate distractiva de a-ti castiga banii. Ia-ti toporul si incepe sa tai astazi!",
stats = {
-- These functions allows you to configure your stats systems. Both working on server side! If nil is returned then it's just not display
earnings = function()
-- Average hour salary- need to return number
if IsDuplicityVersion() then
return nil
end
end,
time = function()
-- Average worked time - need to return number (time into ms)
if IsDuplicityVersion() then
return nil
end
end,
},
},
["miner"] = {
enabled = true,
applyJob = true,
grade = 1,
coords = vector3(2445.14, 1532.14, 39.89),
icon = "images/icons/miner.svg",
image = "images/jobs/miner.webp",
title = "Miner",
subtitle = "Sapa adanc dupa comorile de sub pamant",
description = "Esti gata sa sapi adanc si sa dai lovitura? Ca miner, vei merge sub pamant pentru a extrage minereuri si minerale valoroase. Foloseste unelte grele pentru a sparge roci, a colecta resurse si a le transporta la prelucrare. Cu cat muncesti mai mult, cu atat recompensele sunt mai mari! Ia-ti tarnacopul, aventureaza-te in adancuri si incepe sa descoperi comori astazi!",
stats = {
-- These functions allows you to configure your stats systems. Both working on server side! If nil is returned then it's just not display
earnings = function()
-- Average hour salary- need to return number
if IsDuplicityVersion() then
return nil
end
end,
time = function()
-- Average worked time - need to return number (time into ms)
if IsDuplicityVersion() then
return nil
end
end,
},
},
["oilrig"] = {
enabled = true,
applyJob = true,
grade = 1,
coords = vector3(1395.79, -3278.07, 6.23),
icon = "images/icons/oilrig.svg",
image = "images/jobs/oilrig.webp",
title = "Lucrator Platforma Petroliera",
subtitle = "Alimenteaza lumea din adancurile marii",
description = "Ca lucrator pe platforma petroliera, vei iesi pe mare pentru a extrage petrol pretios din adancurile oceanului. Opereaza utilaje grele, intretine platforma si prelucreaza petrolul brut. Locul de munca este practic si plin de actiune, oferind o plata excelenta. Echipeaza-te, pune-te pe treaba si incepe sa produci aurul negru!",
stats = {
-- These functions allows you to configure your stats systems. Both working on server side! If nil is returned then it's just not display
earnings = function()
-- Average hour salary- need to return number
if IsDuplicityVersion() then
return nil
end
end,
time = function()
-- Average worked time - need to return number (time into ms)
if IsDuplicityVersion() then
return nil
end
end,
},
},
["postman"] = {
enabled = true,
applyJob = true,
grade = 1,
coords = vector3(-232.16, -915.15, 32.31),
icon = "images/icons/postman.svg",
image = "images/jobs/postman.webp",
title = "Postas",
subtitle = "Conectam oamenii prin fiecare scrisoare",
description = "Devino curierul de incredere al orasului! La acest loc de munca, vei ridica si umple automatele de stiri. Pastreaza lucrurile in miscare pe masura ce calatoresti pe jos sau cu masina, asigurand livrari la timp. Ia-ti geanta, iesi pe strazi si incepe sa livrezi chiar acum!",
stats = {
-- These functions allows you to configure your stats systems. Both working on server side! If nil is returned then it's just not display
earnings = function()
-- Average hour salary- need to return number
if IsDuplicityVersion() then
return nil
end
end,
time = function()
-- Average worked time - need to return number (time into ms)
if IsDuplicityVersion() then
return nil
end
end,
},
},
["hunter"] = {
enabled = true,
applyJob = true,
grade = 1,
coords = vector3(167.82, -2222.7, 7.24),
icon = "images/icons/tresture_hunter.svg",
image = "images/jobs/treasure_hunter.webp",
title = "Vanator de Comori",
subtitle = "Cauta averi in colturile ascunse ale lumii",
description = "Porneste intr-o aventura ca vanator de comori! Scufunda-te in adancurile oceanului sau exploreaza locatii ascunse pentru a descoperi comori valoroase. Foloseste-ti uneltele pentru a cauta prada ingropata, artefacte rare si alte descoperiri pretioase. Ia-ti echipamentul, urmeaza indiciile si incepe calatoria spre bogatii astazi!",
stats = {
-- These functions allows you to configure your stats systems. Both working on server side! If nil is returned then it's just not display
earnings = function()
-- Average hour salary- need to return number
if IsDuplicityVersion() then
return nil
end
end,
time = function()
-- Average worked time - need to return number (time into ms)
if IsDuplicityVersion() then
return nil
end
end,
},
},
["windowcleaner"] = {
enabled = true,
applyJob = true,
grade = 1,
coords = vec3(-1243.98, -1240.71, 11.03),
icon = "images/icons/window_cleaner.svg",
image = "images/jobs/window_cleaner.webp",
title = "Spalator de Geamuri",
subtitle = "O priveliste clara pentru o zi mai buna",
description = "E timpul sa urci sus si sa stralucesti! Ca spalator de geamuri, vei escalada cladiri pentru a pastra geamurile orasului curate si stralucitoare. Foloseste-ti uneltele de curatare pentru a elimina murdaria, castigand bani pentru fiecare proiect finalizat. Cu privelisti superbe si plata avantajoasa, acesta este locul de munca perfect. Ia-ti echipamentul si incepe sa faci orasul sa straluceasca!",
stats = {
-- These functions allows you to configure your stats systems. Both working on server side! If nil is returned then it's just not display
earnings = function()
-- Average hour salary- need to return number
if IsDuplicityVersion() then
return nil
end
end,
time = function()
-- Average worked time - need to return number (time into ms)
if IsDuplicityVersion() then
return nil
end
end,
},
},
["bus"] = {
enabled = true,
applyJob = true,
grade = 1,
coords = vec3(-1243.98, -1240.71, 11.03),
icon = "images/icons/bus.svg",
image = "images/jobs/bus.webp",
title = "Sofer de Autobuz",
subtitle = "Transporta pasageri pe strazile orasului",
description = "Urca la volanul autobuzului si transporta pasagerii pe rutele din oras! Ca sofer de autobuz, vei urma trasee stabilite, vei opri la statii si te vei asigura ca toti pasagerii ajung la destinatie in siguranta si la timp. Acest loc de munca ofera un venit constant si este perfect pentru cine ii place sa conduca!",
stats = {
-- These functions allows you to configure your stats systems. Both working on server side! If nil is returned then it's just not display
earnings = function()
-- Average hour salary- need to return number
if IsDuplicityVersion() then
return nil
end
end,
time = function()
-- Average worked time - need to return number (time into ms)
if IsDuplicityVersion() then
return nil
end
end,
},
},
}
-- Here you can add your businesses
-- NOTE: If business is not displaying into menu it's propably not registered as job into framework!
Config.Business = {
-- ["NAME_OF_JOB"] = { -- Key is name of job from framework
-- enabled = true, -- Is this job enabled
-- applyJob = false, -- Is player can apply to this job
-- grade = 1, -- Grade that player will recive
-- gradeEdit = 0, -- Grade that player need to have to edit business page
-- coords = vector3(926.47, -1560.25, 30.74), -- Business location
-- icon = "path/to/icon.svg", -- URL to icon - iff nil it's just not displayed
-- image = "path/to/image.webp", -- URL to image that is "banner"
-- subtitle = "Lorem ipsum", -- Subtitle of this job
-- description = "Lorem ipsum dolor sit amet, consectetur adipiscing elit.", -- Description of this job
-- stats = { -- Stats configuration
-- -- These functions allows you to configure your stats systems. Both working on server side! If nil is returned then it's just not display
-- earnings = function()
-- -- Average hour salary- returns string you can use FormatMoney(earnings) function
-- if IsDuplicityVersion() then
-- return nil
-- end
-- end,
-- time = function()
-- -- Average worked time - need to return number (time into ms)
-- if IsDuplicityVersion() then
-- return nil
-- end
-- end,
-- },
-- },
["ammunation"] = {
enabled = true,
applyJob = false,
grade = 1,
gradeEdit = 0,
coords = vector3(23.0, -1105.67, 29.8),
icon = "images/icons/ammunation.svg",
image = "images/jobs/ammunation.webp",
title = "Armurerie",
subtitle = "Apararea ta este prioritatea noastra",
description = "Magazinul tau complet pentru arme de foc, munitie si echipament tactic. Fie ca te pregatesti pentru protectie sau liniste sufleteasca, te avem acoperit. De la pistoale si pusti la explozibili si vesta antiglont, ne asiguram ca esti mereu pregatit.",
stats = {
-- These functions allows you to configure your stats systems. Both working on server side! If nil is returned then it's just not display
earnings = function()
-- Average hour salary- need to return number
if IsDuplicityVersion() then
return nil
end
end,
time = function()
-- Average worked time - need to return number (time into ms)
if IsDuplicityVersion() then
return nil
end
end,
},
},
["weedshop"] = {
enabled = true,
applyJob = false,
grade = 1,
gradeEdit = 0,
coords = vector3(-1168.64, -1572.89, 4.66),
icon = "images/icons/weedshop.svg",
image = "images/jobs/weedshop.webp",
title = "Magazin Cannabis",
subtitle = "Ridica-ti simturile cu cannabis premium",
description = "Destinatia ta pentru cannabis premium si accesorii. Fie ca vrei sa te relaxezi sau sa-ti stimulezi creativitatea, avem cele mai bune soiuri si produse pentru nevoile tale. De la flori de top la comestibile si concentrate, asiguram calitate la fiecare achizitie.",
stats = {
-- These functions allows you to configure your stats systems. Both working on server side! If nil is returned then it's just not display
earnings = function()
-- Average hour salary- need to return number
if IsDuplicityVersion() then
return nil
end
end,
time = function()
-- Average worked time - need to return number (time into ms)
if IsDuplicityVersion() then
return nil
end
end,
},
},
["bennys"] = {
enabled = true,
applyJob = false,
grade = 1,
gradeEdit = 0,
coords = vector3(-211.72, -1325.31, 30.89),
icon = "images/icons/bennys.svg",
image = "images/jobs/bennys.webp",
title = "Bennys",
subtitle = "Personalizeaza-ti masina, exprima-ti stilul",
description = "Destinatia ta suprema pentru vehicule personalizate si upgrade-uri. Fie ca vrei sa imbunatatesti performanta, stilul sau ambele, te acoperim cu modificari de top. De la kit-uri de caroserie elegante la motoare puternice, transformam masina visurilor tale in realitate.",
stats = {
-- These functions allows you to configure your stats systems. Both working on server side! If nil is returned then it's just not display
earnings = function()
-- Average hour salary- need to return number
if IsDuplicityVersion() then
return nil
end
end,
time = function()
-- Average worked time - need to return number (time into ms)
if IsDuplicityVersion() then
return nil
end
end,
},
},
["tattoo"] = {
enabled = true,
applyJob = false,
grade = 1,
gradeEdit = 0,
coords = vector3(-1153.44, -1425.52, 4.95),
icon = "images/icons/tattoo.svg",
image = "images/jobs/tattoo.webp",
title = "Salon de Tatuaje",
subtitle = "Incorporeaza-ti povestile si arta pe piele",
description = "Destinatia ta principala pentru design-uri unice si personalizate. Fie ca este prima ta opera sau cea mai recenta, artistii nostri talentati iti vor aduce viziunea la viata cu precizie si creativitate. De la declaratii indraznete la detalii complicate, avem cerneala perfecta pentru tine.",
stats = {
-- These functions allows you to configure your stats systems. Both working on server side! If nil is returned then it's just not display
earnings = function()
-- Average hour salary- need to return number
if IsDuplicityVersion() then
return nil
end
end,
time = function()
-- Average worked time - need to return number (time into ms)
if IsDuplicityVersion() then
return nil
end
end,
},
},
["gym"] = {
enabled = true,
applyJob = false,
grade = 1,
gradeEdit = 0,
coords = vector3(-1201.14, -1569.93, 4.61),
icon = "images/icons/gym.svg",
image = "images/jobs/gym.webp",
title = "Sala de Fitness",
subtitle = "Sculpteaza-ti corpul, ridica-ti spiritul",
description = "Locul suprem pentru a-ti depasi limitele si a-ti sculpta fizicul perfect. Fie ca esti aici pentru forta, conditie fizica sau transformare, avem echipamentul, antrenorii si motivatia sa te ajutam sa reusesti. De la greutati la cardio, oferim tot ce ai nevoie.",
stats = {
-- These functions allows you to configure your stats systems. Both working on server side! If nil is returned then it's just not display
earnings = function()
-- Average hour salary- need to return number
if IsDuplicityVersion() then
return nil
end
end,
time = function()
-- Average worked time - need to return number (time into ms)
if IsDuplicityVersion() then
return nil
end
end,
},
},
["pdm"] = {
enabled = true,
applyJob = false,
grade = 1,
gradeEdit = 0,
coords = vector3(-45.67, -1098.34, 26.42),
icon = "images/icons/pdm.svg",
image = "images/jobs/pdm.webp",
title = "Dealer Auto (PDM)",
subtitle = "Conduce visul, luxul la indemana",
description = "Destinatia ta exclusiva pentru vehicule de lux si masini premium. Fie ca iti doresti cea mai recenta masina sport, o piesa clasica de colectie sau o frumusete personalizata, oferim cea mai fina selectie de vehicule premium. Conduce cu stil si ridica-ti experienta de sofat cu noi.",
stats = {
-- These functions allows you to configure your stats systems. Both working on server side! If nil is returned then it's just not display
earnings = function()
-- Average hour salary- need to return number
if IsDuplicityVersion() then
return nil
end
end,
time = function()
-- Average worked time - need to return number (time into ms)
if IsDuplicityVersion() then
return nil
end
end,
},
},
}