Ich empfehle dir das Textdraw nicht mit einem Timer zu Updaten sondern immer wenn er sich einloggt oder
sein Job kündigt bzw einen neuen Job annimmt.
unter OnGameModeInit definierst du wie vorher dein Textdraw, jedoch diesmal mit einer Schleife da dein
Textdraw Spielerbezogen sein muss.
Textdraw1[playerid] = TextDrawCreate(497.000000, 388.000000, ""); //Das kann ruhig leer bleiben
TextDrawBackgroundColor(Textdraw1[playerid], 255);
TextDrawFont(Textdraw1[playerid], 1);
TextDrawLetterSize(Textdraw1[playerid], 0.390000, 1.000000);
TextDrawColor(Textdraw1[playerid], 65535);
TextDrawSetOutline(Textdraw1[playerid], 0);
TextDrawSetProportional(Textdraw1[playerid], 1);
TextDrawSetShadow(Textdraw1[playerid], 1);
unter OnPlayerSpawn aktualisiert du anschließend das Textdraw:
new jtext[20];
if(Spieler[playerid][Job] == 0)
{
new TextString[20];
format(TextString, sizeof(TextString), "Du bist derzeit Arbeitslos");
TextDrawSetString(Textdraw1[playerid], TextString);
TextDrawShowForPlayer(i, Tacho[playerid]);
}
else
{
if(Spieler[playerid][Job] == 1) { jtext = Job1)
else if(Spieler[playerid][Job] == 2) { jtext = Job2)
new TextString[20];
format(TextString, sizeof(TextString), "Du arbeitest derzeit als %s", jtext); //Wie das Textdraw heißen soll
TextDrawSetString(Textdraw1[playerid], TextString);
TextDrawShowForPlayer(i, Tacho[playerid]);
}
Das selbe machst du da wo er sein Job Kündigt bzw einen neuen Job annimmt.
Zu deinem Fehler: Das Spieler must du natürlich an dein Account System anpassen.