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_pearls

3) ASSET ADDING

  1. Open apex_pearls > 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'},
['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'},
['clams'] 		= {['name'] = 'clams', 			['label'] = 'Clams', 			['weight'] = 10, ['type'] = 'item', ['image'] = 'clams.png', 		['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil,   ['description'] = 'Ingredients'},
['crab'] 		= {['name'] = 'crab', 			['label'] = 'Crab', 			['weight'] = 10, ['type'] = 'item', ['image'] = 'crab.png', 		['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil,   ['description'] = 'Ingredients'},
['lobster'] 		= {['name'] = 'lobster', 		['label'] = 'Lobster', 			['weight'] = 10, ['type'] = 'item', ['image'] = 'lobster.png', 		['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil,   ['description'] = 'Ingredients'},
['garlic'] 		= {['name'] = 'garlic', 		['label'] = 'Garlic', 			['weight'] = 10, ['type'] = 'item', ['image'] = 'garlic.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'},
['mushrooms'] 		= {['name'] = 'mushrooms', 		['label'] = 'Mushrooms', 		['weight'] = 10, ['type'] = 'item', ['image'] = 'mushrooms.png', 	['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil,   ['description'] = 'Ingredients'},
['oil'] 		= {['name'] = 'oil', 			['label'] = 'Oil', 			['weight'] = 10, ['type'] = 'item', ['image'] = 'oil.png', 		['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil,   ['description'] = 'Ingredients'},
['shrimps'] 		= {['name'] = 'shrimps', 		['label'] = 'Shrimps', 			['weight'] = 10, ['type'] = 'item', ['image'] = 'shrimps.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'},
['tuna'] 		= {['name'] = 'tuna', 			['label'] = 'Tuna', 			['weight'] = 10, ['type'] = 'item', ['image'] = 'tuna.png', 		['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil,   ['description'] = 'Ingredients'},
--[FOOD]--
['chowder'] 		= {['name'] = 'chowder', 		['label'] = 'Corn and Fish Chowder',    ['weight'] = 10, ['type'] = 'item', ['image'] = 'chowder.png', 		['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil,   ['description'] = 'Food'},
['salmon_burger'] 	= {['name'] = 'salmon_burger', 		['label'] = 'Ultimate Salmon Burger',   ['weight'] = 10, ['type'] = 'item', ['image'] = 'salmon_burger.png', 	['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil,   ['description'] = 'Food'},
['crabdish'] 		= {['name'] = 'crabdish', 		['label'] = 'King Crab', 		['weight'] = 10, ['type'] = 'item', ['image'] = 'crabdish.png', 	['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil,   ['description'] = 'Food'},
['grilled_lobster'] 	= {['name'] = 'grilled_lobster', 	['label'] = 'Grilled Lobster', 		['weight'] = 10, ['type'] = 'item', ['image'] = 'grilled_lobster.png', 	['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil,   ['description'] = 'Food'},
['shrimp_po_boy'] 	= {['name'] = 'shrimp_po_boy', 		['label'] = 'Shrimp Po Boy', 		['weight'] = 10, ['type'] = 'item', ['image'] = 'shrimp_po_boy.png', 	['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil,   ['description'] = 'Food'},
['clamsdish'] 		= {['name'] = 'clamsdish', 		['label'] = 'California Clams', 	['weight'] = 10, ['type'] = 'item', ['image'] = 'clamsdish.png', 	['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil,   ['description'] = 'Food'},
['ceviche'] 		= {['name'] = 'ceviche', 		['label'] = 'Ceviche', 			['weight'] = 10, ['type'] = 'item', ['image'] = 'ceviche.png', 		['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil,   ['description'] = 'Food'},
['tunadish'] 		= {['name'] = 'tunadish', 		['label'] = 'Tuna', 			['weight'] = 10, ['type'] = 'item', ['image'] = 'tunadish.png', 	['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil,   ['description'] = 'Food'},
--[DRINKS]--
['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),
('bun', 'Buns', 10, 0, 1),
('cheese', 'Cheese Slices', 10, 0, 1),
('clams', 'Clams', 10, 0, 1),
('crab', 'Crab', 10, 0, 1),
('lobster', 'Lobster', 10, 0, 1),
('garlic', 'Garlic', 10, 0, 1),
('lettuce', 'Lettuce', 10, 0, 1),
('mushrooms', 'Mushrooms', 10, 0, 1),
('oil', 'Oil', 10, 0, 1),
('shrimps', 'Shrimps', 10, 0, 1),
('tomato', 'Tomatos', 10, 0, 1),
('tuna', 'Tuna', 10, 0, 1),
('chowder', 'Corn and Fish Chowder', 10, 0, 1),
('salmon_burger', 'Ultimate Salmon Burger', 10, 0, 1),
('crabdish', 'King Crab', 10, 0, 1),
('grilled_lobster', 'Grilled Lobster', 10, 0, 1),
('shrimp_po_boy', 'Shrimp Po Boy', 10, 0, 1),
('clamsdish', 'California Clams', 10, 0, 1),
('ceviche', 'Ceviche', 10, 0, 1),
('tunadish', 'Tuna', 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

['pearls'] = {
    label = 'Pearls Seafoods',
    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
('pearls', 'Pearls Seafoods');

INSERT INTO `job_grades` (job_name, grade, name, label, salary, skin_male, skin_female) VALUES
('pearls', 0, 'helper', 'Helper', 30, '{}', '{}'),
('pearls', 1, 'delivery', 'Delivery', 40, '{}', '{}'),
('pearls', 2, 'cook', 'Cook', 60, '{}', '{}'),
('pearls', 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 = {
    ["milkshake"] = math.random(40, 80),
    ["soda"] = math.random(40, 80),
}

Config.ConsumablesEat = {
    ["chowder"] = math.random(80, 100),
    ["salmon_burger"] = math.random(80, 100),
    ["crabdish"] = math.random(80, 100),
    ["grilled_lobster"] = math.random(80, 100),
    ["shrimp_po_boy"] = math.random(80, 100),
    ["clamsdish"] = math.random(80, 100),
    ["ceviche"] = math.random(80, 100),
    ["tunadish"] = 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
["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),
	},
},

["chowder"] = {
	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),
	},
},
["salmon_burger"] = {
	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),
	},
},
["crabdish"] = {
	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),
	},
},
["grilled_lobster"] = {
	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),
	},
},
["shrimp_po_boy"] = {
	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),
	},
},
["clamsdish"] = {
	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),
	},
},
["ceviche"] = {
	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),
	},
},
["tunadish"] = {
	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