In any client code – like I said before in the other topic, that code is run on every single client and is unique to that client. It’s just like copy/pasting the client file and running it separately on every client.

So if you have 2 players, they both run the same code (but in like their own “world”). However, if you set the variable on Player 1, it will only apply to Player 1, not player 2.

So at the top of your client script, initialize the variable(s) with local job = nil. Somewhere in the script, you can have it eventually set the job. Now that variable is specific to THAT client and is saved only on THAT client.

The only way to send this variable on the server is to send it with a TriggerServerEvent with the parameters. You would then have an event handler on the server to set that variable for the server, if you needed to. Since the server would handle variables for everybody (again, only if you needed/wanted), you would want to do the job[source] = ... to specify WHICH client.

I’m at work right now, so I can’t really provide examples of any code. I can grab some examples when I get home in a few hours or even make a quick video to try and explain it visually, too. I know its a pain in the ass to understand. I had such a hard time understanding it at first, too.

So… for clients and the server to communicate you need to use events. A server event would look like. Each server event also has a hidden parameter called ‘source’. You can call this variable within the event. It lets you know what client triggered the event. I believe if source == -1, then the server triggered it. RegisterServerEvent('MyServerEvent') AddEventHandler("MyServerEvent", function(arg1, arg2) ... code to run ... end)
A client event would look likeRegisterNetEvent("MyClientEvent") AddEventHandler("MyClientEvent", function(arg1, arg2) ... code to run ... end)

Client code can trigger other client events on the SAME client only. Servers can do the same thing for triggering events on the server.

.
Client-self Trigger OR Server-self TriggerTriggerEvent('MyClientEvent', arg1, arg2)

.
Client triggering an event on the serverTriggerServerEvent('MyServerEvent', arg1, arg2)

.
Server triggering an event on a clientTriggerClientEvent('MyClientEvent', who, arg1, arg2)

.
In order for a server to set a variable on the client, you can trigger an event that just sets the variable to an argument. Let me know if you need any more clarification.

Best regards,
LordShivering