Skip to main content

Inventory

info

If you're using supported inventory you dont have to make any changes in this section.

You can override inventory actions from no-base/configure/server/inventory.lua

Examples


info

This is an example of how we handle qb-inventory. Since we support qb-inventory internally you don't need to make any changes if you use qb-inventory.

local core = exports["qb-core"]:GetCoreObject()
local GetPlayer = core.Functions.GetPlayer
local RegisterItem = core.Functions.CreateUseableItem

core = nil

Config.Inventory = {
RegisterItem = function(itemName, cb)
RegisterItem(itemName, function(source, item)
item.metadata, item.info = item.info or item.metadata, nil

cb(source, item)
end)
end,
AddItem = function(source, itemName, count, metadata)
local player = GetPlayer(source)

if not player then return false end

return player.Functions.AddItem(itemName, count, false, metadata)
end,
RemoveItem = function(source, itemName, count)
local player = GetPlayer(source)

if not player then return false end

return player.Functions.RemoveItem(itemName, count)
end
}

RegisterItem

Registers item to the inventory.

Parameters

  • itemName: string
  • cb: Function(source: number, item: {metadata: any})
AddItem

Adds item to the given source's inventory.

Parameters

  • source: number
  • itemName: string
  • count: number
  • metadata?: any

Returns

  • success: boolean
RemoveItem

Removes item to the given source's inventory.

Parameters

  • source: number
  • itemName: string
  • count: number

Returns

  • success: boolean