Textdraw lagnsam einblenden

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
  • Moin
    Wie die Überschrift schon sagt, suche ich eine möglichkeit einen Textdraw langsam einblenden zu lassen. Also nicht das er auf einmal da ist sondern ganz langsam. Geht das irgendwie, ohne das ich nen Timer machen muss und mehrere Textdraws erstellen muss?

  • Ohne Timer wirst du das nicht hinbekommen bzw ohne etwas Timerartiges zu nutzen ;)


    Einfach die Transparenz von dem TextDraw in langsamen schritten ändern, sind die letzen beiden "Hexadezimalzahlen" bei so einem Code: 0xFF4800FF


    FF = 15 höchste Zahl = höchste Sichtbarkeit
    00 = 0 niedrigste Zahl = niedrigste Sichtbarkeit


    Das System geht so:


    Code
    0|1|2|3|4|5|6|7|8|9|A|B|C|D|F


    mfg. :thumbup:

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S

  • Kaliber:
    Aber es würde doch ausreichen, wenn ich nen Timer erstelle die Wiederholung auf true stelle. Wenn ich dann nen Textdraw erstelle und den immer wieder erneut erstellen lasse, müsste der sich doch automatisch füllen. Also z.b. nen Schwarzen Bildschirm.

  • Mal eine frage Kaliber: würde es zu laggs kommen?
    Weil die Methode würde ich ebenfalls anwenden.


    Nein...wenn du es richtig machst, sicher nicht ^^


    Aber es würde doch ausreichen, wenn ich nen Timer erstelle


    Ja, natürlich das würde ausreichen :)


    Wenn ich dann nen Textdraw erstelle und den immer wieder erneut erstellen lasse, müsste der sich doch automatisch füllen. Also z.b. nen Schwarzen Bildschirm.


    Ja, das ist auch richtig, wenn du das richtig machst :)


    mfg. :rolleyes:

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S

  • Ich versuch mal was. Danke für den Denkanstoss :)


    Kaliber:
    Ich habs jetzt mal Testweise so gemacht.
    ocmd:test(playerid)
    {
    SetTimerEx("text1",1000,true,"i",playerid);
    }
    forward text1(playerid);
    public text1(playerid)
    {
    TextDrawShowForPlayer(playerid,Background1);
    }
    TextDrawColor(Background1, 0x00000021);
    Aber sobald der Timer Aktiv wird, wird der Textdraw komplett schwarz. :S

  • Aber sobald der Timer Aktiv wird, wird der Textdraw komplett schwarz.


    Stimmt, bei den TextDraws war das bissl anders bzw Schwarz ist schlecht, probiere mal eine andere Farbe als schwarz aus :D


    mfg. :thumbup:

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S

  • new var;


    ocmd:test(playerid)
    {
    SetTimerEx("text1",100,true,"i",playerid);
    TextDrawColor(Background1, 0x00000000);
    TextDrawShowForPlayer(playerid,Background1);
    }


    forward text1(playerid);
    public text1(playerid)
    {
    TextDrawColor(Background1,RGBAToHex(0,0,0,var));
    TextDrawHideForPlayer(playerid,Background1);
    TextDrawShowForPlayer(playerid,Background1);
    var+=2;
    }


    stock RGBAToHex(r, g, b, a) //By Betamaster
    {
    return (r<<24 | g<<16 | b<<8 | a);
    }


    probeir das mal :)