Installation
Last updated
Last updated
Do not skim the instructions. You need to follow every step of the Install Guide to make sure you're installing the script correctly
This is required for the script to function, it won't work without it
It is highly recommend to put this script folder in a new folder called [jim]
Then add ensure [jim]
AFTER your other scripts in your server.cfg
GO TO YOUR server.cfg
The ORDER of the load order is important, check information
# Default & Standalone Resources
# ------------------------------
ensure chat
ensure hardcap
ensure oxmysql
start ox_lib
# ESX Legacy Core
# ----------
ensure [core]
ensure [esx_addons]
start ox_inventory
start ox_target
ensure [standalone] # Place `jim_bridge` here
# ESX Addons
# ----------
# Other
ensure [jimextras] # Place `jim-payments` / `jim-consumables` / `jim-jobgarage` / `jim-djbooth` here
ensure [jim] # Place all other jim scripts here
IF YOU ALREADY HAVE A [jim] FOLDER, PUT IT IN THAT FOLDER YOU DO NOT NEED TO CREATE A NEW ONE.
This is the default system for payments in the script but can easily be changed in client.lua
When triggered gets a list of the nearest players and lets you choose which one to charge
I class it as optional
because you don't specifically need it if you have another you want to use.
It is highly recommend to put this script folder in a new folder called [jim]
Then add ensure [jim]
AFTER your other scripts in your server.cfg
GO TO YOUR server.cfg
The ORDER of the load order is important, check information here
# QBCore & Extra stuff
ensure qb-core
ensure [qb]
ensure [standalone] # Place `jim_bridge` here
ensure [voice]
ensure [defaultmaps]
# Extra Jim Stuff
ensure [jimextras] # Place `jim-payments` / `jim-consumables` / `jim-jobgarage` / `jim-djbooth` here
ensure [jim] # Place all other jim scripts here
IF YOU ALREADY HAVE A [jim] FOLDER, PUT IT IN THAT FOLDER YOU DO NOT NEED TO CREATE A NEW ONE.
This is the default system for payments in the script but can easily be changed in client.lua
When triggered gets a list of the nearest players and lets you choose which one to charge
I class it as optional
because you don't specifically need it if you have another you want to use.
If jim-consumables
is installed, the script will attempt to reroute consumables
The server side will automatically add the items to jim-consumables
(edit any values you wish there)
When used the item will trigger the jim-script:client:consume
event which detects wether to use built in event's or jim-consuambles
(if found)
It is highly recommend to put this script folder in a new folder called [jim]
Then add ensure [jim]
AFTER your other scripts in your server.cfg
GO TO YOUR server.cfg
The ORDER of the load order is important, check information here
# Qbox & Extra stuff
ensure ox_lib
ensure qbx_core
ensure ox_target
ensure [ox]
ensure [qbx]
ensure [standalone] # Place `jim_bridge` here
ensure [voice]
ensure [npwd-apps]
ensure qbx_npwd
ensure npwd
# Extra Jim Stuff
ensure [jimextras] # Place `jim-payments` / `jim-consumables` / `jim-jobgarage` / `jim-djbooth` here
ensure [jim] # Place all other jim scripts here
IF YOU ALREADY HAVE A [jim] FOLDER, PUT IT IN THAT FOLDER YOU DO NOT NEED TO CREATE A NEW ONE.
This is the default system for payments in the script but can easily be changed in client.lua
When triggered gets a list of the nearest players and lets you choose which one to charge
I class it as optional
because you don't specifically need it if you have another you want to use.
If jim-consumables
is installed, the script will attempt to reroute consumables
The server side will automatically add the items to jim-consumables
(edit any values you wish there)
When used the item will trigger the jim-script:client:consume
event which detects wether to use built in event's or jim-consuambles
(if found)
It is highly recommend to put this script folder in a new folder called [jim]
Then add ensure [jim]
AFTER your other scripts in your server.cfg
GO TO YOUR server.cfg
The ORDER of the load order is important, check information here
start chat
start sessionmanager
start pe-basicloading
start bob74_ipl
start pma-voice
start oxmysql
start ox_lib
start ox_core
start ox_target
start illenium-appearance
start ox_inventory
ensure [standalone] # Place `jim_bridge` here
# Extra Jim Stuff
ensure [jimextras] # Place `jim-payments` / `jim-consumables` / `jim-jobgarage` / `jim-djbooth` here
ensure [jim] # Place all other jim scripts here
# Extra Other Scripts Here
IF YOU ALREADY HAVE A [jim] FOLDER, PUT IT IN THAT FOLDER YOU DO NOT NEED TO CREATE A NEW ONE.
This is the default system for payments in the script but can easily be changed in client.lua
When triggered gets a list of the nearest players and lets you choose which one to charge
I class it as optional
because you don't specifically need it if you have another you want to use.
If jim-consumables
is installed, the script will attempt to reroute consumables
The server side will automatically add the items to jim-consumables
(edit any values you wish there)
When used the item will trigger the jim-script:client:consume
event which detects wether to use built in event's or jim-consuambles
(if found)
Import the esx_jobs.sql
into your database to add the jobs and their grades
INSERT INTO `jobs` (name, label) VALUES
('mechanic', 'Mechanic')
;
INSERT INTO `job_grades` (job_name, grade, name, label, salary, skin_male, skin_female) VALUES
('mechanic',0,'recruit','Recruit',12,'{}','{}'),
('mechanic',1,'novice','Novice',24,'{}','{}'),
('mechanic',2,'experienced','Experienced',36,'{}','{}'),
('mechanic',3,'advanced',"Advanced",48,'{}','{}'),
('mechanic',4,'boss','Manager',0,'{}','{}')
;
Add the lines from qb_jobs.txt
to your qb-core > shared > jobs.lua
['mechanic'] = {
label = 'Mechanic',
defaultDuty = true,
grades = {
['0'] = { name = 'Recruit', payment = 50 },
['1'] = { name = 'Novice', payment = 75 },
['2'] = { name = 'Experienced', payment = 100 },
['3'] = { name = 'Advanced', payment = 125 },
['4'] = { name = 'Manager', isboss = true, payment = 150 },
},
},
Add the lines from qb_jobs.txt
to your qbx_core > shared > jobs.lua
['mechanic'] = {
label = 'Mechanic',
defaultDuty = true,
grades = {
[0] = { name = 'Recruit', payment = 50 },
[1] = { name = 'Novice', payment = 75 },
[2] = { name = 'Experienced', payment = 100 },
[3] = { name = 'Advanced', payment = 125 },
[4] = { name = 'Manager', isboss = true, payment = 150 },
},
},
Import the ox_jobs.sql
into your database to add the jobs and their grades
INSERT IGNORE INTO `account_roles` (`name`) VALUES
('novice'),
('experienced'),
('advanced'),
('manager'),
('owner');
INSERT IGNORE INTO `ox_groups` ( `name`, `label`, `colour`, `hasAccount`) VALUES
( 'mechanic', 'Mechanic', NULL, 1 );
INSERT IGNORE INTO `ox_group_grades` (`group`, `grade`, `label`, `accountRole`) VALUES
('mechanic', 0, 'Recruit', NULL),
('mechanic', 1, 'Novice', 'novice'),
('mechanic', 2, 'Experienced', 'experienced'),
('mechanic', 3, 'Advanced', 'advanced'),
('mechanic', 4, 'Manager', 'manager'),
('mechanic', 5, 'Owner', 'owner');
These items work for both old and new qb-inventory
There are two image folders:
images
contains standard coloured items
images_alt
contains tiered images with their rank included
Add the chosen images to your inventory folder eg. qb-inventory > html > images
If using qb-inventory
or similar, add the lines from qb_items.txt
to your qb-core > shared > items.lua
-- Jim-Mechanic --
mechanic_tools = { name = "mechanic_tools", label = "Mechanic tools", weight = 0, type = "item", image = "mechanic_tools.png", unique = true, useable = true, shouldClose = true, description = "Needed for vehicle repairs"},
toolbox = { name = "toolbox", label = "Toolbox", weight = 0, type = "item", image = "toolbox.png", unique = true, useable = true, shouldClose = true, description = "Needed for Performance part removal"},
ducttape = { name = "ducttape", label = "Duct Tape", weight = 0, type = "item", image = "bodyrepair.png", unique = true, useable = true, shouldClose = true, description = "Good for quick fixes"},
mechboard = { name = "mechboard", label = "Mechanic Sheet", weight = 0, type = "item", image = "mechboard.png", unique = true, useable = true, shouldClose = true, description = ""},
-- Nitrous/Nos
nos = { name = "nos", label = "NOS Bottle", weight = 0, type = "item", image = "nos.png", unique = true, useable = true, shouldClose = true, description = "A full bottle of NOS"},
noscan = { name = "noscan", label = "Empty NOS Bottle", weight = 0, type = "item", image = "noscan.png", unique = false, useable = true, shouldClose = true, description = "An Empty bottle of NOS"},
noscolour = { name = "noscolour", label = "NOS Colour Injector", weight = 0, type = "item", image = "noscolour.png", unique = false, useable = true, shouldClose = true, description = "Make that purge spray"},
--Performance
turbo = { name = "turbo", label = "Supercharger Turbo", weight = 0, type = "item", image = "turbo.png", unique = true, useable = true, shouldClose = true, description = ""},
car_armor = { name = "car_armor", label = "Vehicle Armor", weight = 0, type = "item", image = "car_armour.png", unique = true, useable = true, shouldClose = true, description = ""},
engine1 = { name = "engine1", label = "Tier 1 Engine", weight = 0, type = "item", image = "engine1.png", unique = true, useable = true, shouldClose = true, description = ""},
engine2 = { name = "engine2", label = "Tier 2 Engine", weight = 0, type = "item", image = "engine2.png", unique = true, useable = true, shouldClose = true, description = ""},
engine3 = { name = "engine3", label = "Tier 3 Engine", weight = 0, type = "item", image = "engine3.png", unique = true, useable = true, shouldClose = true, description = ""},
engine4 = { name = "engine4", label = "Tier 4 Engine", weight = 0, type = "item", image = "engine4.png", unique = true, useable = true, shouldClose = true, description = ""},
engine5 = { name = "engine5", label = "Tier 5 Engine", weight = 0, type = "item", image = "engine5.png", unique = true, useable = true, shouldClose = true, description = ""},
transmission1 = { name = "transmission1", label = "Tier 1 Transmission", weight = 0, type = "item", image = "transmission1.png", unique = true, useable = true, shouldClose = true, description = ""},
transmission2 = { name = "transmission2", label = "Tier 2 Transmission", weight = 0, type = "item", image = "transmission2.png", unique = true, useable = true, shouldClose = true, description = ""},
transmission3 = { name = "transmission3", label = "Tier 3 Transmission", weight = 0, type = "item", image = "transmission3.png", unique = true, useable = true, shouldClose = true, description = ""},
transmission4 = { name = "transmission4", label = "Tier 4 Transmission", weight = 0, type = "item", image = "transmission4.png", unique = true, useable = true, shouldClose = true, description = ""},
brakes1 = { name = "brakes1", label = "Tier 1 Brakes", weight = 0, type = "item", image = "brakes1.png", unique = true, useable = true, shouldClose = true, description = ""},
brakes2 = { name = "brakes2", label = "Tier 2 Brakes", weight = 0, type = "item", image = "brakes2.png", unique = true, useable = true, shouldClose = true, description = ""},
brakes3 = { name = "brakes3", label = "Tier 3 Brakes", weight = 0, type = "item", image = "brakes3.png", unique = true, useable = true, shouldClose = true, description = ""},
suspension1 = { name = "suspension1", label = "Tier 1 Suspension", weight = 0, type = "item", image = "suspension1.png", unique = true, useable = true, shouldClose = true, description = ""},
suspension2 = { name = "suspension2", label = "Tier 2 Suspension", weight = 0, type = "item", image = "suspension2.png", unique = true, useable = true, shouldClose = true, description = ""},
suspension3 = { name = "suspension3", label = "Tier 3 Suspension", weight = 0, type = "item", image = "suspension3.png", unique = true, useable = true, shouldClose = true, description = ""},
suspension4 = { name = "suspension4", label = "Tier 4 Suspension", weight = 0, type = "item", image = "suspension4.png", unique = true, useable = true, shouldClose = true, description = ""},
suspension5 = { name = "suspension5", label = "Tier 5 Suspension", weight = 0, type = "item", image = "suspension5.png", unique = true, useable = true, shouldClose = true, description = ""},
-- Tire Style Changers
bprooftires = { name = "bprooftires", label = "Bulletproof Tires", weight = 0, type = "item", image = "bprooftires.png", unique = true, useable = true, shouldClose = true, description = ""},
drifttires = { name = "drifttires", label = "Drift Tires", weight = 0, type = "item", image = "drifttires.png", unique = true, useable = true, shouldClose = true, description = ""},
-- Vehicle Extra Damage Items
oilp1 = { name = "oilp1", label = "Tier 1 Oil Pump", weight = 0, type = "item", image = "oilp1.png", unique = true, useable = true, shouldClose = true, description = ""},
oilp2 = { name = "oilp2", label = "Tier 2 Oil Pump", weight = 0, type = "item", image = "oilp2.png", unique = true, useable = true, shouldClose = true, description = ""},
oilp3 = { name = "oilp3", label = "Tier 3 Oil Pump", weight = 0, type = "item", image = "oilp3.png", unique = true, useable = true, shouldClose = true, description = ""},
drives1 = { name = "drives1", label = "Tier 1 Drive Shaft", weight = 0, type = "item", image = "drives1.png", unique = true, useable = true, shouldClose = true, description = ""},
drives2 = { name = "drives2", label = "Tier 2 Drive Shaft", weight = 0, type = "item", image = "drives2.png", unique = true, useable = true, shouldClose = true, description = ""},
drives3 = { name = "drives3", label = "Tier 3 Drive Shaft", weight = 0, type = "item", image = "drives3.png", unique = true, useable = true, shouldClose = true, description = ""},
cylind1 = { name = "cylind1", label = "Tier 1 Cylinder Head", weight = 0, type = "item", image = "cylind1.png", unique = true, useable = true, shouldClose = true, description = ""},
cylind2 = { name = "cylind2", label = "Tier 2 Cylinder Head", weight = 0, type = "item", image = "cylind2.png", unique = true, useable = true, shouldClose = true, description = ""},
cylind3 = { name = "cylind3", label = "Tier 3 Cylinder Head", weight = 0, type = "item", image = "cylind3.png", unique = true, useable = true, shouldClose = true, description = ""},
cables1 = { name = "cables1", label = "Tier 1 Battery Cables", weight = 0, type = "item", image = "cables1.png", unique = true, useable = true, shouldClose = true, description = ""},
cables2 = { name = "cables2", label = "Tier 2 Battery Cables", weight = 0, type = "item", image = "cables2.png", unique = true, useable = true, shouldClose = true, description = ""},
cables3 = { name = "cables3", label = "Tier 3 Battery Cables", weight = 0, type = "item", image = "cables3.png", unique = true, useable = true, shouldClose = true, description = ""},
fueltank1 = { name = "fueltank1", label = "Tier 1 Fuel Tank", weight = 0, type = "item", image = "fueltank1.png", unique = true, useable = true, shouldClose = true, description = ""},
fueltank2 = { name = "fueltank2", label = "Tier 2 Fuel Tank", weight = 0, type = "item", image = "fueltank2.png", unique = true, useable = true, shouldClose = true, description = ""},
fueltank3 = { name = "fueltank3", label = "Tier 3 Fuel Tank", weight = 0, type = "item", image = "fueltank3.png", unique = true, useable = true, shouldClose = true, description = ""},
antilag = { name = "antilag", label = "AntiLag", weight = 0, type = "item", image = "antiLag.png", unique = true, useable = true, shouldClose = true, description = ""},
--Cosmetics
underglow_controller = { name = "underglow_controller", label = "Neon Controller", weight = 0, type = "item", image = "underglow_controller.png", unique = false, useable = true, shouldClose = true, description = "RGB LED Vehicle Remote"},
headlights = { name = "headlights", label = "Xenon Headlights", weight = 0, type = "item", image = "headlights.png", unique = true, useable = true, shouldClose = true, description = ""},
tint_supplies = { name = "tint_supplies", label = "Window Tint Kit", weight = 0, type = "item", image = "tint_supplies.png", unique = false, useable = true, shouldClose = true, description = "Supplies for window tinting"},
customplate = { name = "customplate", label = "Customized Plates", weight = 0, type = "item", image = "plate.png", unique = true, useable = true, shouldClose = true, description = ""},
hood = { name = "hood", label = "Vehicle Hood", weight = 0, type = "item", image = "hood.png", unique = true, useable = true, shouldClose = true, description = ""},
roof = { name = "roof", label = "Vehicle Roof", weight = 0, type = "item", image = "roof.png", unique = true, useable = true, shouldClose = true, description = ""},
spoiler = { name = "spoiler", label = "Vehicle Spoiler", weight = 0, type = "item", image = "spoiler.png", unique = true, useable = true, shouldClose = true, description = ""},
bumper = { name = "bumper", label = "Vehicle Bumper", weight = 0, type = "item", image = "bumper.png", unique = true, useable = true, shouldClose = true, description = ""},
skirts = { name = "skirts", label = "Vehicle Skirts", weight = 0, type = "item", image = "skirts.png", unique = true, useable = true, shouldClose = true, description = ""},
exhaust = { name = "exhaust", label = "Vehicle Exhaust", weight = 0, type = "item", image = "exhaust.png", unique = true, useable = true, shouldClose = true, description = ""},
seat = { name = "seat", label = "Seat Cosmetics", weight = 0, type = "item", image = "seat.png", unique = true, useable = true, shouldClose = true, description = ""},
rollcage = { name = "rollcage", label = "Roll Cage", weight = 0, type = "item", image = "rollcage.png", unique = true, useable = true, shouldClose = true, description = ""},
rims = { name = "rims", label = "Custom Wheel Rims", weight = 0, type = "item", image = "rims.png", unique = true, useable = true, shouldClose = true, description = ""},
livery = { name = "livery", label = "Livery Roll", weight = 0, type = "item", image = "livery.png", unique = true, useable = true, shouldClose = true, description = ""},
paintcan = { name = "paintcan", label = "Vehicle Spray Can", weight = 0, type = "item", image = "spraycan.png", unique = true, useable = true, shouldClose = true, description = ""},
tires = { name = "tires", label = "Drift Smoke Tires", weight = 0, type = "item", image = "tires.png", unique = true, useable = true, shouldClose = true, description = ""},
horn = { name = "horn", label = "Custom Vehicle Horn", weight = 0, type = "item", image = "horn.png", unique = true, useable = true, shouldClose = true, description = ""},
internals = { name = "internals", label = "Internal Cosmetics", weight = 0, type = "item", image = "internals.png", unique = true, useable = true, shouldClose = true, description = ""},
externals = { name = "externals", label = "Exterior Cosmetics", weight = 0, type = "item", image = "mirror.png", unique = true, useable = true, shouldClose = true, description = ""},
--Repair Parts
newoil = { name = "newoil", label = "Car Oil", weight = 0, type = "item", image = "caroil.png", unique = false, useable = false, shouldClose = false, description = ""},
sparkplugs = { name = "sparkplugs", label = "Spark Plugs", weight = 0, type = "item", image = "sparkplugs.png", unique = false, useable = false, shouldClose = false, description = ""},
carbattery = { name = "carbattery", label = "Car Battery", weight = 0, type = "item", image = "carbattery.png", unique = false, useable = false, shouldClose = false, description = ""},
axleparts = { name = "axleparts", label = "Axle Parts", weight = 0, type = "item", image = "axleparts.png", unique = false, useable = false, shouldClose = false, description = ""},
sparetire = { name = "sparetire", label = "Spare Tire", weight = 0, type = "item", image = "sparetire.png", unique = true, useable = false, shouldClose = false, description = ""},
manual = { name = 'manual', label = 'Manual Transmission', weight = 0, type = 'item', image = 'manual.png', unique = true, useable = true, shouldClose = true, combinable = nil, description = 'Manual Transmission change for vehicles' },
underglow = { name = 'underglow', label = 'Underglow LEDS', weight = 0, type = 'item', image = 'underglow.png', unique = true, useable = true, shouldClose = true, combinable = nil, description = 'Underglow addition for vehicles' },
stancerkit = { name = 'stancerkit', label = 'Stancer Kit', weight = 0, type = 'item', image = 'stancerkit.png', unique = true, useable = true, shouldClose = true, combinable = nil, description = 'Stancer Kit for vehicles' },
newplate = { name = 'newplate', label = 'New Plate', weight = 250, type = 'item', image = 'newplate.png', unique = true, useable = true, shouldClose = true, combinable = nil, description = 'A Customizable licence plate' },
--Already in QBCore
--harness = { name = 'harness', label = 'Race Harness', weight = 1000, type = 'item', image = 'harness.png', unique = true, useable = true, shouldClose = true, combinable = nil, description = 'Racing Harness so no matter what you stay in the car' },
--repairkit = { name = 'repairkit', label = 'Repairkit', weight = 2500, type = 'item', image = 'repairkit.png', unique = false, useable = true, shouldClose = true, combinable = nil, description = 'A nice toolbox with stuff to repair your vehicle' },
--advancedrepairkit = { name = 'advancedrepairkit', label = 'Advanced Repairkit', weight = 4000, type = 'item', image = 'advancedkit.png', unique = false, useable = true, shouldClose = true, combinable = nil, description = 'A nice toolbox with stuff to repair your vehicle' },
--cleaningkit = { name = 'cleaningkit', label = 'Cleaning Kit', weight = 250, type = 'item', image = 'cleaningkit.png', unique = false, useable = true, shouldClose = true, combinable = nil, description = 'A microfiber cloth with some soap will let your car sparkle again!' },
This applies to any framework using ox_inventory
Currently while using ESX
my scripts only support ox_inventory
There are two image folders:
images
contains standard coloured items
images_alt
contains tiered images with their rank included
Add the chosen images to your inventory folder eg. ox_inventory > web > images
Add the ox_items.txt
to your ox_inventory > data > items.lua
-- Jim-Mechanic --
["mechanic_tools"] = {
label = "Mechanic tools", weight = 0, stack = false, close = true, description = "Needed for vehicle repairs",
client = { image = "mechanic_tools.png", event = "jim-mechanic:client:Repair:Check" }
},
["toolbox"] = {
label = "Toolbox", weight = 0, stack = false, close = true, description = "Needed for Performance part removal",
client = { image = "toolbox.png", event = "jim-mechanic:client:Menu" }
},
["ducttape"] = {
label = "Duct Tape", weight = 0, stack = false, close = true, description = "Good for quick fixes",
client = { image = "bodyrepair.png", event = "jim-mechanic:quickrepair" }
},
['mechboard'] = { label = 'Mechanic Sheet', weight = 0, stack = false, close = false,
buttons = {
{ label = 'Copy Parts List',
action = function(slot)
local item = exports.ox_inventory:Search('slots', 'mechboard')
for _, v in pairs(item) do
if (v.slot == slot) then lib.setClipboard(v.metadata.info.vehlist) break end
end
end },
{ label = 'Copy Plate Number',
action = function(slot)
local item = exports.ox_inventory:Search('slots', 'mechboard')
for _, v in pairs(item) do
if (v.slot == slot) then lib.setClipboard(v.metadata.info.vehplate) break end
end
end },
{ label = 'Copy Vehicle Model',
action = function(slot)
local item = exports.ox_inventory:Search('slots', 'mechboard')
for _, v in pairs(item) do
if (v.slot == slot) then lib.setClipboard(v.metadata.info.veh) break end
end
end },
},
},
--Performance
["turbo"] = {
label = "Supercharger Turbo", weight = 0, stack = false, close = true, description = "Who doesn't need a 65mm Turbo??",
client = { image = "turbo.png", event = "jim-mechanic:client:applyTurbo", remove = false },
},
["car_armor"] = {
label = "Vehicle Armor", weight = 0, stack = false, close = true, description = "",
client = { image = "armour.png", event = "jim-mechanic:client:applyArmour", remove = false },
},
["nos"] = {
label = "NOS Bottle", weight = 0, stack = false, close = true, description = "A full bottle of NOS",
client = { image = "nos.png", event = "jim-mechanic:client:applyNOS", },
},
["noscan"] = {
label = "Empty NOS Bottle", weight = 0, stack = true, close = true, description = "An Empty bottle of NOS",
client = { image = "noscan.png", }
},
["noscolour"] = {
label = "NOS Colour Injector", weight = 0, stack = true, close = true, description = "Make that purge spray",
client = { image = "noscolour.png", event = "jim-mechanic:client:NOS:rgbORhex", },
},
["engine1"] = {
label = "Tier 1 Engine", weight = 0, stack = false, close = true, description = "",
client = { image = "engine1.png", event = "jim-mechanic:client:applyEngine", level = 0, remove = false },
},
["engine2"] = {
label = "Tier 2 Engine", weight = 0, stack = false, close = true, description = "",
client = { image = "engine2.png", event = "jim-mechanic:client:applyEngine", level = 1, remove = false },
},
["engine3"] = {
label = "Tier 3 Engine", weight = 0, stack = false, close = true, description = "",
client = { image = "engine3.png", event = "jim-mechanic:client:applyEngine", level = 2, remove = false },
},
["engine4"] = {
label = "Tier 4 Engine", weight = 0, stack = false, close = true, description = "",
client = { image = "engine4.png", event = "jim-mechanic:client:applyEngine", level = 3, remove = false },
},
["engine5"] = {
label = "Tier 5 Engine", weight = 0, stack = false, close = true, description = "",
client = { image = "engine5.png", event = "jim-mechanic:client:applyEngine", level = 4, remove = false },
},
["transmission1"] = {
label = "Tier 1 Transmission", weight = 0, stack = false, close = true, description = "",
client = { image = "transmission1.png", event = "jim-mechanic:client:applyTransmission", level = 0, remove = false },
},
["transmission2"] = {
label = "Tier 2 Transmission", weight = 0, stack = false, close = true, description = "",
client = { image = "transmission2.png", event = "jim-mechanic:client:applyTransmission", level = 1, remove = false },
},
["transmission3"] = {
label = "Tier 3 Transmission", weight = 0, stack = false, close = true, description = "",
client = { image = "transmission3.png", event = "jim-mechanic:client:applyTransmission", level = 2, remove = false },
},
["transmission4"] = {
label = "Tier 4 Transmission", weight = 0, stack = false, close = true, description = "",
client = { image = "transmission4.png", event = "jim-mechanic:client:applyTransmission", level = 3, remove = false },
},
["brakes1"] = {
label = "Tier 1 Brakes", weight = 0, stack = false, close = true, description = "",
client = { image = "brakes1.png", event = "jim-mechanic:client:applyBrakes", level = 0, remove = false },
},
["brakes2"] = {
label = "Tier 2 Brakes", weight = 0, stack = false, close = true, description = "",
client = { image = "brakes2.png", event = "jim-mechanic:client:applyBrakes", level = 1, remove = false },
},
["brakes3"] = {
label = "Tier 3 Brakes", weight = 0, stack = false, close = true, description = "",
client = { image = "brakes3.png", event = "jim-mechanic:client:applyBrakes", level = 2, remove = false },
},
["suspension1"] = {
label = "Tier 1 Suspension", weight = 0, stack = false, close = true, description = "",
client = { image = "suspension1.png", event = "jim-mechanic:client:applySuspension", level = 0, remove = false },
},
["suspension2"] = {
label = "Tier 2 Suspension", weight = 0, stack = false, close = true, description = "",
client = { image = "suspension2.png", event = "jim-mechanic:client:applySuspension", level = 1, remove = false },
},
["suspension3"] = {
label = "Tier 3 Suspension", weight = 0, stack = false, close = true, description = "",
client = { image = "suspension3.png", event = "jim-mechanic:client:applySuspension", level = 2, remove = false },
},
["suspension4"] = {
label = "Tier 4 Suspension", weight = 0, stack = false, close = true, description = "",
client = { image = "suspension4.png", event = "jim-mechanic:client:applySuspension", level = 3, remove = false },
},
["suspension5"] = {
label = "Tier 5 Suspension", weight = 0, stack = false, close = true, description = "",
client = { image = "suspension5.png", event = "jim-mechanic:client:applySuspension", level = 4, remove = false },
},
["bprooftires"] = {
label = "Bulletproof Tires", weight = 0, stack = false, close = true, description = "",
client = { image = "bprooftires.png", event = "jim-mechanic:client:applyBulletProof", remove = false },
},
["drifttires"] = {
label = "Drift Tires", weight = 0, stack = false, close = true, description = "",
client = { image = "drifttires.png", event = "jim-mechanic:client:applyDrift", remove = false },
},
["oilp1"] = {
label = "Tier 1 Oil Pump", weight = 0, stack = false, close = true, description = "",
client = { image = "oilp1.png", event = "jim-mechanic:client:applyExtraPart", level = 1, mod = "oilp", remove = false },
},
["oilp2"] = {
label = "Tier 2 Oil Pump", weight = 0, stack = false, close = true, description = "",
client = { image = "oilp2.png", event = "jim-mechanic:client:applyExtraPart", level = 2, mod = "oilp", remove = false },
},
["oilp3"] = {
label = "Tier 3 Oil Pump", weight = 0, stack = false, close = true, description = "",
client = { image = "oilp3.png", event = "jim-mechanic:client:applyExtraPart", level = 3, mod = "oilp", remove = false },
},
["drives1"] = {
label = "Tier 1 Drive Shaft", weight = 0, stack = false, close = true, description = "",
client = { image = "drives1.png", event = "jim-mechanic:client:applyExtraPart", level = 1, mod = "drives", remove = false },
},
["drives2"] = {
label = "Tier 2 Drive Shaft", weight = 0, stack = false, close = true, description = "",
client = { image = "drives2.png", event = "jim-mechanic:client:applyExtraPart", level = 2, mod = "drives", remove = false },
},
["drives3"] = {
label = "Tier 3 Drive Shaft", weight = 0, stack = false, close = true, description = "",
client = { image = "drives3.png", event = "jim-mechanic:client:applyExtraPart", level = 3, mod = "drives", remove = false },
},
["cylind1"] = {
label = "Tier 1 Cylinder Head", weight = 0, stack = false, close = true, description = "",
client = { image = "cylind1.png", event = "jim-mechanic:client:applyExtraPart", level = 1, mod = "cylind", remove = false },
},
["cylind2"] = {
label = "Tier 2 Cylinder Head", weight = 0, stack = false, close = true, description = "",
client = { image = "cylind2.png", event = "jim-mechanic:client:applyExtraPart", level = 2, mod = "cylind", remove = false },
},
["cylind3"] = {
label = "Tier 3 Cylinder Head", weight = 0, stack = false, close = true, description = "",
client = { image = "cylind3.png", event = "jim-mechanic:client:applyExtraPart", level = 3, mod = "cylind", remove = false },
},
["cables1"] = {
label = "Tier 1 Battery Cables", weight = 0, stack = false, close = true, description = "",
client = { image = "cables1.png", event = "jim-mechanic:client:applyExtraPart", level = 1, mod = "cables", remove = false },
},
["cables2"] = {
label = "Tier 2 Battery Cables", weight = 0, stack = false, close = true, description = "",
client = { image = "cables2.png", event = "jim-mechanic:client:applyExtraPart", level = 2, mod = "cables", remove = false },
},
["cables3"] = {
label = "Tier 3 Battery Cables", weight = 0, stack = false, close = true, description = "",
client = { image = "cables3.png", event = "jim-mechanic:client:applyExtraPart", level = 3, mod = "cables", remove = false },
},
["fueltank1"] = {
label = "Tier 1 Fuel Tank", weight = 0, stack = false, close = true, description = "",
client = { image = "fueltank1.png", event = "jim-mechanic:client:applyExtraPart", level = 1, mod = "fueltank", remove = false },
},
["fueltank2"] = {
label = "Tier 2 Fuel Tank", weight = 0, stack = false, close = true, description = "",
client = { image = "fueltank2.png", event = "jim-mechanic:client:applyExtraPart", level = 2, mod = "fueltank", remove = false },
},
["fueltank3"] = {
label = "Tier 3 Fuel Tank", weight = 0, stack = false, close = true, description = "",
client = { image = "fueltank3.png", event = "jim-mechanic:client:applyExtraPart", level = 3, mod = "fueltank", remove = false },
},
["antilag"] = {
label = "AntiLag", weight = 0, stack = false, close = true, description = "",
client = { image = "antiLag.png", event = "jim-mechanic:client:applyAntiLag", remove = false },
},
["underglow_controller"] = {
label = "Neon Controller", weight = 0, stack = false, close = true, description = "",
client = { image = "underglow_controller.png", event = "jim-mechanic:client:neonMenu", },
},
["headlights"] = {
label = "Xenon Headlights", weight = 0, stack = false, close = true, description = "",
client = { image = "headlights.png", event = "jim-mechanic:client:applyXenons", },
},
["tint_supplies"] = {
label = "Window Tint Kit", weight = 0, stack = false, close = true, description = "",
client = { image = "tint_supplies.png", event = "jim-mechanic:client:Cosmetic:Check", },
},
["customplate"] = {
label = "Customized Plates", weight = 0, stack = false, close = true, description = "",
client = { image = "plate.png", event = "jim-mechanic:client:Cosmetic:Check", },
},
["hood"] = {
label = "Vehicle Hood", weight = 0, stack = false, close = true, description = "",
client = { image = "hood.png", event = "jim-mechanic:client:Cosmetic:Check", },
},
["roof"] = {
label = "Vehicle Roof", weight = 0, stack = false, close = true, description = "",
client = { image = "roof.png", event = "jim-mechanic:client:Cosmetic:Check", },
},
["spoiler"] = {
label = "Vehicle Spoiler", weight = 0, stack = false, close = true, description = "",
client = { image = "spoiler.png", event = "jim-mechanic:client:Cosmetic:Check", },
},
["bumper"] = {
label = "Vehicle Bumper", weight = 0, stack = false, close = true, description = "",
client = { image = "bumper.png", event = "jim-mechanic:client:Cosmetic:Check", },
},
["skirts"] = {
label = "Vehicle Skirts", weight = 0, stack = false, close = true, description = "",
client = { image = "skirts.png", event = "jim-mechanic:client:Cosmetic:Check", },
},
["exhaust"] = {
label = "Vehicle Exhaust", weight = 0, stack = false, close = true, description = "",
client = { image = "exhaust.png", event = "jim-mechanic:client:Cosmetic:Check", },
},
["seat"] = {
label = "Seat Cosmetics", weight = 0, stack = false, close = true, description = "",
client = { image = "seat.png", event = "jim-mechanic:client:Cosmetic:Check", },
},
["rollcage"] = {
label = "Roll Cage", weight = 0, stack = false, close = true, description = "",
client = { image = "rollcage.png", event = "jim-mechanic:client:Cosmetic:Check", },
},
["rims"] = {
label = "Custom Wheel Rims", weight = 0, stack = false, close = true, description = "",
client = { image = "rims.png", event = "jim-mechanic:client:Rims:Check", },
},
["livery"] = {
label = "Livery Roll", weight = 0, stack = false, close = true, description = "",
client = { image = "livery.png", event = "jim-mechanic:client:Cosmetic:Check", },
},
["paintcan"] = {
label = "Vehicle Spray Can", weight = 0, stack = false, close = true, description = "",
client = { image = "spraycan.png", event = "jim-mechanic:client:Paints:Check", },
},
["tires"] = {
label = "Drift Smoke Tires", weight = 0, stack = false, close = true, description = "",
client = { image = "tires.png", event = "jim-mechanic:client:Tires:Check", },
},
["horn"] = {
label = "Custom Vehicle Horn", weight = 0, stack = false, close = true, description = "",
client = { image = "horn.png", event = "jim-mechanic:client:Cosmetic:Check", },
},
["internals"] = {
label = "Internal Cosmetics", weight = 0, stack = false, close = true, description = "",
client = { image = "internals.png", event = "jim-mechanic:client:Cosmetic:Check", },
},
["externals"] = {
label = "Exterior Cosmetics", weight = 0, stack = false, close = true, description = "",
client = { image = "mirror.png", event = "jim-mechanic:client:Cosmetic:Check", },
},
["newoil"] = {
label = "Car Oil", weight = 0, stack = false, close = true, description = "",
client = { image = "caroil.png", },
},
["sparkplugs"] = {
label = "Spark Plugs", weight = 0, stack = false, close = true, description = "",
client = { image = "sparkplugs.png", },
},
["carbattery"] = {
label = "Car Battery", weight = 0, stack = false, close = true, description = "",
client = { image = "carbattery.png", },
},
["axleparts"] = {
label = "Axle Parts", weight = 0, stack = false, close = true, description = "",
client = { image = "axleparts.png", },
},
["sparetire"] = {
label = "Spare Tire", weight = 0, stack = false, close = true, description = "",
client = { image = "sparetire.png", event = "jim-mechanic:client:wheelRepair" },
},
["harness"] = {
label = "Race Harness", weight = 0, stack = true, close = true, description = "Racing Harness so no matter what you stay in the car",
client = { image = "harness.png", event = "jim-mechanic:client:applyHarness", remove = false },
},
["manual"] = {
label = "Manual Transmission", weight = 0, stack = true, close = true, description = "Manual Transmission change for vehicles",
client = { image = "manual.png", event = "jim-mechanic:client:applyManual", remove = false },
},
["underglow"] = {
label = "Underglow LEDS", weight = 0, stack = true, close = true, description = "Underglow addition for vehicles",
client = { image = "underglow.png", event = "jim-mechanic:client:applyUnderglow", remove = false },
},
["stancerkit"] = {
label = "Stancer Kit", weight = 0, stack = true, close = true, description = "Stancer Kit for vehicles",
client = { image = "stancerkit.png", event = "jim-mechanic:client:stancerMenu", remove = false },
},
["newplate"] = {
label = "New Plate", weight = 250, stack = false, close = true, description = "A Customizable licence plate.",
client = { image = "newplate.png", event = "jim-mechanic:client:setplate:Menu" }
},
-- Replace these if these are already installed
--["cleaningkit"] = {
-- label = "Cleaning Kit", weight = 0, stack = true, close = true, description = "A microfiber cloth with some soap will let your car sparkle again!",
-- client = { image = "cleaningkit.png", event = "jim-mechanic:client:cleanVehicle"},
--},
--["repairkit"] = {
-- label = "Repairkit", weight = 0, stack = true, close = true, description = "A nice toolbox with stuff to repair your vehicle",
-- client = { image = "repairkit.png", event = "jim-mechanic:vehFailure:RepairVehicle", item = "repairkit", full = false },
--},
--["advancedrepairkit"] = {
-- label = "Advanced Repairkit", weight = 0, stack = true, close = true, description = "A nice toolbox with stuff to repair your vehicle",
-- client = { image = "advancedkit.png", event = "jim-mechanic:vehFailure:RepairVehicle", item = "advancedrepairkit", full = true },
--},