if GetResourceState("es_extended") ~= "started" then return end ESX = exports["es_extended"]:getSharedObject() PlayerData = {} PlayerJob = {} PlayerLoaded = false RegisterNetEvent('esx:playerLoaded', function(xPlayer) JobInfo = xPlayer.job UpdateJobInfo(JobInfo) PlayerLoaded = true end) RegisterNetEvent('esx:onPlayerLogout', function() table.wipe(PlayerData) table.wipe(PlayerJob) end) RegisterNetEvent('esx:setJob', function(JobInfo) UpdateJobInfo(JobInfo) end) AddEventHandler('onResourceStart', function(resourceName) if GetCurrentResourceName() ~= resourceName then return end PlayerData = ESX.GetPlayerData() UpdateJobInfo(PlayerData.job) PlayerLoaded = ESX.PlayerLoaded end) UpdateJobInfo = function(info) PlayerJob.grade = {} PlayerJob.name = info.name PlayerJob.grade.level = info.grade end