Installation

DEPENDENCIES

REQUIRED DEPENDENCIES

OPTIONAL DEPENDENCIES

ResourceDownload

Mapping

Gabz Recommend / Whatever you want

RESOURCE INSTALLATION GUIDE

1) RESOURCE DOWNLOAD

Download your resource from FiveM's Keymaster.

2) RESOURCE POSITIONING

You need to make sure that apex_lib is always started before any of our scripts!

ensure apex_lib
ensure [apex] -- or ensure apex_upnatom

3) ASSET ADDING

  1. Open apex_upnatom > assets > inventory_images

  2. Copy files from the folder and add them into your inventory image folder

4) ITEM ADDING (QBCORE & ESX)

The first block shows the data, you'll have to put into shared/items.lua in qbcore

The second block shows the data, you'll have to put into the database in esx

--[FOOD INGREDIENTS]--
['bacon'] 		= {['name'] = 'bacon', 		['label'] = 'Bacon', 		['weight'] = 10, ['type'] = 'item', ['image'] = 'bacon.png', 		['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil,   ['description'] = 'Ingredients'},
['beef'] 		= {['name'] = 'beef', 		['label'] = 'Beef', 		['weight'] = 10, ['type'] = 'item', ['image'] = 'beef.png', 		['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil,   ['description'] = 'Ingredients'},
['beefraw'] 		= {['name'] = 'beefraw', 	['label'] = 'Raw Beef', 	['weight'] = 10, ['type'] = 'item', ['image'] = 'beefraw.png', 		['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil,   ['description'] = 'Ingredients'},
['bun'] 		= {['name'] = 'bun', 		['label'] = 'Buns', 		['weight'] = 10, ['type'] = 'item', ['image'] = 'bun.png', 		['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil,   ['description'] = 'Ingredients'},
['cheese'] 		= {['name'] = 'cheese', 	['label'] = 'Cheese Slices', 	['weight'] = 10, ['type'] = 'item', ['image'] = 'cheese.png', 		['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil,   ['description'] = 'Ingredients'},
['lettuce'] 		= {['name'] = 'lettuce', 	['label'] = 'Lettuce', 		['weight'] = 10, ['type'] = 'item', ['image'] = 'lettuce.png', 		['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil,   ['description'] = 'Ingredients'},
['onion'] 		= {['name'] = 'onion', 		['label'] = 'Onion', 		['weight'] = 10, ['type'] = 'item', ['image'] = 'onion.png', 		['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil,   ['description'] = 'Ingredients'},
['onionslice'] 		= {['name'] = 'onionslice', 	['label'] = 'Onion Slices', 	['weight'] = 10, ['type'] = 'item', ['image'] = 'onionslice.png', 	['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil,   ['description'] = 'Ingredients'},
['tomato'] 		= {['name'] = 'tomato', 	['label'] = 'Tomatos', 		['weight'] = 10, ['type'] = 'item', ['image'] = 'tomato.png', 		['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil,   ['description'] = 'Ingredients'},
['frozenfries'] 	= {['name'] = 'frozenfries', 	['label'] = 'Frozen Fries', 	['weight'] = 10, ['type'] = 'item', ['image'] = 'frozenfries.png', 	['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil,   ['description'] = 'Ingredients'},
['frozennuggets'] 	= {['name'] = 'frozennuggets', 	['label'] = 'Frozen Nuggets', 	['weight'] = 10, ['type'] = 'item', ['image'] = 'frozennuggets.png', 	['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil,   ['description'] = 'Ingredients'},
--[FOOD]--
['fries'] 		= {['name'] = 'fries', 		['label'] = 'French Fries', 	['weight'] = 10, ['type'] = 'item', ['image'] = 'fries.png', 		['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil,   ['description'] = 'Food'},
['nuggets'] 		= {['name'] = 'nuggets', 	['label'] = 'Chicken Nuggets', 	['weight'] = 10, ['type'] = 'item', ['image'] = 'nuggets.png', 		['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil,   ['description'] = 'Food'},
['onion_rings'] 	= {['name'] = 'onion_rings', 	['label'] = 'Onion Rings', 	['weight'] = 10, ['type'] = 'item', ['image'] = 'onion_rings.png', 	['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil,   ['description'] = 'Food'},
['bleeder'] 		= {['name'] = 'bleeder', 	['label'] = 'Bleeder', 		['weight'] = 10, ['type'] = 'item', ['image'] = 'bleeder.png', 		['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil,   ['description'] = 'Food'},
['moneyshot'] 		= {['name'] = 'moneyshot', 	['label'] = 'Money Shot', 	['weight'] = 10, ['type'] = 'item', ['image'] = 'moneyshot.png', 	['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil,   ['description'] = 'Food'},
['heartstopper'] 	= {['name'] = 'heartstopper', 	['label'] = 'Heart Stopper', 	['weight'] = 10, ['type'] = 'item', ['image'] = 'heartstopper.png', 	['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil,   ['description'] = 'Food'},
['torpedo'] 		= {['name'] = 'torpedo', 	['label'] = 'Torpedo', 		['weight'] = 10, ['type'] = 'item', ['image'] = 'torpedo.png', 		['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil,   ['description'] = 'Food'},
--[DRINKS]--
['icecream'] 		= {['name'] = 'icecream', 	['label'] = 'Ice Cream', 	['weight'] = 10, ['type'] = 'item', ['image'] = 'icecream.png', 	['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil,   ['description'] = 'Drink'},   
['creamy'] 		= {['name'] = 'creamy', 	['label'] = 'Creamy', 		['weight'] = 10, ['type'] = 'item', ['image'] = 'creamy.png', 		['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil,   ['description'] = 'Drink'},    
['milkshake'] 		= {['name'] = 'milkshake', 	['label'] = 'Milkshake', 	['weight'] = 10, ['type'] = 'item', ['image'] = 'milkshake.png', 	['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil,   ['description'] = 'Drink'},   
['soda'] 		= {['name'] = 'soda', 		['label'] = 'Soda', 		['weight'] = 10, ['type'] = 'item', ['image'] = 'soda.png', 		['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil,   ['description'] = 'Drink'}, 
INSERT INTO `items` (`name`, `label`, `weight`, `rare`, `can_remove`) VALUES
('bacon', 'Bacon', 10, 0, 1),
('beef', 'Beef', 10, 0, 1),
('beefraw', 'Raw Beef', 10, 0, 1),
('bun', 'Buns', 10, 0, 1),
('cheese', 'Cheese Slices', 10, 0, 1),
('lettuce', 'Lettuce', 10, 0, 1),
('onion', 'onion', 10, 0, 1),
('onionslice', 'Onion Slices', 10, 0, 1),
('tomato', 'Tomatos', 10, 0, 1),
('frozenfries', 'Frozen Fries', 10, 0, 1),
('frozennuggets', 'Frozen Nuggets', 10, 0, 1),
('fries', 'French Fries', 10, 0, 1),
('nuggets', 'Chicken Nuggets', 10, 0, 1),
('onion_rings', 'Onion Rings', 10, 0, 1),
('bleeder', 'Bleeder', 10, 0, 1),
('moneyshot', 'Money Shot', 10, 0, 1),
('heartstopper', 'Heart Stopper', 10, 0, 1),
('torpedo', 'Torpedo', 10, 0, 1),
('icecream', 'Ice Cream', 10, 0, 1),
('creamy', 'Creamy', 10, 0, 1),
('milkshake', 'Milkshake', 10, 0, 1),
('soda', 'Soda', 10, 0, 1);

5) JOB ADDING

The first block shows the data, you'll have to put into shared/jobs.lua in qbcore

The second block shows the data, you'll have to put into the database in esx

['upnatom'] = {
    label = 'Up N Atom',
    defaultDuty = true,
    offDutyPay = false,
    grades = {
        ['0'] = {
            name = 'Helper',
            payment = 30
        },
        ['1'] = {
            name = 'Delivery',
            payment = 40
        },
        ['2'] = {
            name = 'Cook',
            payment = 50
        },
        ['3'] = {
            name = 'Manager',
            payment = 60,
            isboss = true
        },
    },
},
INSERT INTO `jobs` (name, label) VALUES
('upnatom', 'Up N Atom');

INSERT INTO `job_grades` (job_name, grade, name, label, salary, skin_male, skin_female) VALUES
('upnatom', 0, 'helper', 'Helper', 30, '{}', '{}'),
('upnatom', 1, 'delivery', 'Delivery', 40, '{}', '{}'),
('upnatom', 2, 'cook', 'Cook', 60, '{}', '{}'),
('upnatom', 3, 'boss', 'Manager', 60, '{}', '{}');

6) CONSUMABLES

The first 2 blocks i'll show how to add the items into both qb-smallresources and jim-consumables for qbcore

qb-smallresources/config.lua
Config.ConsumablesDrink = {
    ["icecream"] = math.random(40, 80),
    ["creamy"] = math.random(40, 80),
    ["milkshake"] = math.random(40, 80),
    ["soda"] = math.random(40, 80),
}

Config.ConsumablesEat = {
    ["fries"] = math.random(80, 100),
    ["nuggets"] = math.random(80, 100),
    ["onion_rings"] = math.random(80, 100),
    ["bleeder"] = math.random(80, 100),
    ["moneyshot"] = math.random(80, 100),
    ["heartstopper"] = math.random(80, 100),
    ["torpedo"] = math.random(80, 100),
}

With jim-consumables, it is a little different, you'll have to find this: Consumables = {} in the config file add the following into it.

If you are not able to get it working, ask jimathy for help

jim-consumables/config.lua
["icecream"] = {
	emote = "drink", time = math.random(5000, 6000), stress = math.random(1, 2), heal = 0, armor = 5, type = "drink",
	stats = {
		screen = "", effect = "heal", time = 10000, amount = 2,
		hunger = math.random(0,0), thirst = math.random(40, 80),
	},
},
["creamy"] = {
	emote = "drink", time = math.random(5000, 6000), stress = math.random(1, 2), heal = 0, armor = 5, type = "drink",
	stats = {
		screen = "", effect = "heal", time = 10000, amount = 2,
		hunger = math.random(0,0), thirst = math.random(40, 80),
	},
},
["milkshake"] = {
	emote = "drink", time = math.random(5000, 6000), stress = math.random(1, 2), heal = 0, armor = 5, type = "drink",
	stats = {
		screen = "", effect = "heal", time = 10000, amount = 2,
		hunger = math.random(0,0), thirst = math.random(40, 80),
	},
},
["soda"] = {
	emote = "drink", time = math.random(5000, 6000), stress = math.random(1, 2), heal = 0, armor = 5, type = "drink",
	stats = {
		screen = "", effect = "heal", time = 10000, amount = 2,
		hunger = math.random(0,0), thirst = math.random(40, 80),
	},
},

["fries"] = {
	emote = "eat", time = math.random(5000, 6000), stress = math.random(1, 2), heal = 0, armor = 5, type = "food",
	stats = {
		screen = "", effect = "heal", time = 10000, amount = 2,
		hunger = math.random(80,100), thirst = math.random(0, 0),
	},
},
["nuggets"] = {
	emote = "eat", time = math.random(5000, 6000), stress = math.random(1, 2), heal = 0, armor = 5, type = "food",
	stats = {
		screen = "", effect = "heal", time = 10000, amount = 2,
		hunger = math.random(80,100), thirst = math.random(0, 0),
	},
},
["onion_rings"] = {
	emote = "eat", time = math.random(5000, 6000), stress = math.random(1, 2), heal = 0, armor = 5, type = "food",
	stats = {
		screen = "", effect = "heal", time = 10000, amount = 2,
		hunger = math.random(80,100), thirst = math.random(0, 0),
	},
},
["bleeder"] = {
	emote = "eat", time = math.random(5000, 6000), stress = math.random(1, 2), heal = 0, armor = 5, type = "food",
	stats = {
		screen = "", effect = "heal", time = 10000, amount = 2,
		hunger = math.random(80,100), thirst = math.random(0, 0),
	},
},
["moneyshot"] = {
	emote = "eat", time = math.random(5000, 6000), stress = math.random(1, 2), heal = 0, armor = 5, type = "food",
	stats = {
		screen = "", effect = "heal", time = 10000, amount = 2,
		hunger = math.random(80,100), thirst = math.random(0, 0),
	},
},
["heartstopper"] = {
	emote = "eat", time = math.random(5000, 6000), stress = math.random(1, 2), heal = 0, armor = 5, type = "food",
	stats = {
		screen = "", effect = "heal", time = 10000, amount = 2,
		hunger = math.random(80,100), thirst = math.random(0, 0),
	},
},
["torpedo"] = {
	emote = "eat", time = math.random(5000, 6000), stress = math.random(1, 2), heal = 0, armor = 5, type = "food",
	stats = {
		screen = "", effect = "heal", time = 10000, amount = 2,
		hunger = math.random(80,100), thirst = math.random(0, 0),
	},
},

Last updated