diff --git a/resources/[inventory]/lusty94_smoking/server/smoking_server.lua b/resources/[inventory]/lusty94_smoking/server/smoking_server.lua index 52597fb2c..5cfd31c19 100644 --- a/resources/[inventory]/lusty94_smoking/server/smoking_server.lua +++ b/resources/[inventory]/lusty94_smoking/server/smoking_server.lua @@ -23,19 +23,29 @@ end --remove items local function removeItem(src, item, amount) if InvType == 'qb' then - if exports['qb-inventory']:RemoveItem(src, item, amount, false, false, false) then - TriggerClientEvent('qb-inventory:client:ItemBox', src, QBCore.Shared.Items[item], 'remove', amount) + -- Modified for tgiann-inventory + if exports['tgiann-inventory']:RemoveItem(src, item, amount) then + TriggerClientEvent('inventory:client:ItemBox', src, QBCore.Shared.Items[item], 'remove', amount) end elseif InvType == 'ox' then exports.ox_inventory:RemoveItem(src, item, amount) + elseif InvType == 'tgiann' then + -- Direct support for tgiann-inventory + exports['tgiann-inventory']:RemoveItem(src, item, amount) end end --add items local function addItem(src, item, amount) if InvType == 'qb' then - if exports['qb-inventory']:AddItem(src, item, amount, false, false, false) then - TriggerClientEvent('qb-inventory:client:ItemBox', src, QBCore.Shared.Items[item], 'add', amount) + -- Modified for tgiann-inventory + if exports['tgiann-inventory']:AddItem(src, item, amount, nil, { + serie = "SMOKING-" .. math.random(100000, 999999), + durabilityPercent = 100, + usedTotalAmmo = 0, + ammo = 0 + }) then + TriggerClientEvent('inventory:client:ItemBox', src, QBCore.Shared.Items[item], 'add', amount) end elseif InvType == 'ox' then if exports.ox_inventory:CanCarryItem(src, item, amount) then @@ -43,6 +53,18 @@ local function addItem(src, item, amount) else SendNotify(src, Config.Language.Notifications.CantCarry, 'error', 5000) end + elseif InvType == 'tgiann' then + -- Direct support for tgiann-inventory + local metadata = {} + if string.match(item, "weapon_") then + metadata = { + serie = "SMOKING-" .. math.random(100000, 999999), + durabilityPercent = 100, + usedTotalAmmo = 0, + ammo = 0 + } + end + exports['tgiann-inventory']:AddItem(src, item, amount, nil, metadata) end end @@ -61,8 +83,15 @@ QBCore.Functions.CreateCallback('lusty94_smoking:server:hasItem', function(sourc local item = Config.Consumables[itemName] if item then if item.requiredItem then - local requiredItem = Player.Functions.GetItemByName(item.requiredItem) - if requiredItem then + local hasItem = false + if InvType == 'tgiann' then + hasItem = exports['tgiann-inventory']:HasItem(src, item.requiredItem, 1) + else + local requiredItem = Player.Functions.GetItemByName(item.requiredItem) + hasItem = requiredItem ~= nil + end + + if hasItem then cb(true) else SendNotify(src, 'You need a ' .. item.requiredLabel .. ' to use this!', 'error', 5000) @@ -107,19 +136,27 @@ RegisterNetEvent('lusty94_smoking:server:UseVapeJuice', function(itemName, amoun end end) - - - - - - - - - --qb inventory shop RegisterNetEvent('lusty94_smoking:server:openShop', function() local src = source local Player = QBCore.Functions.GetPlayer(src) + + if InvType == 'tgiann' then + -- For tgiann-inventory + local items = { + { name = 'redwoodpack', price = 250, amount = 100, type = 'item' }, + { name = 'debonairepack', price = 250, amount = 100, type = 'item' }, + { name = 'sixtyninepack', price = 250, amount = 100, type = 'item' }, + { name = 'yukonpack', price = 250, amount = 100, type = 'item' }, + { name = 'vape', price = 100, amount = 100, type = 'item' }, + { name = 'vapejuice', price = 50, amount = 100, type = 'item' }, + { name = 'lighter', price = 5, amount = 100, type = 'item' }, + } + exports["tgiann-inventory"]:RegisterShop("smokingShop", items) + exports["tgiann-inventory"]:OpenShop(src, "smokingShop") + return + end + local smokingShop = { { name = "redwoodpack", price = 250, amount = 100, info = {}, type = "item", slot = 1,}, { name = "debonairepack", price = 250, amount = 100, info = {}, type = "item", slot = 2,}, @@ -129,14 +166,17 @@ RegisterNetEvent('lusty94_smoking:server:openShop', function() { name = "vapejuice", price = 50, amount = 100, info = {}, type = "item", slot = 6,}, { name = "lighter", price = 5, amount = 100, info = {}, type = "item", slot = 7,}, } - exports['qb-inventory']:CreateShop({ - name = 'smokingShop', - label = 'Smoking Shop', - slots = 7, - items = smokingShop - }) - if Player then - exports['qb-inventory']:OpenShop(source, 'smokingShop') + + if InvType == 'qb' then + exports['qb-inventory']:CreateShop({ + name = 'smokingShop', + label = 'Smoking Shop', + slots = 7, + items = smokingShop + }) + if Player then + exports['qb-inventory']:OpenShop(source, 'smokingShop') + end end end) @@ -156,6 +196,18 @@ AddEventHandler('onResourceStart', function(resourceName) { name = 'lighter', price = 5 }, }, }) + elseif InvType == 'tgiann' then + -- Register shop for tgiann-inventory on resource start + local items = { + { name = 'redwoodpack', price = 250, amount = 100, type = 'item' }, + { name = 'debonairepack', price = 250, amount = 100, type = 'item' }, + { name = 'sixtyninepack', price = 250, amount = 100, type = 'item' }, + { name = 'yukonpack', price = 250, amount = 100, type = 'item' }, + { name = 'vape', price = 100, amount = 100, type = 'item' }, + { name = 'vapejuice', price = 50, amount = 100, type = 'item' }, + { name = 'lighter', price = 5, amount = 100, type = 'item' }, + } + exports["tgiann-inventory"]:RegisterShop("smokingShop", items) end end end) @@ -180,4 +232,4 @@ local function CheckVersion() end) end -CheckVersion() \ No newline at end of file +CheckVersion() diff --git a/resources/[inventory]/lusty94_smoking/shared/config.lua b/resources/[inventory]/lusty94_smoking/shared/config.lua index f6c5d3309..47d7cf679 100644 --- a/resources/[inventory]/lusty94_smoking/shared/config.lua +++ b/resources/[inventory]/lusty94_smoking/shared/config.lua @@ -28,7 +28,7 @@ Config.CoreSettings = { --use 'ox' for ox_target }, Inventory = { --support for qb-inventory and ox_inventory - Type = 'qb', + Type = 'tgiann', --use 'qb' for qb-inventory --use 'ox' for ox_inventory },