Fragen zu Textdraws

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
  • Erklärung:
    1 => Du gibst auf der Seite den Textdraw-Namen ein, den du haben möchtest.
    2 => Du gibst den gewünschten String ein, der im Bildschirm stehen soll.
    3 => Du suchst deine Schriftart aus.
    4 => Die Farbe auswählen
    5 => Die Schriftgröße auswählen.
    6 => Danach auf "Preview" klicken, und dann kannst du im "Bild mit dem Schiff" irgendwo hinklicken, und schon wird dein TextDraw mit deinem gewünschten String, deiner Farbe, Schriftart & deiner Größe dort angezeigt.
    7 => Du kannst noch die Outline & und den Shadow an / ausschalten.
    8 => Wenn du möchtest, kannst du auch noch eine Box hinzufügen.
    9 => Klicke auf Generate Code um unten den Code zu generieren und erhalten.
    10 => Fertig - :thumbup:


    Hoffe man konnte es verstehen, wie man es macht. Ist zwar kurz und knapp gehalten, aber man sollte es auch mit logischen Denken hinbekommen.

  • Bei allem Respekt: Dann solltest du dir wirklich überlegen ob du einen Server aufmachen willst, wenn du nicht mal ein Texdraw erstellen kannst.


    Hier:


    new Text:InfoText;
    InfoText = TextDrawCreate( 320.0000, 200.0000, "Verbindung wird hergestellt.~n~Bitte warten...");
    TextDrawColor(InfoText, 0xFFFFFFFF);
    TextDrawLetterSize(InfoText, 0.3000, 1.0000);
    TextDrawAlignment(InfoText, 2);
    TextDrawSetShadow(InfoText, 0);


    //OnPlayerConnect:
    TextDrawShowForPlayer(playerid, InfoText);



    new Text:BlackScreen;
    BlackScreen = TextDrawCreate( 0.0000, 0.0000, "~n~");
    TextDrawColor(BlackScreen, 0x000000FF);
    TextDrawLetterSize(BlackScreen, 1.0000, 53.0000);
    TextDrawUseBox(BlackScreen, 1);
    TextDrawBoxColor(BlackScreen, 0x000000FF);
    TextDrawFont(BlackScreen, 0);
    TextDrawSetShadow(BlackScreen, 0);
    TextDrawSetProportional(BlackScreen, 0);


    //OnPlayerConnect:
    TextDrawShowForPlayer(playerid, BlackScreen);



    Mit meinem eigenen Editor in 2 Minuten erstellt, wenn überhaupt.

  • Wisst ihr, jeder Scripter hat mal klein angefangen. :)


    Einen Editor zu bedienen hat aber nichts mit scripten zu tun. ;)


    Du könntest etwas Eigeninitiative zeigen und nicht sofort sagen, dass du es nicht kannst. Beim Scripten kann man dir gerne helfen, aber einen Editor zu bedienen, das solltest du schon selbst können. Versuche es einfach mal.

  • Hey wollte fragen wie ich das genau anstelle mit den Timer.. ich habe das in mehreren Methoden versucht leider erfolglos..


    Ganz oben im Script:
    //textdraws
    new Text:InfoText;
    new Text:BlackScreen;


    OnPlayerConnect:
    SetTimerEx("message",10000,0,"i",playerid);
    TextDrawShowForPlayer(playerid,BlackScreen);


    OnGameModeInit
    InfoText = TextDrawCreate( 320.0000, 200.0000, "Verbindung wird hergestellt.~n~Bitte warten...");
    TextDrawColor(InfoText, 0xFFFFFFFF);
    TextDrawLetterSize(InfoText, 0.3000, 1.0000);
    TextDrawAlignment(InfoText, 2);
    TextDrawSetShadow(InfoText, 0);


    BlackScreen = TextDrawCreate( 0.0000, 0.0000, "~n~");
    TextDrawColor(BlackScreen, 0x000000FF);
    TextDrawLetterSize(BlackScreen, 1.0000, 53.0000);
    TextDrawUseBox(BlackScreen, 1);
    TextDrawBoxColor(BlackScreen, 0x000000FF);
    TextDrawFont(BlackScreen, 0);
    TextDrawSetShadow(BlackScreen, 0);
    TextDrawSetProportional(BlackScreen, 0);


    Ganz unten:
    forward message(playerid);
    public message(playerid)
    {
    TextDrawHideForPlayer(playerid,BlackScreen);
    TextDrawShowForPlayer(playerid,BlackScreen);


    }


    Bei mir funktioniert der Timer nicht d.h es sollte eig so funktionieren ich möchte joinen auf den Server dann kommt BlackScreen 5 Sekunden dann kommt mein Login Fenster aber das funktioniert nicht ganz da es immer Schwarz bleibt..
    Würde mich um Hilfe freuen.

  • TextDrawHideForPlayer(playerid,BlackScreen);
    TextDrawShowForPlayer(playerid,BlackScreen);


    Du hidest den Textdraw und lässt ihn wieder anzeigen, kein Wunder :P


    Mach es so:


    TextDrawHideForPlayer(playerid,BlackScreen);
    TextDrawHideForPlayer(playerid,InfoText);


    /edit
    Mach das mit dem Timer so:


    new LoginTimer[MAX_PLAYERS];


    LoginTimer[playerid] = SetTimerEx("message",10000,0,"i",playerid);


    Bei OnPlayerConnect:


    LoginTimer[playerid] = -1;

  • Fernando.: Danke für deine Hilfe, aber das funktioniert noch immer nicht.
    new LoginTimer[MAX_PLAYERS];
    new Text:BlackScreen; Ganz Oben


    TextDrawShowForPlayer(playerid, BlackScreen);
    LoginTimer[playerid] = -1; Bei OnPlayerConnect


    BlackScreen = TextDrawCreate( 0.0000, 0.0000, "~n~");
    TextDrawColor(BlackScreen, 0x000000FF);
    TextDrawLetterSize(BlackScreen, 1.0000, 53.0000);
    TextDrawUseBox(BlackScreen, 1);
    TextDrawBoxColor(BlackScreen, 0x000000FF);
    TextDrawFont(BlackScreen, 0);
    TextDrawSetShadow(BlackScreen, 0);
    TextDrawSetProportional(BlackScreen, 0); bei OnGameModeInit


    forward message(playerid);
    public message(playerid)
    {
    TextDrawHideForPlayer(playerid,BlackScreen);
    TextDrawHideForPlayer(playerid,InfoText);


    } ganz unten

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Fernando.: Sinn? Du kannst die LoginTimer - Variable auch weg lassen, ist genau der gleiche Effekt, wie der...
    Der Timer wird ja automatisch gestopt, also wozu unnötig Ressourcen für unnötige Variablen verschwenden?


    #Handy


    Nehmen wir an das wär ein Tutorial, ein Spieler loggt sich mitten im Tutorial aus und ein anderer Spieler mit der gleichen Playerid fängt dann dort an, wo der vorherige Offline gegangen ist(zwar bisschen weiter, aber egal).
    In dem Fall ist es zwar nur ein einfaches Login Textdraw, doch der Timer läuft hier 10sec, ich gehe nach 2sec Offline und ein anderer kommt Online(gleiche Playerid) und sieht den Textdraw weniger als 10 Sekunden.
    Sehe hier nichts unnötiges 8|