Installation
Do not skim the instructions. You need to follow every step of the Install Guide to make sure you're installing the script correctly
Dependency Installation
Jim_Bridge
Download
Get it free from github - https://github.com/jimathy/jim_bridge
Framework Installation
Add the script to the server resources
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
Ensure List
GO TO YOUR server.cfg
The ORDER of the load order is important, check information here
Resources (EXAMPLE)
# 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 hereIF YOU ALREADY HAVE A [jim] FOLDER, PUT IT IN THAT FOLDER YOU DO NOT NEED TO CREATE A NEW ONE.
Jim-Payments (Required/Optional)
This is the default system for payments in the script but can easily be changed in
client.luaWhen triggered gets a list of the nearest players and lets you choose which one to charge
I class it as
optionalbecause you don't specifically need it if you have another you want to use.
Jim-Consumables (Optional)
If
jim-consumablesis installed, the script will attempt to reroute consumablesThe 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:consumeevent which detects wether to use built in event's orjim-consuambles(if found)
Add the script to the server resources
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
Ensure List
GO TO YOUR server.cfg
The ORDER of the load order is important, check information here
Resources (EXAMPLE)
# 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 hereIF YOU ALREADY HAVE A [jim] FOLDER, PUT IT IN THAT FOLDER YOU DO NOT NEED TO CREATE A NEW ONE.
Jim-Payments (Required/Optional)
This is the default system for payments in the script but can easily be changed in
client.luaWhen triggered gets a list of the nearest players and lets you choose which one to charge
I class it as
optionalbecause you don't specifically need it if you have another you want to use.
Jim-Consumables (Optional)
If
jim-consumablesis installed, the script will attempt to reroute consumablesThe 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:consumeevent which detects wether to use built in event's orjim-consuambles(if found)
Add the script to the server resources
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
Ensure List
GO TO YOUR server.cfg
The ORDER of the load order is important, check information here
Resources (EXAMPLE)
# 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 hereIF YOU ALREADY HAVE A [jim] FOLDER, PUT IT IN THAT FOLDER YOU DO NOT NEED TO CREATE A NEW ONE.
Jim-Payments (Required/Optional)
This is the default system for payments in the script but can easily be changed in
client.luaWhen triggered gets a list of the nearest players and lets you choose which one to charge
I class it as
optionalbecause you don't specifically need it if you have another you want to use.
Jim-Consumables (Optional)
If
jim-consumablesis installed, the script will attempt to reroute consumablesThe 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:consumeevent which detects wether to use built in event's orjim-consuambles(if found)
Add the script to the server resources
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
Ensure List
GO TO YOUR server.cfg
The ORDER of the load order is important, check information here
Resources (EXAMPLE)
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 HereIF YOU ALREADY HAVE A [jim] FOLDER, PUT IT IN THAT FOLDER YOU DO NOT NEED TO CREATE A NEW ONE.
Jim-Payments (Required/Optional)
This is the default system for payments in the script but can easily be changed in
client.luaWhen triggered gets a list of the nearest players and lets you choose which one to charge
I class it as
optionalbecause you don't specifically need it if you have another you want to use.
Jim-Consumables (Optional)
If
jim-consumablesis installed, the script will attempt to reroute consumablesThe 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:consumeevent which detects wether to use built in event's orjim-consuambles(if found)
Job Installation
Import the esx_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
( 'burgershot', 'Burgershot', NULL, 1 );
INSERT IGNORE INTO `ox_group_grades` (`group`, `grade`, `label`, `accountRole`) VALUES
('burgershot', 0, 'Recruit', NULL),
('burgershot', 1, 'Novice', 'novice'),
('burgershot', 2, 'Experienced', 'experienced'),
('burgershot', 3, 'Advanced', 'advanced'),
('burgershot', 4, 'Manager', 'manager'),
('burgershot', 5, 'Owner', 'owner');Add the lines from qb_jobs.txt to your qb-core > shared > jobs.lua
['burgershot'] = {
label = 'Burgershot',
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
['burgershot'] = {
label = 'Burgershot',
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 INTO `ox_groups` ( `name`, `label`, `grades`, `hasAccount`, `adminGrade`, `colour` ) VALUES
( 'burgershot', 'Burgershot', '["Recruit", "Novice", "Experienced", "Advanced", "Manager"]', '0', 1, NULL )
;Item Installation
These items work for both old and new qb-inventory
Item Images
Add the images from _install > images to your inventory folder
eg.
qb-inventory > html > images
Item Data
If using qb-inventory or similar, add the lines from qb_items.txt to your qb-core > shared > items.lua
-- JIM-BURGERSHOT --
potato = { name = 'potato', label = 'Potatoes', weight = 500, type = 'item', image = 'potatoes.png', unique = false, useable = false, shouldClose = false, description = 'Bag of potatoes.' },
slicedpotato = { name = 'slicedpotato', label = 'Sliced Potatoes', weight = 500, type = 'item', image = 'burger-slicedpotato.png', unique = false, useable = false, shouldClose = false, description = 'Sliced fresh potatoes.' },
slicedonion = { name = 'slicedonion', label = 'Sliced Onions', weight = 500, type = 'item', image = 'burger-slicedonion.png', unique = false, useable = false, shouldClose = false, description = 'Crispy onion slices.' },
icecream = { name = 'icecream', label = 'Ice Cream', weight = 500, type = 'item', image = 'burger-icecream.png', unique = false, useable = false, shouldClose = false, description = 'Chilled and creamy dessert.' },
milk = { name = 'milk', label = 'Milk', weight = 500, type = 'item', image = 'burger-milk.png', unique = false, useable = true, shouldClose = true, description = 'Carton of fresh milk.' },
lettuce = { name = 'lettuce', label = 'Lettuce', weight = 100, type = 'item', image = 'lettuce.png', unique = false, useable = false, shouldClose = false, description = 'Fresh leafy lettuce.' },
onion = { name = 'onion', label = 'Onion', weight = 500, type = 'item', image = 'burger-onion.png', unique = false, useable = false, shouldClose = false, description = 'A whole raw onion.' },
frozennugget = { name = 'frozennugget', label = 'Frozen Nuggets', weight = 500, type = 'item', image = 'burger-frozennugget.png', unique = false, useable = false, shouldClose = false, description = 'Bag of frozen chicken nuggets.' },
cheddar = { name = 'cheddar', label = 'Cheddar Slice', weight = 500, type = 'item', image = 'cheddar.png', unique = false, useable = false, shouldClose = false, description = 'A single slice of cheddar cheese.' },
burgerbun = { name = 'burgerbun', label = 'Burger Bun', weight = 100, type = 'item', image = 'burgerbun.png', unique = false, useable = false, shouldClose = false, description = 'Soft bun for burgers.' },
burgerpatty = { name = 'burgerpatty', label = 'Burger Patty', weight = 500, type = 'item', image = 'burgerpatty.png', unique = false, useable = false, shouldClose = false, description = 'Raw beef patty for grilling.' },
burgermeat = { name = 'burgermeat', label = 'Burger Meat', weight = 500, type = 'item', image = 'burgermeat.png', unique = false, useable = false, shouldClose = false, description = 'Cooked burger meat patty.' },
milkshake = { name = 'milkshake', label = 'Milkshake', weight = 500, type = 'item', image = 'burger-milkshake.png', unique = false, useable = true, shouldClose = true, description = 'Thick and sweet milkshake.' },
shotnuggets = { name = 'shotnuggets', label = 'Shot Nuggets', weight = 200, type = 'item', image = 'burger-shotnuggets.png', unique = false, useable = true, shouldClose = true, description = 'BurgerShot chicken nuggets.' },
shotrings = { name = 'shotrings', label = 'Ring Shots', weight = 200, type = 'item', image = 'burger-shotrings.png', unique = false, useable = true, shouldClose = true, description = 'BurgerShot onion rings.' },
heartstopper = { name = 'heartstopper', label = 'HeartStopper', weight = 200, type = 'item', image = 'burger-heartstopper.png', unique = false, useable = true, shouldClose = true, description = 'Massive heart-stopping burger.' },
shotfries = { name = 'shotfries', label = 'Shot Fries', weight = 200, type = 'item', image = 'burger-fries.png', unique = false, useable = true, shouldClose = true, description = 'Golden BurgerShot fries.' },
moneyshot = { name = 'moneyshot', label = 'Money Shot', weight = 200, type = 'item', image = 'burger-moneyshot.png', unique = false, useable = true, shouldClose = true, description = 'BurgerShot’s signature burger.' },
meatfree = { name = 'meatfree', label = 'Meat Free', weight = 200, type = 'item', image = 'burger-meatfree.png', unique = false, useable = true, shouldClose = true, description = 'Plant-based burger option.' },
bleeder = { name = 'bleeder', label = 'The Bleeder', weight = 200, type = 'item', image = 'burger-bleeder.png', unique = false, useable = true, shouldClose = true, description = 'Spicy burger with a kick.' },
bscoffee = { name = 'bscoffee', label = 'BurgerShot Coffee', weight = 200, type = 'item', image = 'burger-coffee.png', unique = false, useable = true, shouldClose = true, description = 'Hot BurgerShot coffee.' },
bscoke = { name = 'bscoke', label = 'BurgerShot Coke', weight = 200, type = 'item', image = 'burger-softdrink.png', unique = false, useable = true, shouldClose = true, description = 'Chilled cola beverage.' },
torpedo = { name = 'torpedo', label = 'Torpedo', weight = 200, type = 'item', image = 'burger-torpedo.png', unique = false, useable = true, shouldClose = true, description = 'Long sub-style burger.' },
rimjob = { name = 'rimjob', label = 'Rim Job', weight = 200, type = 'item', image = 'burger-rimjob.png', unique = false, useable = true, shouldClose = true, description = 'BurgerShot donut treat.' },
creampie = { name = 'creampie', label = 'Creampie', weight = 200, type = 'item', image = 'burger-creampie.png', unique = false, useable = true, shouldClose = true, description = 'Classic apple pie dessert.' },
cheesewrap = { name = 'cheesewrap', label = 'BS Cheese Wrap', weight = 150, type = 'item', image = 'burger-chickenwrap.png', unique = false, useable = true, shouldClose = true, description = 'Cheesy chicken wrap.' },
chickenwrap = { name = 'chickenwrap', label = 'BS Goat Cheese Wrap', weight = 150, type = 'item', image = 'burger-goatwrap.png', unique = false, useable = true, shouldClose = true, description = 'Wrap filled with goat cheese.' },
murderbag = { name = 'murderbag', label = 'Murder Bag', weight = 0, type = 'item', image = 'burgerbag.png', unique = true, useable = true, shouldClose = true, description = 'A surprise bag full of burgers.' },
This applies to any framework using ox_inventory
Currently while using ESX my scripts only support ox_inventory
Item Images
Copy and paste the images from _install > images to your inventory folder
eg.
ox_inventory > web > images
Item Data
Add the ox_items.txt to your ox_inventory > data > items.lua
-- JIM-BURGERSHOT --
potato = { label = 'Potatoes', weight = 500, stack = true, close = false, description = 'Bag of potatoes.',
client = { image = 'potatoes.png', event = "jim-burgershot:client:Consume", }
},
onion = { label = 'Onion', weight = 500, stack = true, close = false, description = 'A whole raw onion.',
client = { image = 'burger-onion.png', event = "jim-burgershot:client:Consume", }
},
lettuce = { label = 'Lettuce', weight = 100, stack = true, close = false, description = 'Fresh leafy lettuce.',
client = { image = 'lettuce.png', event = "jim-burgershot:client:Consume", }
},
milk = { label = 'Milk', weight = 500, stack = true, close = true, description = 'Carton of fresh milk.',
client = { image = 'burger-milk.png', event = "jim-burgershot:client:Consume", }
},
-- Prepared Ingredients
slicedpotato = { label = 'Sliced Potatoes', weight = 500, stack = true, close = false, description = 'Sliced fresh potatoes.',
client = { image = 'burger-slicedpotato.png', event = "jim-burgershot:client:Consume", }
},
slicedonion = { label = 'Sliced Onions', weight = 500, stack = true, close = false, description = 'Crispy onion slices.',
client = { image = 'burger-slicedonion.png', event = "jim-burgershot:client:Consume", }
},
cheddar = { label = 'Cheddar Slice', weight = 500, stack = true, close = false, description = 'A single slice of cheddar cheese.',
client = { image = 'cheddar.png', event = "jim-burgershot:client:Consume", }
},
burgerbun = { label = 'Burger Bun', weight = 100, stack = true, close = false, description = 'Soft bun for burgers.',
client = { image = 'burgerbun.png', event = "jim-burgershot:client:Consume", }
},
burgerpatty = { label = 'Burger Patty', weight = 500, stack = true, close = false, description = 'Raw beef patty for grilling.',
client = { image = 'burgerpatty.png', event = "jim-burgershot:client:Consume", }
},
burgermeat = { label = 'Burger Meat', weight = 500, stack = true, close = false, description = 'Cooked burger meat patty.',
client = { image = 'burgermeat.png', event = "jim-burgershot:client:Consume", }
},
frozennugget = { label = 'Frozen Nuggets', weight = 500, stack = true, close = false, description = 'Bag of frozen chicken nuggets.',
client = { image = 'burger-frozennugget.png', event = "jim-burgershot:client:Consume", }
},
-- Menu: Burgers
heartstopper = { label = 'HeartStopper', weight = 200, stack = true, close = true, description = 'Massive heart-stopping burger.',
client = { image = 'burger-heartstopper.png', event = "jim-burgershot:client:Consume", }
},
moneyshot = { label = 'Money Shot', weight = 200, stack = true, close = true, description = 'BurgerShot’s signature burger.',
client = { image = 'burger-moneyshot.png', event = "jim-burgershot:client:Consume", }
},
meatfree = { label = 'Meat Free', weight = 200, stack = true, close = true, description = 'Plant-based burger option.',
client = { image = 'burger-meatfree.png', event = "jim-burgershot:client:Consume", }
},
bleeder = { label = 'The Bleeder', weight = 200, stack = true, close = true, description = 'Spicy burger with a kick.',
client = { image = 'burger-bleeder.png', event = "jim-burgershot:client:Consume", }
},
torpedo = { label = 'Torpedo', weight = 200, stack = true, close = true, description = 'Long sub-style burger.',
client = { image = 'burger-torpedo.png', event = "jim-burgershot:client:Consume", }
},
-- Sides
shotnuggets = { label = 'Shot Nuggets', weight = 200, stack = true, close = true, description = 'BurgerShot chicken nuggets.',
client = { image = 'burger-shotnuggets.png', event = "jim-burgershot:client:Consume", }
},
shotrings = { label = 'Ring Shots', weight = 200, stack = true, close = true, description = 'BurgerShot onion rings.',
client = { image = 'burger-shotrings.png', event = "jim-burgershot:client:Consume", }
},
shotfries = { label = 'Shot Fries', weight = 200, stack = true, close = true, description = 'Golden BurgerShot fries.',
client = { image = 'burger-fries.png', event = "jim-burgershot:client:Consume", }
},
-- Wraps
cheesewrap = { label = 'BS Cheese Wrap', weight = 150, stack = true, close = true, description = 'Cheesy chicken wrap.',
client = { image = 'burger-chickenwrap.png', event = "jim-burgershot:client:Consume", }
},
chickenwrap = { label = 'BS Goat Cheese Wrap', weight = 150, stack = true, close = true, description = 'Wrap filled with goat cheese.',
client = { image = 'burger-goatwrap.png', event = "jim-burgershot:client:Consume", }
},
-- Drinks
bscoffee = { label = 'BurgerShot Coffee', weight = 200, stack = true, close = true, description = 'Hot BurgerShot coffee.',
client = { image = 'burger-coffee.png', event = "jim-burgershot:client:Consume", }
},
bscoke = { label = 'BurgerShot Coke', weight = 200, stack = true, close = true, description = 'Chilled cola beverage.',
client = { image = 'burger-softdrink.png', event = "jim-burgershot:client:Consume", }
},
milkshake = { label = 'Milkshake', weight = 500, stack = true, close = true, description = 'Thick and sweet milkshake.',
client = { image = 'burger-milkshake.png', event = "jim-burgershot:client:Consume", }
},
-- Desserts
rimjob = { label = 'Rim Job', weight = 200, stack = true, close = true, description = 'BurgerShot donut treat.',
client = { image = 'burger-rimjob.png', event = "jim-burgershot:client:Consume", }
},
creampie = { label = 'Creampie', weight = 200, stack = true, close = true, description = 'Classic apple pie dessert.',
client = { image = 'burger-creampie.png', event = "jim-burgershot:client:Consume", }
},
icecream = { label = 'Ice Cream', weight = 500, stack = true, close = false, description = 'Chilled and creamy dessert.',
client = { image = 'burger-icecream.png', event = "jim-burgershot:client:Consume", }
},
-- Specials
murderbag = { label = 'Murder Bag', weight = 0, stack = false, close = true, description = 'A surprise bag full of burgers.',
client = { image = 'burgerbag.png', }
},
water_bottle = { label = "Water Bottle", weight = 300, stack = true, close = true, description = "For all the thirsty out there",
client = { image = "water.png", event = "jim-burgershot:client:Consume", }
},Last updated