diff --git a/server-data/resources/[bpt_addons]/bpt_crafting/client/main.lua b/server-data/resources/[bpt_addons]/bpt_crafting/client/main.lua index 09107e582..b1f459c73 100644 --- a/server-data/resources/[bpt_addons]/bpt_crafting/client/main.lua +++ b/server-data/resources/[bpt_addons]/bpt_crafting/client/main.lua @@ -1,70 +1,70 @@ local Keys = { - ["ESC"] = 322, - ["F1"] = 288, - ["F2"] = 289, - ["F3"] = 170, - ["F5"] = 166, - ["F6"] = 167, - ["F7"] = 168, - ["F8"] = 169, - ["F9"] = 56, - ["F10"] = 57, - ["~"] = 243, - ["-"] = 84, - ["="] = 83, - ["BACKSPACE"] = 177, - ["TAB"] = 37, - ["Q"] = 44, - ["W"] = 32, - ["E"] = 38, - ["R"] = 45, - ["T"] = 245, - ["Y"] = 246, - ["U"] = 303, - ["P"] = 199, - ["["] = 39, - ["]"] = 40, - ["ENTER"] = 18, - ["CAPS"] = 137, - ["A"] = 34, - ["S"] = 8, - ["D"] = 9, - ["F"] = 23, - ["G"] = 47, - ["H"] = 74, - ["K"] = 311, - ["L"] = 182, - ["LEFTSHIFT"] = 21, - ["Z"] = 20, - ["X"] = 73, - ["C"] = 26, - ["V"] = 0, - ["B"] = 29, - ["N"] = 249, - ["M"] = 244, - [","] = 82, - ["."] = 81, - ["LEFTCTRL"] = 36, - ["LEFTALT"] = 19, - ["SPACE"] = 22, - ["RIGHTCTRL"] = 70, - ["HOME"] = 213, - ["PAGEUP"] = 10, - ["PAGEDOWN"] = 11, - ["DELETE"] = 178, - ["LEFT"] = 174, - ["RIGHT"] = 175, - ["TOP"] = 27, - ["DOWN"] = 173, - ["NENTER"] = 201, - ["N4"] = 108, - ["N5"] = 60, - ["N6"] = 107, - ["N+"] = 96, - ["N-"] = 97, - ["N7"] = 117, - ["N8"] = 61, - ["N9"] = 118, + ["ESC"] = 322, + ["F1"] = 288, + ["F2"] = 289, + ["F3"] = 170, + ["F5"] = 166, + ["F6"] = 167, + ["F7"] = 168, + ["F8"] = 169, + ["F9"] = 56, + ["F10"] = 57, + ["~"] = 243, + ["-"] = 84, + ["="] = 83, + ["BACKSPACE"] = 177, + ["TAB"] = 37, + ["Q"] = 44, + ["W"] = 32, + ["E"] = 38, + ["R"] = 45, + ["T"] = 245, + ["Y"] = 246, + ["U"] = 303, + ["P"] = 199, + ["["] = 39, + ["]"] = 40, + ["ENTER"] = 18, + ["CAPS"] = 137, + ["A"] = 34, + ["S"] = 8, + ["D"] = 9, + ["F"] = 23, + ["G"] = 47, + ["H"] = 74, + ["K"] = 311, + ["L"] = 182, + ["LEFTSHIFT"] = 21, + ["Z"] = 20, + ["X"] = 73, + ["C"] = 26, + ["V"] = 0, + ["B"] = 29, + ["N"] = 249, + ["M"] = 244, + [","] = 82, + ["."] = 81, + ["LEFTCTRL"] = 36, + ["LEFTALT"] = 19, + ["SPACE"] = 22, + ["RIGHTCTRL"] = 70, + ["HOME"] = 213, + ["PAGEUP"] = 10, + ["PAGEDOWN"] = 11, + ["DELETE"] = 178, + ["LEFT"] = 174, + ["RIGHT"] = 175, + ["TOP"] = 27, + ["DOWN"] = 173, + ["NENTER"] = 201, + ["N4"] = 108, + ["N5"] = 60, + ["N6"] = 107, + ["N+"] = 96, + ["N-"] = 97, + ["N7"] = 117, + ["N8"] = 61, + ["N9"] = 118, } local labels = {} @@ -74,198 +74,198 @@ local grade = 0 ESX = exports["es_extended"]:getSharedObject() CreateThread(function() - while ESX.GetPlayerData().job == nil do - Wait(10) - end + while ESX.GetPlayerData().job == nil do + Wait(10) + end - job = ESX.GetPlayerData().job.name - grade = ESX.GetPlayerData().job.grade + job = ESX.GetPlayerData().job.name + grade = ESX.GetPlayerData().job.grade - ESX.TriggerServerCallback("bpt_crafting:getItemNames", function(info) - labels = info - end) + ESX.TriggerServerCallback("bpt_crafting:getItemNames", function(info) + labels = info + end) - for _, v in ipairs(Config.Workbenches) do - if v.blip then - local blip = AddBlipForCoord(v.coords) + for _, v in ipairs(Config.Workbenches) do + if v.blip then + local blip = AddBlipForCoord(v.coords) - SetBlipScale(blip, 0.8) - SetBlipAsShortRange(blip, true) - BeginTextCommandSetBlipName("STRING") - EndTextCommandSetBlipName(blip) - end - end + SetBlipScale(blip, 0.8) + SetBlipAsShortRange(blip, true) + BeginTextCommandSetBlipName("STRING") + EndTextCommandSetBlipName(blip) + end + end end) RegisterNetEvent("esx:setJob") AddEventHandler("esx:setJob", function(j) - job = j.name - grade = j.grade + job = j.name + grade = j.grade end) function IsNearWorkbench() - local ped = PlayerPedId() - local coords = GetEntityCoords(ped) - local near = false + local ped = PlayerPedId() + local coords = GetEntityCoords(ped) + local near = false - for _, v in ipairs(Config.Workbenches) do - local dst = #(coords - v.coords) - if dst < v.radius then - near = true - end - end + for _, v in ipairs(Config.Workbenches) do + local dst = #(coords - v.coords) + if dst < v.radius then + near = true + end + end - if near then - return true - else - return false - end + if near then + return true + else + return false + end end CreateThread(function() - while true do - Wait(1000) - if craftingQueue[1] ~= nil then - if not Config.CraftingStopWithDistance or (Config.CraftingStopWithDistance and IsNearWorkbench()) then - craftingQueue[1].time = craftingQueue[1].time - 1 + while true do + Wait(1000) + if craftingQueue[1] ~= nil then + if not Config.CraftingStopWithDistance or (Config.CraftingStopWithDistance and IsNearWorkbench()) then + craftingQueue[1].time = craftingQueue[1].time - 1 - SendNUIMessage({ - type = "addqueue", - item = craftingQueue[1].item, - time = craftingQueue[1].time, - id = craftingQueue[1].id, - }) + SendNUIMessage({ + type = "addqueue", + item = craftingQueue[1].item, + time = craftingQueue[1].time, + id = craftingQueue[1].id, + }) - if craftingQueue[1].time == 0 then - TriggerServerEvent("bpt_crafting:itemCrafted", craftingQueue[1].item, craftingQueue[1].count) - table.remove(craftingQueue, 1) - end - end - end - end + if craftingQueue[1].time == 0 then + TriggerServerEvent("bpt_crafting:itemCrafted", craftingQueue[1].item, craftingQueue[1].count) + table.remove(craftingQueue, 1) + end + end + end + end end) function OpenWorkbench(val) - ESX.TriggerServerCallback("bpt_crafting:getXP", function(xp) - SetNuiFocus(true, true) - TriggerScreenblurFadeIn(1000) + ESX.TriggerServerCallback("bpt_crafting:getXP", function(xp) + SetNuiFocus(true, true) + TriggerScreenblurFadeIn(1000) - local inv = {} - for _, v in ipairs(ESX.GetPlayerData().inventory) do - inv[v.name] = v.count - end + local inv = {} + for _, v in ipairs(ESX.GetPlayerData().inventory) do + inv[v.name] = v.count + end - local recipes = {} + local recipes = {} - if #val.recipes > 0 then - for _, g in ipairs(val.recipes) do - recipes[g] = Config.Recipes[g] - end - else - recipes = Config.Recipes - end + if #val.recipes > 0 then + for _, g in ipairs(val.recipes) do + recipes[g] = Config.Recipes[g] + end + else + recipes = Config.Recipes + end - SendNUIMessage({ - type = "open", - recipes = recipes, - names = labels, - level = xp, - inventory = inv, - job = job, - grade = grade, - hidecraft = Config.HideWhenCantCraft, - categories = Config.Categories, - }) - end) + SendNUIMessage({ + type = "open", + recipes = recipes, + names = labels, + level = xp, + inventory = inv, + job = job, + grade = grade, + hidecraft = Config.HideWhenCantCraft, + categories = Config.Categories, + }) + end) end CreateThread(function() - while true do - Wait(1) - local ped = PlayerPedId() - local coords = GetEntityCoords(ped) + while true do + Wait(1) + local ped = PlayerPedId() + local coords = GetEntityCoords(ped) - for _, v in ipairs(Config.Workbenches) do - local dst = #(coords - v.coords) - if dst < 10 then - DrawText3D(v.coords[1], v.coords[2], v.coords[3] - 0.8, TranslateCap("workbench_hologram")) - end - if dst < 2 then - if IsControlJustReleased(0, Keys["E"]) then - local open = false - for _, g in ipairs(v.jobs) do - if g == job then - open = true - end - end + for _, v in ipairs(Config.Workbenches) do + local dst = #(coords - v.coords) + if dst < 10 then + DrawText3D(v.coords[1], v.coords[2], v.coords[3] - 0.8, TranslateCap("workbench_hologram")) + end + if dst < 2 then + if IsControlJustReleased(0, Keys["E"]) then + local open = false + for _, g in ipairs(v.jobs) do + if g == job then + open = true + end + end - if open or #v.jobs == 0 then - OpenWorkbench(v) - else - ESX.ShowNotification(TranslateCap("wrong_job")) - end - end - end - end - end + if open or #v.jobs == 0 then + OpenWorkbench(v) + else + ESX.ShowNotification(TranslateCap("wrong_job")) + end + end + end + end + end end) RegisterNetEvent("bpt_crafting:craftStart") AddEventHandler("bpt_crafting:craftStart", function(item, _) - local id = math.random(000, 999) - table.insert(craftingQueue, { time = Config.Recipes[item].Time, item = item, count = 1, id = id }) + local id = math.random(000, 999) + table.insert(craftingQueue, { time = Config.Recipes[item].Time, item = item, count = 1, id = id }) - SendNUIMessage({ - type = "crafting", - item = item, - }) + SendNUIMessage({ + type = "crafting", + item = item, + }) - SendNUIMessage({ - type = "addqueue", - item = item, - time = Config.Recipes[item].Time, - id = id, - }) + SendNUIMessage({ + type = "addqueue", + item = item, + time = Config.Recipes[item].Time, + id = id, + }) end) RegisterNetEvent("bpt_crafting:sendMessage") AddEventHandler("bpt_crafting:sendMessage", function(msg) - ESX.ShowNotification(msg) + ESX.ShowNotification(msg) end) RegisterNUICallback("close", function() - TriggerScreenblurFadeOut(1000) - SetNuiFocus(false, false) + TriggerScreenblurFadeOut(1000) + SetNuiFocus(false, false) end) RegisterNUICallback("craft", function(data) - local item = data["item"] - TriggerServerEvent("bpt_crafting:craft", item, false) + local item = data["item"] + TriggerServerEvent("bpt_crafting:craft", item, false) end) function ESX.ShowNotification(msg) - exports["mythic_notify"]:SendAlert("inform", msg) + exports["mythic_notify"]:SendAlert("inform", msg) end function DrawText3D(x, y, z, text) - local onScreen, _x, _y = World3dToScreen2d(x, y, z) - local px, py, pz = table.unpack(GetGameplayCamCoord()) - local dist = GetDistanceBetweenCoords(px, py, pz, x, y, z, 1) - local scale = ((1 / dist) * 2) * (1 / GetGameplayCamFov()) * 100 + local onScreen, _x, _y = World3dToScreen2d(x, y, z) + local px, py, pz = table.unpack(GetGameplayCamCoord()) + local dist = GetDistanceBetweenCoords(px, py, pz, x, y, z, true) + local scale = ((1 / dist) * 2) * (1 / GetGameplayCamFov()) * 100 - if onScreen then - SetTextColour(255, 255, 255, 255) - SetTextScale(0.0 * scale, 0.35 * scale) - SetTextFont(4) - SetTextProportional(1) - SetTextCentre(true) - SetTextDropshadow(1, 1, 1, 1, 255) - BeginTextCommandWidth("STRING") - AddTextComponentString(text) - GetTextScaleHeight(0.55 * scale, 4) - EndTextCommandGetWidth(4) - SetTextEntry("STRING") - AddTextComponentString(text) - EndTextCommandDisplayText(_x, _y) - end + if onScreen then + SetTextColour(255, 255, 255, 255) + SetTextScale(0.0 * scale, 0.35 * scale) + SetTextFont(4) + SetTextProportional(true) + SetTextCentre(true) + SetTextDropshadow(1, 1, 1, 1, 255) + BeginTextCommandWidth("STRING") + AddTextComponentString(text) + GetTextScaleHeight(0.55 * scale, 4) + EndTextCommandGetWidth(true) + SetTextEntry("STRING") + AddTextComponentString(text) + EndTextCommandDisplayText(_x, _y) + end end diff --git a/server-data/resources/[bpt_addons]/bpt_crafting/config.lua b/server-data/resources/[bpt_addons]/bpt_crafting/config.lua index feaedef52..3f7683405 100644 --- a/server-data/resources/[bpt_addons]/bpt_crafting/config.lua +++ b/server-data/resources/[bpt_addons]/bpt_crafting/config.lua @@ -1,534 +1,542 @@ Config = { - UseLimitSystem = false, -- Enable if your esx uses limit system - CraftingStopWithDistance = false, -- Crafting will stop when not near workbench - ExperiancePerCraft = 5, -- The amount of experiance added per craft (100 Experiance is 1 level) - HideWhenCantCraft = false, -- Instead of lowering the opacity it hides the item that is not craftable due to low level or wrong job + UseLimitSystem = false, -- Enable if your esx uses limit system + CraftingStopWithDistance = false, -- Crafting will stop when not near workbench + ExperiancePerCraft = 5, -- The amount of experiance added per craft (100 Experiance is 1 level) + HideWhenCantCraft = false, -- Instead of lowering the opacity it hides the item that is not craftable due to low level or wrong job - Categories = { - ["medical"] = { - Label = "Ospedale", - Image = "bandage", - Jobs = { "ambulance" }, - }, - ["import"] = { - Label = "Import", - Image = "Import", - Jobs = { "import" }, - }, - ["mechanic"] = { - Label = "Meccanico", - Image = "Mechanic", - Jobs = { "mechanic" }, - }, - ["ammu"] = { - Label = "Armeria", - Image = "ammu", - Jobs = { "ammu" }, - }, - ["unicorn"] = { - Label = "Unicorn", - Image = "unicorn", - Jobs = { "unicorn" }, - }, - ["ballas"] = { - Label = "Ballas", - Image = "ballas", - Jobs = { "ballas" }, - }, - ["baker"] = { - Label = "Baker", - Image = "baker", - Jobs = { "baker" }, - }, - ["fisherman"] = { - Label = "fisherman", - Image = "fisherman", - Jobs = { "fisherman" }, - }, - }, + Categories = { + ["medical"] = { + Label = "Ospedale", + Image = "bandage", + Jobs = { "ambulance" }, + }, + ["import"] = { + Label = "Import", + Image = "Import", + Jobs = { "import" }, + }, + ["mechanic"] = { + Label = "Meccanico", + Image = "Mechanic", + Jobs = { "mechanic" }, + }, + ["ammu"] = { + Label = "Armeria", + Image = "ammu", + Jobs = { "ammu" }, + }, + ["unicorn"] = { + Label = "Unicorn", + Image = "unicorn", + Jobs = { "unicorn" }, + }, + ["ballas"] = { + Label = "Ballas", + Image = "ballas", + Jobs = { "ballas" }, + }, + ["baker"] = { + Label = "Baker", + Image = "baker", + Jobs = { "baker" }, + }, + ["fisherman"] = { + Label = "fisherman", + Image = "fisherman", + Jobs = { "fisherman" }, + }, + }, - PermanentItems = { -- Items that dont get removed when crafting - ["wrench"] = true, - }, + PermanentItems = { -- Items that dont get removed when crafting + ["wrench"] = true, + }, - Recipes = { -- Enter Item name and then the speed value! The higher the value the more torque - ["bandage"] = { - Level = 0, - Category = "medical", - isGun = false, - Jobs = { "ambulance" }, - JobGrades = {}, - Amount = 1, - SuccessRate = 100, - requireBlueprint = false, - Time = 20, - Ingredients = { - ["cottonforbandages"] = 2, - }, - }, + Recipes = { -- Enter Item name and then the speed value! The higher the value the more torque + ["bandage"] = { + Level = 0, + Category = "medical", + isGun = false, + Jobs = { "ambulance" }, + JobGrades = {}, + Amount = 1, + SuccessRate = 100, + requireBlueprint = false, + Time = 20, + Ingredients = { + ["cottonforbandages"] = 2, + }, + }, - ["marijuana"] = { - Level = 0, - Category = "medical", - isGun = false, - Jobs = { "ambulance" }, - JobGrades = {}, - Amount = 1, - SuccessRate = 100, - requireBlueprint = false, - Time = 20, - Ingredients = { - ["cannabis"] = 2, - ["diamond_tip"] = 1, - }, - }, + ["marijuana"] = { + Level = 0, + Category = "medical", + isGun = false, + Jobs = { "ambulance" }, + JobGrades = {}, + Amount = 1, + SuccessRate = 100, + requireBlueprint = false, + Time = 20, + Ingredients = { + ["cannabis"] = 2, + ["diamond_tip"] = 1, + }, + }, - ["cottonforbandages"] = { - Level = 0, -- From what level this item will be craftable - Category = "import", -- The category item will be put in - isGun = false, -- Specify if this is a gun so it will be added to the loadout - Jobs = { "import" }, -- What jobs can craft this item, leaving {} allows any job - JobGrades = {}, -- What job grades can craft this item, leaving {} allows any grade - Amount = 1, -- The amount that will be crafted - SuccessRate = 100, -- 100% you will recieve the item - requireBlueprint = false, -- Requires a blueprint whitch you need to add in the database yourself TEMPLATE: itemname_blueprint EXAMPLE: bandage_blueprint - Time = 20, -- Time in seconds it takes to craft this item - Ingredients = { -- Ingredients needed to craft this item - ["cotton"] = 4, -- item name and count, adding items that dont exist in database will crash the script - }, - }, + ["cottonforbandages"] = { + Level = 0, -- From what level this item will be craftable + Category = "import", -- The category item will be put in + isGun = false, -- Specify if this is a gun so it will be added to the loadout + Jobs = { "import" }, -- What jobs can craft this item, leaving {} allows any job + JobGrades = {}, -- What job grades can craft this item, leaving {} allows any grade + Amount = 1, -- The amount that will be crafted + SuccessRate = 100, -- 100% you will recieve the item + requireBlueprint = false, -- Requires a blueprint whitch you need to add in the database yourself TEMPLATE: itemname_blueprint EXAMPLE: bandage_blueprint + Time = 20, -- Time in seconds it takes to craft this item + Ingredients = { -- Ingredients needed to craft this item + ["cotton"] = 4, -- item name and count, adding items that dont exist in database will crash the script + }, + }, - ["ironsheet"] = { - Level = 0, - Category = "import", - isGun = false, - Jobs = { "import" }, - JobGrades = {}, - Amount = 5, - SuccessRate = 100, - requireBlueprint = false, - Time = 60, - Ingredients = { - ["iron"] = 1, - ["hammer"] = 1, - }, - }, + ["ironsheet"] = { + Level = 0, + Category = "import", + isGun = false, + Jobs = { "import" }, + JobGrades = {}, + Amount = 5, + SuccessRate = 100, + requireBlueprint = false, + Time = 60, + Ingredients = { + ["iron"] = 1, + ["hammer"] = 1, + }, + }, - ["diamond_tip"] = { - Level = 0, - Category = "import", - isGun = false, - Jobs = { "import" }, - JobGrades = {}, - Amount = 1, - SuccessRate = 100, - requireBlueprint = false, - Time = 60, - Ingredients = { - ["diamond"] = 1, - ["hammer"] = 1, - ["steel"] = 1, - }, - }, + ["diamond_tip"] = { + Level = 0, + Category = "import", + isGun = false, + Jobs = { "import" }, + JobGrades = {}, + Amount = 1, + SuccessRate = 100, + requireBlueprint = false, + Time = 60, + Ingredients = { + ["diamond"] = 1, + ["hammer"] = 1, + ["steel"] = 1, + }, + }, - ["recycled_paper"] = { - Level = 0, - Category = "import", - isGun = false, - Jobs = { "import" }, - JobGrades = {}, - Amount = 1, - SuccessRate = 100, - requireBlueprint = false, - Time = 30, - Ingredients = { - ["paper"] = 2, - }, - }, + ["recycled_paper"] = { + Level = 0, + Category = "import", + isGun = false, + Jobs = { "import" }, + JobGrades = {}, + Amount = 1, + SuccessRate = 100, + requireBlueprint = false, + Time = 30, + Ingredients = { + ["paper"] = 2, + }, + }, - ["paper"] = { - Level = 0, - Category = "import", - isGun = false, - Jobs = { "import" }, - JobGrades = {}, - Amount = 6, - SuccessRate = 100, - requireBlueprint = false, - Time = 30, - Ingredients = { - ["newspaper"] = 1, - ["trash_burgershot"] = 1, - }, - }, + ["paper"] = { + Level = 0, + Category = "import", + isGun = false, + Jobs = { "import" }, + JobGrades = {}, + Amount = 6, + SuccessRate = 100, + requireBlueprint = false, + Time = 30, + Ingredients = { + ["newspaper"] = 1, + ["trash_burgershot"] = 1, + }, + }, - ["hammer"] = { - Level = 0, - Category = "import", - isGun = false, - Jobs = { "import" }, - JobGrades = {}, - Amount = 4, - SuccessRate = 100, - requireBlueprint = false, - Time = 60, - Ingredients = { - ["iron"] = 2, - ["wood"] = 1, - }, - }, + ["hammer"] = { + Level = 0, + Category = "import", + isGun = false, + Jobs = { "import" }, + JobGrades = {}, + Amount = 4, + SuccessRate = 100, + requireBlueprint = false, + Time = 60, + Ingredients = { + ["iron"] = 2, + ["wood"] = 1, + }, + }, - ["fixkit"] = { - Level = 0, - Category = "mechanic", - isGun = false, - Jobs = { "mechanic" }, - JobGrades = {}, - Amount = 1, - SuccessRate = 100, - requireBlueprint = false, - Time = 60, - Ingredients = { - ["ironsheet"] = 2, - ["hammer"] = 1, - }, - }, + ["fixkit"] = { + Level = 0, + Category = "mechanic", + isGun = false, + Jobs = { "mechanic" }, + JobGrades = {}, + Amount = 1, + SuccessRate = 100, + requireBlueprint = false, + Time = 60, + Ingredients = { + ["ironsheet"] = 2, + ["hammer"] = 1, + }, + }, - ["almondmilk"] = { - Level = 0, - Category = "unicorn", - isGun = false, - Jobs = { "unicorn" }, - JobGrades = {}, - Amount = 1, - SuccessRate = 100, - requireBlueprint = false, - Time = 60, - Ingredients = { - ["ice"] = 2, - ["almonds"] = 5, - ["water"] = 1, - }, - }, + ["almondmilk"] = { + Level = 0, + Category = "unicorn", + isGun = false, + Jobs = { "unicorn" }, + JobGrades = {}, + Amount = 1, + SuccessRate = 100, + requireBlueprint = false, + Time = 60, + Ingredients = { + ["ice"] = 2, + ["almonds"] = 5, + ["water"] = 1, + }, + }, - ["slicedchips"] = { - Level = 0, - Category = "unicorn", - isGun = false, - Jobs = { "unicorn" }, - JobGrades = {}, - Amount = 5, - SuccessRate = 100, - requireBlueprint = false, - Time = 10, - Ingredients = { - ["potato"] = 1, - ["water"] = 1, - }, - }, + ["slicedchips"] = { + Level = 0, + Category = "unicorn", + isGun = false, + Jobs = { "unicorn" }, + JobGrades = {}, + Amount = 5, + SuccessRate = 100, + requireBlueprint = false, + Time = 10, + Ingredients = { + ["potato"] = 1, + ["water"] = 1, + }, + }, - ["iron"] = { - Level = 0, - Category = "import", - isGun = false, - Jobs = { "import" }, - JobGrades = {}, - Amount = 3, - SuccessRate = 100, - requireBlueprint = false, - Time = 10, - Ingredients = { - ["hammer"] = 1, - ["trash_can"] = 10, - }, - }, + ["iron"] = { + Level = 0, + Category = "import", + isGun = false, + Jobs = { "import" }, + JobGrades = {}, + Amount = 3, + SuccessRate = 100, + requireBlueprint = false, + Time = 10, + Ingredients = { + ["hammer"] = 1, + ["trash_can"] = 10, + }, + }, - ["cigarette_paper"] = { - Level = 0, - Category = "ballas", - isGun = false, - Jobs = { "ballas" }, - JobGrades = {}, - Amount = 1, - SuccessRate = 100, - requireBlueprint = false, - Time = 10, - Ingredients = { - ["recycled_paper"] = 1, - }, - }, + ["cigarette_paper"] = { + Level = 0, + Category = "ballas", + isGun = false, + Jobs = { "ballas" }, + JobGrades = {}, + Amount = 1, + SuccessRate = 100, + requireBlueprint = false, + Time = 10, + Ingredients = { + ["recycled_paper"] = 1, + }, + }, - ["WEAPON_APPISTOL"] = { - Level = 10, - Category = "ammu", - isGun = false, - Jobs = { "ammu" }, - JobGrades = {}, - Amount = 1, - SuccessRate = 100, - requireBlueprint = false, - Time = 180, - Ingredients = { - ["copper"] = 1, - ["iron"] = 3, - ["wood"] = 1, - ["steel"] = 5, - }, - }, + ["WEAPON_APPISTOL"] = { + Level = 10, + Category = "ammu", + isGun = false, + Jobs = { "ammu" }, + JobGrades = {}, + Amount = 1, + SuccessRate = 100, + requireBlueprint = false, + Time = 180, + Ingredients = { + ["copper"] = 1, + ["iron"] = 3, + ["wood"] = 1, + ["steel"] = 5, + ["hammer"] = 1, + }, + }, - ["WEAPON_PISTOL"] = { - Level = 10, - Category = "ammu", - isGun = false, - Jobs = { "ammu" }, - JobGrades = {}, - Amount = 1, - SuccessRate = 100, - requireBlueprint = false, - Time = 180, - Ingredients = { - ["copper"] = 1, - ["iron"] = 3, - ["wood"] = 1, - ["steel"] = 5, - }, - }, - ["ammo-sniper"] = { - Level = 10, - Category = "ammu", - isGun = false, - Jobs = { "ammu" }, - JobGrades = {}, - Amount = 1, - SuccessRate = 100, - requireBlueprint = false, - Time = 30, - Ingredients = { - ["copper"] = 1, - ["iron"] = 1, - ["gunpowder"] = 1, - ["gold"] = 1, - }, - }, + ["WEAPON_PISTOL"] = { + Level = 10, + Category = "ammu", + isGun = false, + Jobs = { "ammu" }, + JobGrades = {}, + Amount = 1, + SuccessRate = 100, + requireBlueprint = false, + Time = 180, + Ingredients = { + ["copper"] = 1, + ["iron"] = 3, + ["wood"] = 1, + ["steel"] = 5, + ["hammer"] = 1, + }, + }, + ["ammo-sniper"] = { + Level = 10, + Category = "ammu", + isGun = false, + Jobs = { "ammu" }, + JobGrades = {}, + Amount = 1, + SuccessRate = 100, + requireBlueprint = false, + Time = 30, + Ingredients = { + ["copper"] = 1, + ["iron"] = 1, + ["gunpowder"] = 1, + ["gold"] = 1, + ["hammer"] = 1, + }, + }, - ["ammo-9"] = { - Level = 10, - Category = "ammu", - isGun = false, - Jobs = { "ammu" }, - JobGrades = {}, - Amount = 10, - SuccessRate = 100, - requireBlueprint = false, - Time = 30, - Ingredients = { - ["copper"] = 1, - ["iron"] = 1, - ["gunpowder"] = 1, - ["gold"] = 1, - }, - }, + ["ammo-9"] = { + Level = 10, + Category = "ammu", + isGun = false, + Jobs = { "ammu" }, + JobGrades = {}, + Amount = 10, + SuccessRate = 100, + requireBlueprint = false, + Time = 30, + Ingredients = { + ["copper"] = 1, + ["iron"] = 1, + ["gunpowder"] = 1, + ["gold"] = 1, + ["hammer"] = 1, + }, + }, - ["WEAPON_KNIFE"] = { - Level = 10, - Category = "ammu", - isGun = false, - Jobs = { "ammu" }, - JobGrades = {}, - Amount = 1, - SuccessRate = 100, - requireBlueprint = false, - Time = 30, - Ingredients = { - ["iron"] = 1, - ["steel"] = 1, - ["wood"] = 1, - }, - }, + ["WEAPON_KNIFE"] = { + Level = 10, + Category = "ammu", + isGun = false, + Jobs = { "ammu" }, + JobGrades = {}, + Amount = 1, + SuccessRate = 100, + requireBlueprint = false, + Time = 30, + Ingredients = { + ["iron"] = 1, + ["steel"] = 1, + ["wood"] = 1, + ["hammer"] = 1, + }, + }, - ["WEAPON_KNUCKLE"] = { - Level = 10, - Category = "ammu", - isGun = false, - Jobs = { "ammu" }, - JobGrades = {}, - Amount = 1, - SuccessRate = 100, - requireBlueprint = false, - Time = 30, - Ingredients = { - ["iron"] = 2, - ["gold"] = 1, - }, - }, + ["WEAPON_KNUCKLE"] = { + Level = 10, + Category = "ammu", + isGun = false, + Jobs = { "ammu" }, + JobGrades = {}, + Amount = 1, + SuccessRate = 100, + requireBlueprint = false, + Time = 30, + Ingredients = { + ["iron"] = 2, + ["gold"] = 1, + ["hammer"] = 1, + }, + }, - ["WEAPON_NIGHTSTICK"] = { - Level = 10, - Category = "ammu", - isGun = false, - Jobs = { "ammu" }, - JobGrades = {}, - Amount = 1, - SuccessRate = 100, - requireBlueprint = false, - Time = 60, - Ingredients = { - ["recycled_plastic"] = 10, - }, - }, + ["WEAPON_NIGHTSTICK"] = { + Level = 10, + Category = "ammu", + isGun = false, + Jobs = { "ammu" }, + JobGrades = {}, + Amount = 1, + SuccessRate = 100, + requireBlueprint = false, + Time = 60, + Ingredients = { + ["recycled_plastic"] = 5, + ["wood"] = 1, + ["hammer"] = 1, + }, + }, - ["bread"] = { - Level = 0, - Category = "baker", - isGun = false, - Jobs = { "baker" }, - JobGrades = {}, - Amount = 5, - SuccessRate = 100, - requireBlueprint = false, - Time = 200, - Ingredients = { - ["flour"] = 1, - }, - }, + ["bread"] = { + Level = 0, + Category = "baker", + isGun = false, + Jobs = { "baker" }, + JobGrades = {}, + Amount = 5, + SuccessRate = 100, + requireBlueprint = false, + Time = 200, + Ingredients = { + ["flour"] = 1, + }, + }, - ["flour"] = { - Level = 0, - Category = "baker", - isGun = false, - Jobs = { "baker" }, - JobGrades = {}, - Amount = 1, - SuccessRate = 100, - requireBlueprint = false, - Time = 120, - Ingredients = { - ["grain"] = 10, - }, - }, + ["flour"] = { + Level = 0, + Category = "baker", + isGun = false, + Jobs = { "baker" }, + JobGrades = {}, + Amount = 1, + SuccessRate = 100, + requireBlueprint = false, + Time = 120, + Ingredients = { + ["grain"] = 10, + }, + }, - ["bread_deer"] = { - Level = 0, - Category = "unicorn", - isGun = false, - Jobs = { "unicorn" }, - JobGrades = {}, - Amount = 3, - SuccessRate = 100, - requireBlueprint = false, - Time = 120, - Ingredients = { - ["deer_meat"] = 1, - ["bread"] = 3, - }, - }, + ["bread_deer"] = { + Level = 0, + Category = "unicorn", + isGun = false, + Jobs = { "unicorn" }, + JobGrades = {}, + Amount = 3, + SuccessRate = 100, + requireBlueprint = false, + Time = 120, + Ingredients = { + ["deer_meat"] = 1, + ["bread"] = 3, + }, + }, - ["salmon_fillet"] = { - Level = 0, - Category = "fisherman", - isGun = false, - Jobs = { "fisherman" }, - JobGrades = {}, - Amount = 2, - SuccessRate = 100, - requireBlueprint = false, - Time = 60, - Ingredients = { - ["salmon"] = 1, - }, - }, + ["salmon_fillet"] = { + Level = 0, + Category = "fisherman", + isGun = false, + Jobs = { "fisherman" }, + JobGrades = {}, + Amount = 2, + SuccessRate = 100, + requireBlueprint = false, + Time = 60, + Ingredients = { + ["salmon"] = 1, + }, + }, - ["recycled_plastic"] = { - Level = 0, - Category = "import", - isGun = false, - Jobs = { "import" }, - JobGrades = {}, - Amount = 2, - SuccessRate = 100, - requireBlueprint = false, - Time = 30, - Ingredients = { - ["plastic_bag"] = 1, - }, - }, - }, + ["recycled_plastic"] = { + Level = 0, + Category = "import", + isGun = false, + Jobs = { "import" }, + JobGrades = {}, + Amount = 2, + SuccessRate = 100, + requireBlueprint = false, + Time = 30, + Ingredients = { + ["plastic_bag"] = 1, + }, + }, + }, - Workbenches = { -- Every workbench location, leave {} for jobs if you want everybody to access - { - coords = vector3(1020.936279, -2404.628662, 30.122314), - jobs = { "import" }, - blip = false, - recipes = { - "cottonforbandages", - "hammer", - "ironsheet", - "recycled_paper", - "paper", - "recycled_plastic", - "iron", - "diamond_tip", - }, - radius = 1.0, - }, - { - coords = vector3(311.314301, -565.213196, 43.282104), - jobs = { "ambulance" }, - blip = false, - recipes = { "bandage", "marijuana" }, - radius = 1.0, - }, - { - coords = vector3(-344.492310, -89.063736, 39.002197), - jobs = { "mechanic" }, - blip = false, - recipes = { "fixkit" }, - radius = 1.0, - }, - { - coords = vector3(808.984619, -2159.630859, 29.616821), - jobs = { "ammu" }, - blip = false, - recipes = { - "WEAPON_APPISTOL", - "ammo-sniper", - "ammo-9", - "WEAPON_KNIFE", - "WEAPON_KNUCKLE", - "WEAPON_NIGHTSTICK", - "WEAPON_PISTOL", - }, - radius = 1.0, - }, - { - coords = vector3(129.217590, -1283.802246, 29.263062), - jobs = { "unicorn" }, - blip = false, - recipes = { "almondmilk", "slicedchips", "bread_deer" }, - radius = 1.0, - }, - { - coords = vector3(83.156044, -1960.259277, 18.041016), - jobs = { "ballas" }, - blip = false, - recipes = { "cigarette_paper", "marijuana" }, - radius = 1.0, - }, - { - coords = vector3(2342.202148, 3144.817627, 48.202148), - jobs = { "baker" }, - blip = false, - recipes = { "flour", "bread" }, - radius = 1.0, - }, - { - coords = vector3(-316.549438, -2781.217529, 4.982422), - jobs = { "fisherman" }, - blip = false, - recipes = { "salmon_fillet" }, - radius = 1.0, - }, - }, + Workbenches = { -- Every workbench location, leave {} for jobs if you want everybody to access + { + coords = vector3(1020.936279, -2404.628662, 30.122314), + jobs = { "import" }, + blip = false, + recipes = { + "cottonforbandages", + "hammer", + "ironsheet", + "recycled_paper", + "paper", + "recycled_plastic", + "iron", + "diamond_tip", + }, + radius = 1.0, + }, + { + coords = vector3(311.314301, -565.213196, 43.282104), + jobs = { "ambulance" }, + blip = false, + recipes = { "bandage", "marijuana" }, + radius = 1.0, + }, + { + coords = vector3(-344.492310, -89.063736, 39.002197), + jobs = { "mechanic" }, + blip = false, + recipes = { "fixkit" }, + radius = 1.0, + }, + { + coords = vector3(808.984619, -2159.630859, 29.616821), + jobs = { "ammu" }, + blip = false, + recipes = { + "WEAPON_APPISTOL", + "ammo-sniper", + "ammo-9", + "WEAPON_KNIFE", + "WEAPON_KNUCKLE", + "WEAPON_NIGHTSTICK", + "WEAPON_PISTOL", + }, + radius = 1.0, + }, + { + coords = vector3(129.217590, -1283.802246, 29.263062), + jobs = { "unicorn" }, + blip = false, + recipes = { "almondmilk", "slicedchips", "bread_deer" }, + radius = 1.0, + }, + { + coords = vector3(83.156044, -1960.259277, 18.041016), + jobs = { "ballas" }, + blip = false, + recipes = { "cigarette_paper", "marijuana" }, + radius = 1.0, + }, + { + coords = vector3(2342.202148, 3144.817627, 48.202148), + jobs = { "baker" }, + blip = false, + recipes = { "flour", "bread" }, + radius = 1.0, + }, + { + coords = vector3(-316.549438, -2781.217529, 4.982422), + jobs = { "fisherman" }, + blip = false, + recipes = { "salmon_fillet" }, + radius = 1.0, + }, + }, } Config.Locale = "it"