allows to control what items to get, if 0 gets all items with no metadata if meta was not passed if 0 gets items expired, anything above 0 or equal will return those item count
allows to control percentage of items to remove, if nil removes any, if 0 removes expired items only, if more than 0 it removes anything above or equal
amount of item to remove from current stack if less, if more it will remove from here and add to another stack if metadata matches, if not then it updates the entire stack with new meta
-- FOR CONTEXT BUTTONS USE THIS FORMATlocal metadata = { context = { -- key word for context buttons { -- array supporting multiple buttons text = "BUTTON", -- label shown in menu close = true, -- close inv on use event = { client = "myscript:contextevent", -- client event to trigger server = "myscript:contextevent" -- server event to trigger }, arguments = { -- arguments to pass to the event if needed "any", } } }}-- listen in your scripts client sideAddEventHandler("myscript:contextevent", function(args,itemId)end) -- NOTE: for server side events you must whitelist the event using the exports bellowexports.vorp_inventory:addAllowedContextMenuEvent("myscript:contextevent",GetCurrentResourceName())-- or as a tableexports.vorp_inventory:addAllowedContextMenuEvent({ "myscript:contextevent", "myscript:contextevent2"},GetCurrentResourceName())-- if you dont whitelist the event it will not be triggered this is to ensure only trusted events are triggered-- to remove a whitelisted eventexports.vorp_inventory:removeAllowedContextMenuEvent("myscript:contextevent",GetCurrentResourceName())-- or as a tableexports.vorp_inventory:removeAllowedContextMenuEvents({ "myscript:contextevent", "myscript:contextevent2"},GetCurrentResourceName())-- server side of your scriptAddEventHandler("myscript:contextevent", function(source,args,itemId)end)
-- SET ITEM METADATA exports.vorp_inventory:setItemMetadata(source, itemId, metadata, amount, callback)
registerUsableItem
register usable item
Items cant be registered twice they must be unique
set custom inventory whitelisted weapons, if in registerCustomInventory you set whitelistWeapons true then use this export to set which weapons are whitelisted and their amount
local data = { source = source, target = target, title = "Search inventory", blacklist = { -- OPTIONAL water = true, -- item name or weapon name }, itemsLimit = { -- OPTIONAL weapons = { itemType = "item_weapon", limit = 1 }, -- how many weapons user is allowed to take items = { itemType = "item_standard", limit = 2 }, -- how many items user is allowed to take }, timeout = 60, -- OPTIONAL in seconds , if enabled when user reaches limits then a timeout is applied so player cant steal for that amount of time if removed then once limit reached only after restart they can steal again}exports.vorp_inventory:openPlayerInventory(data)
AddEventHandler("vorp_inventory:Server:OnItemUse",function(data) local source = data.source local itemName = data.item.name local itemMetadata = data.item.metadataend)
Listen to when an item is created in player inventory
contains data from the current weapon used in the inventory or last weapon used.
client side
GetEquippedWeaponData
local key = string.format("GetEquippedWeaponData_%d",weaponHash)local data = LocalPlayer.state[key]local serial = data.serialNumberlocal id = data.weaponId
server side
GetEquippedWeaponData
local key = string.format("GetEquippedWeaponData_%d",weaponHash)local data = Player(source).state[key]local serial = data.serialNumberlocal id = data.weaponId
check if inventory is active (open or closed) including custom inventories