Main/resources/[carscripts]/jg-handling/framework/sv-functions.lua

70 lines
1.8 KiB
Lua
Raw Normal View History

2025-06-07 08:51:21 +02:00
---@param src integer
---@param msg string
---@param type "success" | "warning" | "error"
function Framework.Server.Notify(src, msg, type)
TriggerClientEvent("jg-handling:client:notify", src, msg, type, 5000)
end
---@param src integer
---@returns boolean
function Framework.Server.IsAdmin(src)
return IsPlayerAceAllowed(tostring(src), "command") or false
end
---@param src integer
function Framework.Server.GetPlayer(src)
if Config.Framework == "QBCore" then
return QBCore.Functions.GetPlayer(src)
elseif Config.Framework == "Qbox" then
return exports.qbx_core:GetPlayer(src)
elseif Config.Framework == "ESX" then
return ESX.GetPlayerFromId(src)
end
return false
end
---@param src integer
---@return {name:string,label:string,grade:number} | false
function Framework.Server.GetPlayerJob(src)
local player = Framework.Server.GetPlayer(src)
if not player then return false end
if Config.Framework == "QBCore" or Config.Framework == "Qbox" then
if not player.PlayerData then return false end
return {
name = player.PlayerData.job.name,
label = player.PlayerData.job.label,
grade = player.PlayerData.job.grade?.level or 0,
}
elseif Config.Framework == "ESX" then
return {
name = player.job.name,
label = player.job.label,
grade = player.job.grade
}
end
return false
end
---@param src integer
function Framework.Server.GetPlayerInfo(src)
local player = Framework.Server.GetPlayer(src)
if not player then
return {
name = GetPlayerName(src) or "Admin"
}
end
if Config.Framework == "QBCore" or Config.Framework == "Qbox" then
return {
name = player.PlayerData.charinfo.firstname .. " " .. player.PlayerData.charinfo.lastname
}
elseif Config.Framework == "ESX" then
return {
name = player.getName()
}
end
end