Hi Leute,
ich habe einen Textdraw. Der String dessen enthält eine Variable, die sich (vorallem bei normalen Serverbetrieb ist das extrem) ständig ändert. Der Textdraw aktualisiert sich daraufhin und gibt den Textdraw wieder neu aus (wie gewollt) mit der neuen Zahl. Jedoch, ist der alte String immernoch vorhanden, auf deutsch: Die Zahlen überlappen sich. Der veränderte String legt sich automatisch auf den alten, sodass die Zahl irgendwann nichtmehr lesbar ist weil sämtlichste Zahlen darin vermischt sind.
Ich habe das ganze mal in einen Filterscript kopiert(habe im Filterscript nicht alles definiert, es existieren keine Errors)
#include <a_samp>
#define FILTERSCRIPT
#if defined FILTERSCRIPT
#define COLOR_RED 0xFF0000AA
forward UpdateGSW();
public OnFilterScriptInit()
{
print("\n--------------------------------------");
print(" Bla");
print("--------------------------------------\n");
SetTimer("UpdateGSW", 1500, 1);
return 1;
}
public OnFilterScriptExit()
{
return 1;
}
#endif
public UpdateGSW(playerid)
{
if(gTeam[playerid] == TEAM_GS)
{
new str[128];
format(str, sizeof(str), "Waffen:%d",TestVar);
TextDrawSetString(TestDraw[i],str);
}
return 1;
}
public OnPlayerSpawn(playerid)
{
if(gTeam[playerid] == TEAM_GS)
{
format(TestDrawB, sizeof(TestDrawB),"Waffen:%d",TestVar);
TestDraw[i] = TextDrawCreate(270.0, 380.0, TestDrawB);
TextDrawLetterSize(TestDraw[i], 0.5, 2.5);
TextDrawShowForPlayer(playerid,TestDraw[i]);
}
//Zwischenzeitig kommt noch weiterer Code
if (gTeam[playerid] == TEAM_GS)
{
TestVar--;
TextDrawSetString(TestDraw[i],TestDrawB);
GivePlayerWeapon(playerid,8,1);
GivePlayerWeapon(playerid,16,5);
GivePlayerWeapon(playerid,24,120);
GivePlayerWeapon(playerid,27,150);
GivePlayerWeapon(playerid,28,250);
GivePlayerWeapon(playerid,31,500);
return 1;
}
return 1;
}
Das Filterscript enthält errors weil es nicht richtig definiert wurde alles, aber der code ansich ist richtig. Der Textdraw soll alle 1,5 Sekunden aktualisiert werden (UpdateGSW).
Weiterhin tritt manchmal auch das Problem auf, das ein anderer Spieler des Teams nicht die aktuelle Variable sieht (nur nach dem log-in) und somit wird das nicht mehr richtig aktualisiert (Nach dem Bugtest eines Kollegens, falls ihr da eine Lösung findet bitte mitteilen)
Danke im Vorrausetzung.