config.server.lua
Preview File Updated: v1.0.2 - 04/08/2026
SV = {}
-- ██████╗ █████╗ ████████╗ █████╗ ██████╗ █████╗ ███████╗███████╗
-- ██╔══██╗██╔══██╗╚══██╔══╝██╔══██╗██╔══██╗██╔══██╗██╔════╝██╔════╝
-- ██║ ██║███████║ ██║ ███████║██████╔╝███████║███████╗█████╗
-- ██║ ██║██╔══██║ ██║ ██╔══██║██╔══██╗██╔══██║╚════██║██╔══╝
-- ██████╔╝██║ ██║ ██║ ██║ ██║██████╔╝██║ ██║███████║███████╗
-- ╚═════╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝╚═════╝ ╚═╝ ╚═╝╚══════╝╚══════╝
SV.Database = {
['ESX'] = {
player = {
table = 'users',
columns = {
identifier = 'identifier',
}
},
},
['QB-Core'] = {
player = {
table = 'players',
columns = {
identifier = 'citizenid',
}
},
}
}
-- ███████╗██████╗ █████╗ ███╗ ███╗███████╗██╗ ██╗ ██████╗ ██████╗ ██╗ ██╗
-- ██╔════╝██╔══██╗██╔══██╗████╗ ████║██╔════╝██║ ██║██╔═══██╗██╔══██╗██║ ██╔╝
-- █████╗ ██████╔╝███████║██╔████╔██║█████╗ ██║ █╗ ██║██║ ██║██████╔╝█████╔╝
-- ██╔══╝ ██╔══██╗██╔══██║██║╚██╔╝██║██╔══╝ ██║███╗██║██║ ██║██╔══██╗██╔═██╗
-- ██║ ██║ ██║██║ ██║██║ ╚═╝ ██║███████╗╚███╔███╔╝╚██████╔╝██║ ██║██║ ██╗
-- ╚═╝ ╚═╝ ╚═╝╚═╝ ╚═╝╚═╝ ╚═╝╚══════╝ ╚══╝╚══╝ ╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝
SV.GetPlayer = function(src)
if Config.Core == "ESX" then
return Core.GetPlayerFromId(src)
elseif Config.Core == "QB-Core" then
return Core.Functions.GetPlayer(src)
end
end
SV.GetIdentifier = function(xPlayer)
if Config.Core == "ESX" then
return xPlayer.identifier
elseif Config.Core == "QB-Core" then
return xPlayer.PlayerData.citizenid
end
end
SV.RegisterCommand = function(command, groups, cb, help, suggestions)
if Config.Core == "ESX" then
local arguments = {}
if suggestions then
for k, v in pairs(suggestions) do
table.insert(arguments, {
name = v.name,
help = v.label,
type = 'any'
})
end
end
Core.RegisterCommand(command, groups, function(xPlayer, args, showError)
local src = xPlayer.source
cb(src, args)
end, false, {
help = help,
arguments = arguments
})
elseif Config.Core == "QB-Core" then
local arguments = {}
if suggestions then
for k, v in pairs(suggestions) do
table.insert(arguments, {
name = v.name,
help = v.label
})
end
end
Core.Commands.Add(command, help, arguments, false, function(source, args)
cb(source, args)
end, groups)
end
end
-- ██╗████████╗███████╗███╗ ███╗███████╗
-- ██║╚══██╔══╝██╔════╝████╗ ████║██╔════╝
-- ██║ ██║ █████╗ ██╔████╔██║███████╗
-- ██║ ██║ ██╔══╝ ██║╚██╔╝██║╚════██║
-- ██║ ██║ ███████╗██║ ╚═╝ ██║███████║
-- ╚═╝ ╚═╝ ╚══════╝╚═╝ ╚═╝╚══════╝
SV.RegisterUsableItem = function(name, cb)
if RegisterUsableItem then -- The script looks for functions in ./integration/[inventory]/*
RegisterUsableItem(name, cb)
else
if Config.Core == "ESX" then
Core.RegisterUsableItem(name, function(src, itemName, itemData)
cb(src, itemName, {metadata = itemData.metadata})
end)
elseif Config.Core == "QB-Core" then
Core.Functions.CreateUseableItem(name, function(src, item)
cb(src, item.name, {metadata = item.info})
end)
end
end
end
SV.GetItemCount = function(xPlayer, name)
if Config.Core == "ESX" then
return xPlayer.getInventoryItem(name).count
elseif Config.Core == "QB-Core" then
return xPlayer.Functions.GetItemByName(name) and xPlayer.Functions.GetItemByName(name).amount or 0
end
end
SV.AddItem = function(src, xPlayer, name, count, metadata)
if AddItem then -- The script looks for functions in ./integration/[inventory]/*
AddItem(src, xPlayer, name, count, metadata)
else
if Config.Core == "ESX" then
xPlayer.addInventoryItem(name, count)
elseif Config.Core == "QB-Core" then
xPlayer.Functions.AddItem(name, count)
end
end
end
SV.RemoveItem = function(src, xPlayer, name, count, slot)
if RemoveItem then -- The script looks for functions in ./integration/[inventory]/*
RemoveItem(src, xPlayer, name, count, slot)
else
if Config.Core == "ESX" then
xPlayer.removeInventoryItem(name, count)
elseif Config.Core == "QB-Core" then
xPlayer.Functions.RemoveItem(name, count)
end
end
endLast updated