From ffc67e03475cc45748b6421a80be56ddda2769f2 Mon Sep 17 00:00:00 2001 From: Zerio Date: Sun, 26 May 2024 00:21:29 +0200 Subject: [PATCH] fix: validate job info upon player login --- server/player.lua | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/server/player.lua b/server/player.lua index a8963e0..4f502c0 100644 --- a/server/player.lua +++ b/server/player.lua @@ -100,6 +100,24 @@ function QBCore.Player.CheckPlayerData(source, PlayerData) PlayerData.name = GetPlayerName(source) end + -- todo, what should happen if the job doesnt exist? + if PlayerData.job and PlayerData.job.name ~= nil and PlayerData.job.grade and PlayerData.job.grade.level ~= nil then + local jobInfo = QBCore.Shared.Jobs[PlayerData.job.name] + + if jobInfo then + local jobGradeInfo = jobInfo.grades[tostring(PlayerData.job.grade.level)] + if jobGradeInfo then + PlayerData.job.label = jobInfo.label + PlayerData.job.grade.name = jobGradeInfo.name + PlayerData.job.payment = jobGradeInfo.payment + PlayerData.job.grade.isboss = jobGradeInfo.isboss or false + PlayerData.job.isboss = jobGradeInfo.isboss or false + end + end + end + + -- todo, fix same thing as above, but for the gang data + applyDefaults(PlayerData, QBCore.Config.Player.PlayerDefaults) if GetResourceState('qb-inventory') ~= 'missing' then