Deine Textdraw ist Gloabel (Bei jedem steht das gleiche).
Nutze die Funktion TextDrawSetString
Mach es so
new
dasdas[MAX_PLAYERS],
bool:Show[MAX_PLAYERS];
public OnPlayerConnect(playerid)
{
dasdas[playerid] = TextDrawCreate(520.000 ,310.000,"Level");
TextDrawFont(dasdas[playerid] , 2);
TextDrawLetterSize(dasdas[playerid] , 0.4, 1.0);
TextDrawColor(dasdas[playerid] , -1);
TextDrawSetOutline(dasdas[playerid] , true);
TextDrawSetProportional(dasdas[playerid] , true);
TextDrawSetShadow(dasdas[playerid] , 1);
return 1;
}
Hier wird das TextDraw erstellt nur für diesen Spieler
public OnPlayerSpawn(playerid)
{
if(!Show[playerid]{
new string[10];
Show[playerid] = true;
TextDrawShowForPlayer(playerid, dasdas[playerid]);
format(string,10,"%d",GetPlayerScore(playerid));
TextDrawSetString(dasdas[playerid],string);
}
return 1;
}
Eine Abfrage ob dem Spieler das TextDraw Schon gezeigt wird falls nicht
wird es ihm gezeigt und der String bzw. der Text auf sein Level gesetzt
public OnPlayerDeath(playerid, killerid, reason)
{
SetPlayerScore(killerid,GetPlayerScore(killerid)+1);
if(Show[killerid])
{
new string[10];
format(string,10,"%d",GetPlayerScore(killerid));
TextDrawSetString(dasdas[killerid],string);
}
return 1;
}
Hier wird sein Level +1 gerechnet dann wird abgefragt ob das TextDraw ihm angezeigt wird falls ja
wird der string auf sein jetziges Level gesetzt