Accessible code
Config = {
locales = 'en',
versionChecking = false,
textUIAlign = 'left-center',
menuUIAlign = 'top-right',
drawDistance = 25.0,
interactionDistance = 1.5,
suppliesForBlock = 250, -- amount of supplies for one block of cocaine
maxCocaineBlocks = 200, -- max capacity of cocaine block
timeForSupplies = 60, -- in minutes
cocaineBlockPrice = math.random(500, 1000),
changeNamePrice = 2500,
maxLabPerPlayer = 1,
commands = {
[1] = {
enable = true,
command = 'labs',
permission = 'user.admin',
help = 'Manage Cocaine Labs',
},
},
labPosition = {
exitCoords = vec4(1088.6670, -3187.6814, -38.9935, 173.8485),
laptopCoords = vec3(1087.1533, -3194.2832, -38.9934),
proccessCoords = vec4(1100.5909, -3198.8232, -38.9934, 176.3272),
},
cctvProp = 'prop_cctv_cam_01a',
animations = {
proccess = {
time = 15000,
anim = 'mini@repair',
dict = 'fixing_a_ped',
},
hacking = {
time = 10000,
anim = 'anim@heists@prison_heiststation@cop_reactions',
dict = 'cop_b_idle',
},
},
workerPeds = {
'mp_f_cocaine_01',
'mp_m_cocaine_01',
},
workersAnimation = {
dict = 'anim@amb@business@coc@coc_unpack_cut@',
anim = 'fullcut_cycle_v1_cokecutter'
},
securityPeds = {
's_m_m_highsec_01',
's_m_m_highsec_02',
's_m_m_movprem_01',
's_m_m_armoured_02',
},
securityAnimation = {
dict = 'missclothing',
anim = 'idle_storeclerk'
},
whitelistedJobs = {
'police'
},
upgrades = {
['playerSlot'] = {
[1] = {
label = 'Player Slot 1',
players = 1,
},
[2] = {
label = 'Player Slot 2',
players = 2,
price = 1500,
},
[3] = {
label = 'Player Slot 3',
players = 3,
price = 3000,
},
[4] = {
label = 'Player Slot 5',
players = 5,
price = 5000,
},
[5] = {
label = 'Player Slot 10',
players = 10,
price = 7500,
},
},
['workers'] = {
[1] = {
label = 'Workers Level 1',
coords = vec4(1090.3329, -3194.9297, -38.9934, 173.8444),
amount = { min = 50, max = 100 },
},
[2] = {
label = 'Workers Level 2',
coords = vec4(1090.2860, -3196.5632, -38.9934, 1.7713),
price = 500,
amount = { min = 100, max = 150 },
},
[3] = {
label = 'Workers Level 3',
coords = vec4(1093.0297, -3194.9309, -38.9934, 173.1970),
price = 1000,
amount = { min = 150, max = 200 },
},
[4] = {
label = 'Workers Level 4',
coords = vec4(1092.9294, -3196.5701, -38.9934, 355.2273),
price = 1500,
amount = { min = 200, max = 250 },
},
[5] = {
label = 'Workers Level 5',
coords = vec4(1095.4424, -3194.9021, -38.9934, 178.7726),
price = 2000,
amount = { min = 300, max = 350 },
},
[6] = {
label = 'Workers Level 6',
coords = vec4(1095.3395, -3196.5598, -38.9934, 350.8661),
price = 2500,
amount = { min = 400, max = 450 },
},
[7] = {
label = 'Workers Level 7',
coords = vec4(1099.6055, -3194.2439, -38.9934, 87.8458),
price = 3000,
amount = { min = 500, max = 550 },
},
[8] = {
label = 'Workers Level 8',
coords = vec4(1101.8270, -3193.6729, -38.9934, 358.8464),
price = 3500,
amount = { min = 600, max = 650 },
},
},
['security'] = {
[1] = {
label = 'Guards Level 1',
coords = vec4(1090.4120, -3190.9260, -38.9935, 35.5183),
},
[2] = {
label = 'Guards Level 2',
coords = vec4(1087.3292, -3190.8938, -38.9935, 330.6691),
price = 1000,
},
[3] = {
label = 'Guards Level 3',
coords = vec4(1087.5425, -3199.5457, -38.9918, 341.0070),
price = 2000,
},
},
['securityWeapon'] = {
[1] = {
label = 'Pistol',
weapon = 'weapon_pistol',
},
[2] = {
label = 'Carbine Rifle',
weapon = 'weapon_carbinerifle',
price = 5000,
},
[3] = {
label = 'Special Carbine',
weapon = 'weapon_specialcarbine',
price = 7500,
},
},
['stock'] = {
[1] = {
label = 'Stock Level 1',
stock = 250,
},
[2] = {
label = 'Stock Level 2',
stock = 500,
price = 1000,
},
[3] = {
label = 'Stock Level 2',
stock = 1500,
price = 3000,
},
[4] = {
label = 'Stock Level 4',
stock = 2500,
price = 5000,
},
[5] = {
label = 'Stock Level 5',
stock = 5000,
price = 10000,
},
},
}
}
function progressBar(duration, label, animDict, animClip)
if lib.progressBar({
duration = duration,
label = label,
useWhileDead = false,
canCancel = true,
disable = {
car = true,
move = true,
combat = true,
},
anim = {
dict = animDict,
clip = animClip
},
}) then
return true
else
return false
end
end
Notification = function (title, description, type)
-- types are info, success and error
lib.notify({
title = title,
description = description,
type = type
})
end
function SkillCheck()
local success = lib.skillCheck({'easy', 'easy', {areaSize = 60, speedMultiplier = 2}, 'easy'}, {'w', 'a', 's', 'd'})
return success
end
function MiniGame()
local gameData = {
totalNumbers = 15,
seconds = 20,
timesToChangeNumbers = 4,
amountOfGames = 2,
incrementByAmount = 5,
}
local result = exports['pure-minigames']:numberCounter(gameData)
return result
end
Notification = function (source, title, description, type)
-- types are success and error
TriggerClientEvent('ox_lib:notify', source, {
title = title,
description = description,
type = type
})
end
Last updated