[HELP] Double job, event esx:setjob2

Hello,

I have a problem with my script when calling the function esx:setjob2 for my second job all my functions in es_extended seems to work but when i type for example “/setjob2 cartel 0” my markers and enteredmarkers doesn’t work and i don’t know why … let me know if you need any part of my code for debuging but i’m at it for more than 3 hours and can’t seems to find the problem :frowning:

Thanks

You need to configure your job script to get the second job not the first.
I think it should go like this:

RegisterNetEvent('esx:setJob')
AddEventHandler('esx:setJob', function(job)
  PlayerData.job = job
end)

Instead of that put

RegisterNetEvent('esx:setJob2')
AddEventHandler('esx:setJob2', function(job)
  PlayerData.job = job
end)

Hi @leaksy,

i’m using my function like this :

RegisterNetEvent('esx:setjob2')
AddEventHandler('esx:setjob2', function(job2)
	PlayerData.job2 = job2
end)

since my player data has that in my es_extended :

CreateExtendedPlayer(playerId, identifier, group, accounts, inventory, weight, job, job2, loadout, name, coords)

...

self.getJob2 = function()
	return self.job2
end

...

self.setJob2 = function(job2, grade2)
	grade2 = tostring(grade2)
	local lastJob2 = json.decode(json.encode(self.job2))

	if ESX.DoesJob2Exist(job2, grade2) then
		local job2Object, grade2Object = ESX.Jobs[job2], ESX.Jobs[job2].grades[grade2]

		self.job2.id    = job2Object.id
		self.job2.name  = job2Object.name
		self.job2.label = job2Object.label

		self.job2.grade        = tonumber(grade2)
		self.job2.grade_name   = grade2Object.name
		self.job2.grade_label  = grade2Object.label
		self.job2.grade_salary = grade2Object.salary

		if grade2Object.skin_male then
			self.job2.skin_male = json.decode(grade2Object.skin_male)
		else
			self.job2.skin_male = {}
		end

		if grade2Object.skin_female then
			self.job2.skin_female = json.decode(grade2Object.skin_female)
		else
			self.job2.skin_female = {}
		end

		TriggerEvent('esx:setJob2', self.source, self.job2, lastJob2)
		self.triggerEvent('esx:setJob2', self.job2)
	else
		print(('[es_extended] [^3WARNING^7] Ignoring invalid .setJob2() usage for "%s"'):format(self.identifier))
	end
end

Yeah, same here. But in your mafia job, you need to put for it to fetch job2 for it to work on mafiajobs.

What ? (20_char)