Scripts/resources/[il]/illenium-appearance/client/framework/qb/main.lua

108 lines
2.6 KiB
Lua
Raw Normal View History

2024-12-29 19:49:12 +00:00
if not Framework.QBCore() then return end
local client = client
local QBCore = exports["qb-core"]:GetCoreObject()
local PlayerData = QBCore.Functions.GetPlayerData()
local function getRankInputValues(rankList)
local rankValues = {}
for k, v in pairs(rankList) do
rankValues[#rankValues + 1] = {
label = v.name,
value = k
}
end
return rankValues
end
local function setClientParams()
client.job = PlayerData.job
client.gang = PlayerData.gang
client.citizenid = PlayerData.citizenid
end
function Framework.GetPlayerGender()
if PlayerData.charinfo.gender == 1 then
return "Female"
end
return "Male"
end
function Framework.UpdatePlayerData()
PlayerData = QBCore.Functions.GetPlayerData()
setClientParams()
end
function Framework.HasTracker()
return QBCore.Functions.GetPlayerData().metadata["tracker"]
end
function Framework.CheckPlayerMeta()
return PlayerData.metadata["isdead"] or PlayerData.metadata["inlaststand"] or PlayerData.metadata["ishandcuffed"]
end
function Framework.IsPlayerAllowed(citizenid)
return citizenid == PlayerData.citizenid
end
function Framework.GetRankInputValues(type)
local grades = QBCore.Shared.Jobs[client.job.name].grades
if type == "gang" then
grades = QBCore.Shared.Gangs[client.gang.name].grades
end
return getRankInputValues(grades)
end
function Framework.GetJobGrade()
return client.job.grade.level
end
function Framework.GetGangGrade()
return client.gang.grade.level
end
RegisterNetEvent("QBCore:Client:OnJobUpdate", function(JobInfo)
PlayerData.job = JobInfo
client.job = JobInfo
ResetBlips()
end)
RegisterNetEvent("QBCore:Client:OnGangUpdate", function(GangInfo)
PlayerData.gang = GangInfo
client.gang = GangInfo
ResetBlips()
end)
RegisterNetEvent("QBCore:Client:SetDuty", function(duty)
if PlayerData and PlayerData.job then
PlayerData.job.onduty = duty
client.job = PlayerData.job
end
end)
RegisterNetEvent("QBCore:Client:OnPlayerLoaded", function()
InitAppearance()
end)
RegisterNetEvent("qb-clothes:client:CreateFirstCharacter", function()
QBCore.Functions.GetPlayerData(function(pd)
PlayerData = pd
setClientParams()
InitializeCharacter(Framework.GetGender(true))
end)
end)
function Framework.CachePed()
return nil
end
function Framework.RestorePlayerArmour()
Framework.UpdatePlayerData()
if PlayerData and PlayerData.metadata then
Wait(1000)
SetPedArmour(cache.ped, PlayerData.metadata["armor"])
end
end