diff --git a/crafting.lua b/crafting.lua index b39dd5e..80b9ac8 100644 --- a/crafting.lua +++ b/crafting.lua @@ -39,6 +39,7 @@ function craftingMenu(data) local hasjob = false for i = 1, #Recipes do for k, v in pairs(Recipes[i]) do if k ~= "amount" and k ~= "job" and k ~= "gang" then + if not Recipes[i]["amount"] then Recipes[i]["amount"] = 1 end if Recipes[i].job then hasjob = false for l, b in pairs(Recipes[i].job) do hasjob = hasJob(l, nil, b) @@ -456,7 +457,7 @@ function stashRemoveItem(stashItems, stashName, items) local amount = amount and if Config.System.Debug then print("^6Bridge^7: ^3saveStash^7: ^2Saving ^3QB^2 stash ^7'^6"..stashName.."^7'") end - else + elseif GetResourceState(QBInv):find("start") then for k, v in pairs(items) do for l in pairs(stashItems) do if stashItems[l].name == k then @@ -478,6 +479,8 @@ function stashRemoveItem(stashItems, stashName, items) local amount = amount and print("^6Bridge^7: ^3saveStash^7: ^2Saving ^3QB^2 stash ^7'^6"..stashName.."^7'") end MySQL.Async.insert('INSERT INTO stashitems (stash, items) VALUES (:stash, :items) ON DUPLICATE KEY UPDATE items = :items', { ['stash'] = stashName, ['items'] = json.encode(stashItems) }) + else + print("^4ERROR^7: ^2No Inventory detected ^7- ^2Check ^3exports^1.^2lua^7") end end RegisterNetEvent(GetCurrentResourceName()..":server:stashRemoveItem", stashRemoveItem) diff --git a/wrapper.lua b/wrapper.lua index d533173..9022169 100644 --- a/wrapper.lua +++ b/wrapper.lua @@ -60,7 +60,7 @@ end -- Load Vehicles if GetResourceState(QBXExport):find("start") then - Core = Core or exports[QBExport]:GetCoreObject() + Core = Core or exports[QBXExport]:GetCoreObject() print("^6Bridge^7: ^2Loading ^3Vehicles^2 from ^7"..QBXExport) Vehicles = exports[QBXExport]:GetVehiclesByHash() elseif GetResourceState(QBExport):find("start") then @@ -560,12 +560,7 @@ if not GetResourceState(OXTargetExport):find("start") and not GetResourceState(Q local pedCoords = GetEntityCoords(PlayerPedId()) for k, v in pairs (TextTargets) do if #(pedCoords - v.coords) <= v.dist then - DrawText3D( - v.coords.x, - v.coords.y, - v.coords.z + 1.0, - v.buttontext - ) + DrawText3D(v.coords.x, v.coords.y, v.coords.z + 1.0, v.buttontext) for i = 1, #v.options do if IsControlJustPressed(0, v.options[i].key) then if v.options[i].onSelect then v.options[i].onSelect() end @@ -740,7 +735,6 @@ function onPlayerLoaded(func) end end - -- INPUT -- function createInput(title, opts) local dialog = nil @@ -990,7 +984,7 @@ function createUseableItem(item, funct) end end -function hasJob(job, source, grade) local hasJob = false +function hasJob(job, source, grade) local hasJob, duty = false, true if source then local src = tonumber(source) if GetResourceState(ESXExport):find("start") then @@ -1012,16 +1006,19 @@ function hasJob(job, source, grade) local hasJob = false elseif GetResourceState(QBXExport):find("start") then local jobinfo = exports[QBXExport]:GetPlayer(src).PlayerData.job if jobinfo.name == job then hasJob = true + duty = exports[QBXExport]:GetPlayer(src).PlayerData.job.onduty if grade and not (grade <= jobinfo.grade.level) then hasJob = false end end local ganginfo = exports[QBXExport]:GetPlayer(src).PlayerData.gang if ganginfo.name == job then hasJob = true if grade and not (grade <= ganginfo.grade.level) then hasJob = false end end + elseif GetResourceState(QBExport):find("start") and not GetResourceState(QBXExport):find("start") then if Core.Functions.GetPlayer then -- support older qb-core functions local jobinfo = Core.Functions.GetPlayer(src).PlayerData.job if jobinfo.name == job then hasJob = true + duty = Core.Functions.GetPlayer(src).PlayerData.job.onduty if grade and not (grade <= jobinfo.grade.level) then hasJob = false end end local ganginfo = Core.Functions.GetPlayer(src).PlayerData.gang @@ -1031,6 +1028,7 @@ function hasJob(job, source, grade) local hasJob = false else -- support newer qb-core exports local jobinfo = exports[QBExport]:GetPlayer(src).PlayerData.job if jobinfo.name == job then hasJob = true + duty = exports[QBExport]:GetPlayer(src).PlayerData.job.onduty if grade and not (grade <= jobinfo.grade.level) then hasJob = false end end local ganginfo = exports[QBExport]:GetPlayer(src).PlayerData.gang @@ -1059,6 +1057,7 @@ function hasJob(job, source, grade) local hasJob = false elseif GetResourceState(QBXExport):find("start") then local jobinfo = QBX.PlayerData.job if jobinfo.name == job then hasJob = true + duty = QBX.PlayerData.job.onduty if grade and not (grade <= jobinfo.grade.level) then hasJob = false end end local ganginfo = QBX.PlayerData.gang @@ -1071,8 +1070,8 @@ function hasJob(job, source, grade) local hasJob = false info = PlayerData end) local jobinfo = info.job - if jobinfo.name == job then - hasJob = true + if jobinfo.name == job then hasJob = true + duty = jobinfo.onduty if grade and not (grade <= jobinfo.grade.level) then hasJob = false end end local ganginfo = info.gang @@ -1084,7 +1083,7 @@ function hasJob(job, source, grade) local hasJob = false print("^4ERROR^7: ^2No Core detected for hasJob() ^7- ^2Check ^3exports^1.^2lua^7") end end - return hasJob + return hasJob, duty end function getPlayer(source) local Player = {}