Hallo Leute,
ich habe ein kleines Problem mit einem 3DTextLabel in einem Timer.
Und zwar funktioniert eigentlich alles wie es gewünscht ist, außer dass scheinbar
unendlich viele 3DTextLabel erstellt werden und das Spiel dadurch nach einiger Zeit laggt.
Daher lasse die 3DTextLabel immer im Timer zerstören und direkt danach wieder erstellen,
das Problem was dabei allerdings entsteht, ist dass man das auch InGame sieht.
Die 3DTextLabel "Blinken" quasi auf und das stört ziehmlich.
Nun frage ich mich ob es nicht eine andere möglichkeit gibt um zu verhindern, dass unendlich viele 3DTextLabel erstellt werden.
Falls es von nöten ist, hier die Zeilen:
forward SpielerUpdate(i); public SpielerUpdate(i)
{
new playerid=i;
for(new op = 0; op < MAX_PLAYERS; op++)
if(IsPlayerConnected(playerid))
{
if(undercover[playerid] == 1)
{
new string[128];
if(SpielerInfo[op][pAdmin] <= 1)
{
ShowPlayerNameTagForPlayer(op, playerid, 0);
format(string, sizeof(string), "Agent: %d\nFBI",SpielerInfo[playerid][pAgentID]);
DeletePlayer3DTextLabel(playerid,agentid);
agentid = CreatePlayer3DTextLabel(op,string,GRAU,0,0,0,30.0,playerid,INVALID_VEHICLE_ID);
}
else if(SpielerInfo[op][pAdmin] >= 2)
{
ShowPlayerNameTagForPlayer(op, playerid, 1);
format(string, sizeof(string), "UNDERCOVER\n\nAgent der\nFBI");
DeletePlayer3DTextLabel(playerid,agentid);
agentid = CreatePlayer3DTextLabel(op,string,GRAU,0,0,0,30.0,playerid,INVALID_VEHICLE_ID);
}
}
else if(undercover[playerid] == 0)
{
ShowPlayerNameTagForPlayer(op, playerid, 1);
DeletePlayer3DTextLabel(playerid,agentid);
}
}
return 1;
}
Es wäre extrem nett, wenn mir jemand bei diesem Problem helfen würde.
Gruß
AlphaGen!