diff --git a/bridge/client.lua b/bridge/client.lua index d7766db..5239326 100644 --- a/bridge/client.lua +++ b/bridge/client.lua @@ -111,6 +111,8 @@ local function InitializeInventory() Inventory = 'codem-inventory' elseif GetResourceState('core_inventory') == 'started' then Inventory = 'core_inventory' + elseif GetResourceState('tgiann-inventory') == 'started' then + Inventory = 'tgiann-inventory' else -- Add custom inventory here end @@ -147,6 +149,8 @@ function GetPlayerInventory() return exports[Inventory]:GetInventory() elseif Inventory == 'codem-inventory' then return exports[Inventory]:GetClientPlayerInventory() + elseif Inventory == 'tgiann-inventory' then + return exports[Inventory]:GetPlayerItems() end else if Framework == 'esx' then @@ -182,6 +186,10 @@ function GetItemData(item) local items = exports['codem-inventory']:GetItemList() if not items then return end return items[item] + elseif Inventory == 'tgiann-inventory' then + local items = exports[Inventory]:GetItemList() + if not items then return end + return items[item] elseif Inventory == 'core_inventory' then -- No available client-side export to get item list if Framework == 'qb' then diff --git a/bridge/server.lua b/bridge/server.lua index 8ebfdf1..98642c0 100644 --- a/bridge/server.lua +++ b/bridge/server.lua @@ -38,6 +38,8 @@ local function InitializeInventory() Inventory = 'codem-inventory' elseif GetResourceState('core_inventory') == 'started' then Inventory = 'core_inventory' + elseif GetResourceState('tgiann-inventory') == 'started' then + Inventory = 'tgiann-inventory' else -- Add custom inventory here end @@ -141,6 +143,8 @@ function GetItemCount(source, item) if Inventory then if Inventory == 'ox_inventory' then return exports[Inventory]:Search(source, 'count', item) or 0 + elseif Inventory == 'tgiann-inventory' then + return exports[Inventory]:GetItemCount(source, item) elseif Inventory == 'core_inventory' then return exports[Inventory]:getItemCount(source, item) elseif Inventory == 'qs-inventory' then @@ -287,6 +291,8 @@ function CanCarry(source, item, count) elseif Inventory == 'core_inventory' then -- Core's canCarry export not working as expected, just return true return true + elseif Inventory == 'tgiann-inventory' then + return exports[Inventory]:CanCarryItem(source, item, count) else -- Add custom inventory here return true diff --git a/client/functions.lua b/client/functions.lua index 58fbaa0..6f6d01b 100644 --- a/client/functions.lua +++ b/client/functions.lua @@ -160,7 +160,7 @@ function ShowInput(data) end -- Display TextUI ---- @param text string +--- @param text string --- @param icon string function ShowTextUI(text, icon) if textui == 'lation_ui' then @@ -293,6 +293,8 @@ end function GetDurabilityType() if Inventory == 'ox_inventory' then return 'durability' + elseif Inventory == 'tgiann-inventory' then + return 'durabilityPercent' else return 'quality' end diff --git a/config/shared.lua b/config/shared.lua index 7efe7b9..d5b005e 100644 --- a/config/shared.lua +++ b/config/shared.lua @@ -113,7 +113,10 @@ return { -- price: price of item -- icon: icon for item -- metadata: optional metadata for item - -- metadata: ⚠️ use 'durability' if using ox_inventory, otherwise use 'quality' + -- metadata: ⚠️ + -- ⚠️ use 'durability' if using ox_inventory + -- ⚠️ use 'durabilityPercent' if using tgiann-inventory + -- ⚠️ use 'quality' for everything else -- level: optional player level requirement to purchase item [1] = { item = 'ls_pickaxe', price = 150, icon = 'hammer', metadata = { ['durability'] = 100 }, level = 1 }, [2] = { item = 'ls_copper_pickaxe', price = 300, icon = 'hammer', metadata = { ['durability'] = 100 }, level = 2 }, diff --git a/server/functions.lua b/server/functions.lua index 1dd0276..924bb56 100644 --- a/server/functions.lua +++ b/server/functions.lua @@ -9,6 +9,8 @@ local fmsdk = GetResourceState('fmsdk') == 'started' function GetDurabilityType() if Inventory == 'ox_inventory' then return 'durability' + elseif Inventory == 'tgiann-inventory' then + return 'durabilityPercent' else return 'quality' end @@ -71,6 +73,11 @@ function SetMetadata(source, item, metatype, metavalue) if not next(itemData) then return end itemData[1].metadata[metatype] = metavalue exports[Inventory]:setMetadata(source, itemData[1].slot, itemData[1].metadata) + elseif Inventory == 'tgiann-inventory' then + local itemData = exports[Inventory]:GetItemByName(source, item) + if not itemData then return end + itemData.info[metatype] = metavalue + exports[Inventory]:SetItemData(source, item, itemData.slot, itemData.info) else local itemData = exports[Inventory]:GetItemByName(source, item) if not itemData then return end