Unlocked Files
Client Side
Server Side
Framework = {}
TriggerEvent("getCore", function(core)
Framework.Core = core
end)
Framework.Notify = function(source, message, duration)
Framework.Core.NotifyRightTip(source, message, duration)
end
Framework.AddCallback = function(event, cb)
Framework.Core.addRpcCallback(event, cb)
end
Framework.GetItemLabel = function(itemName, cb)
exports["vorp_inventory"]:getItemDB(itemName, function(item)
cb(item and item.label or nil)
end)
end
Framework.GetItemById = function(source, itemId, cb)
exports["vorp_inventory"]:getItemByMainId(source, itemId, function(item)
if item then
cb({
name = item.name,
label = item.label,
count = item.count,
metadata = item.metadata,
id = item.mainid or item.id
})
else
cb(nil)
end
end)
end
Framework.getItemByName = function(source, itemName, cb)
exports["vorp_inventory"]:getItemByName(source, itemName, function(item)
if cb then
if item then
cb({
name = item.name,
label = item.label,
count = item.count,
metadata = item.metadata,
id = item.mainid or item.id
})
else
cb(nil)
end
end
end)
end
Framework.SetItemMetadata = function(source, itemId, metadata)
exports["vorp_inventory"]:setItemMetadata(source, itemId, metadata, nil)
end
Framework.RegisterItem = function(itemName, cb)
exports["vorp_inventory"]:registerUsableItem(itemName, function(data)
cb({
source = data.source,
itemId = data.item.mainid or data.item.id,
metadata = data.item.metadata
})
end)
end
Framework.CloseInventory = function(source)
TriggerClientEvent("vorp_inventory:CloseInv", source)
end
Framework.GetCharacterName = function(source, cb)
local character = Framework.Core.getUser(source).getUsedCharacter
cb(character.firstname .. ' ' .. character.lastname)
end
Framework.GetMoney = function(source, cb)
local character = Framework.Core.getUser(source).getUsedCharacter
cb(character.money)
end
Framework.RemoveMoney = function(source, amount)
local character = Framework.Core.getUser(source).getUsedCharacter
character.removeCurrency(0, amount)
end
Framework.AddMoney = function(source, amount)
local character = Framework.Core.getUser(source).getUsedCharacter
character.addCurrency(0, amount)
end
Framework.CanCarryItem = function(source, itemName, amount, cb)
exports["vorp_inventory"]:canCarryItem(source, itemName, amount, function(canCarry)
cb(canCarry)
end)
end
Framework.AddItem = function(source, itemName, amount, cb)
exports["vorp_inventory"]:addItem(source, itemName, amount or 1, {}, function(added)
if cb then cb(added) end
end)
end
Framework.RemoveItem = function(source, itemName, itemCount)
-- Function must return true / false if item has been removed or not
return exports["vorp_inventory"]:subItem(source, itemName, itemCount or 1)
end
Framework.GetInventoryItems = function(source, cb)
exports["vorp_inventory"]:getUserInventoryItems(source, function(inventory)
local items = {}
for index, item in pairs(inventory) do
items[index] = {
name = item.name,
count = item.count
}
end
cb(items)
end)
end
RegisterNetEvent("vorpinventory:serverDropItem", function(itemName, itemId, _, __)
local _source = source
ItemDropped(_source, itemName, itemId)
end)
Last updated
Was this helpful?