3DTextLabel nur sehr kurz sichtbar

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Schönen guten Abend zusammen,
    ich habe seit ca. zwei Stunden ein Problem, welches bei mir zuvor noch nie aufgetreten ist und wofür ich absolut keine Lösung finde.
    Es handelt sich um ein 3DTextLabel, welches ingame erstellt wird, jedoch nach ca. 1-2 Sekunden wieder verschwindet.


    Hier der Code:

    new Float:x, Float:y, Float:z;
    GetPlayerPos(playerid,x,y,z);
    Create3DTextLabel("/atm",COLOR_LIGHTBLUE,x,y,z,30.0,0,0);


    Dem Label wird absichtlich keine Variable zugewiesen, da es im späteren Verlauf nicht mehr angesprochen werden muss. Auch die virtuelle Welt habe ich bereits auf -1 und andere Werte gestellt. Sowohl der Spieler, als auch das Label befinden sich in Welt 0.
    Nach Erstellung des Labels bleibt es 1-2 Sekunden sichtbar und verschwindet dann. Woran kann das liegen? Ich habe zur Zeit nur dieses eine 3DTextLabel in meinem Script.


    Ich hoffe ihr könnt mir da helfen.


    MfG,
    DrMurphy


    //Lösung des Problems:
    Nach langem hin und her, hab ich einfach mal versucht, die 3DTextLabel per Streamer anzeigen zu lassen. Dies hat dann auch mit diesem Stream geklappt: http://forum.sa-mp.com/showthr…highlight=streamer+plugin

  • In welchem Zusammenhang erstellst du es ? Verschindet es nur bei dir oder auch bei anderen ? Bist du auch in der gleichen v. Welt ?

  • In welchem Zusammenhang erstellst du es ? Verschindet es nur bei dir oder auch bei anderen ? Bist du auch in der gleichen v. Welt ?


    Das 3DTextLabel gehört zu einem dynamischen ATM System und ist für alle Spieler nur für diese 1-2 Sekunden sichtbar.


    Hier noch der Code vom Zusammenhang:

    //Command zum Erstellen eines ATMs
    if(strcmp("/createATM",cmdtext,true,15) == 0)
    {
    if(isPlayerRang(playerid, 10))
    {
    new Float:x, Float:y, Float:z;
    GetPlayerPos(playerid,x,y,z);
    atmI[AnzahlATM][PosX] = x;
    atmI[AnzahlATM][PosY] = y;
    atmI[AnzahlATM][PosZ] = z;
    new query[128];
    format(query,sizeof(query),"INSERT INTO `ATMs` (`PosX`,`PosY`,`PosZ`) VALUES ('%f','%f','%f')",atmI[AnzahlATM][PosX],atmI[AnzahlATM][PosY],atmI[AnzahlATM][PosZ]);
    mysql_query(dbhandle,query,false);
    Create3DTextLabel("/atm",COLOR_LIGHTBLUE,x,y,z,30.0,0,0);
    SendClientMessage(playerid,COLOR_GREEN,"ATM erfolgreich erstellt!");
    AnzahlATM ++;
    return 1;
    }
    else
    {
    return SendClientMessage(playerid,COLOR_RED,"Du hast nicht die benötigten Rechte!");
    }
    }


    //ATMs laden (Wird beim Start des Servers aufgerufen)
    stock loadATM()
    {
    for(new i = 1; i < MAX_ATM; i++)
    {
    new query[128];
    format(query,sizeof(query),"SELECT * FROM `ATMs` WHERE `ID`='%i'",i);
    mysql_query(dbhandle,query,true);
    new rows,fields;
    cache_get_data(rows,fields,dbhandle);
    if(rows == 1)
    {
    atmI[i][PosX] = cache_get_field_content_float(0,"PosX",dbhandle);
    atmI[i][PosY] = cache_get_field_content_float(0,"PosY",dbhandle);
    atmI[i][PosZ] = cache_get_field_content_float(0,"PosZ",dbhandle);
    Create3DTextLabel("/atm",COLOR_LIGHTBLUE,atmI[i][PosX],atmI[i][PosY],atmI[i][PosZ],30,0,0);
    AnzahlATM ++;
    }
    }
    return 1;
    }

  • Wie sieht es mit den anderen aus, wenn du mehrere erstellst und diese laden lässt ?