Anklickbare Textdraw Problem

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
  • Hi Leute ich habe ein weiteres problem immer wenn ich connecte soll man ein Textdraw anklicken aber man kann ihn nicht anklicken und wird sofor gespawnt ohne einloggen
    könnt ihr mir helfen ?


    login = TextDrawCreate(35.000000, 119.000000, "- Login/Register");
    TextDrawSetSelectable(login, true);
    TextDrawTextSize(login, 0.500000, 1.200000);
    credits = TextDrawCreate(35.000000, 156.000000, "- Credits");
    TextDrawSetSelectable(credits, true);
    TextDrawTextSize(credits, 0.500000, 1.200000);
    regeln = TextDrawCreate(35.000000, 137.000000, "- Regeln");
    TextDrawSetSelectable(regeln, true);
    TextDrawTextSize(regeln, 0.500000, 1.200000);
    quit = TextDrawCreate(35.000000, 174.000000, "- Server verlassen");
    TextDrawSetSelectable(quit, true);
    TextDrawTextSize(quit, 0.500000, 1.200000);


    public OnPlayerClickTextDraw(playerid, Text:clickedid)
    {
    if(_:clickedid != INVALID_TEXT_DRAW)
    {
    if(clickedid == login)
    {
    if(mysql_CheckAccount(playerid) == 0)//Wir überprüfen ob der Account Existiert, falls nicht Zeigen wir den Dialog zum Registrieren.
    {
    SendClientMessage(playerid, 0xFFFFFFFF,"________-> Willkommen auf auf Newtown Reallife <-________");
    SendClientMessage(playerid, 0xFFFFFFFF,"Dein Account wurde nicht gefunden, bitte Registriere dich!");
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Register","Bitte Gib ein Passwort an:","Register","Exit");
    }
    else if(mysql_CheckAccount(playerid) == 1)//Falls doch zeigen wir den Dialog zum Einloggen.
    {
    SendClientMessage(playerid, 0xFFFFFFFF,"________-> Willkommen auf auf Newtown Reallife <-________");
    SendClientMessage(playerid, 0xFFFFFFFF,"Dein Account wurde gefunden, bitte Log dich nun ein!");
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Login","Bitte gib dein Passwort ein:","Login","Abbrechen");
    }
    return 1;
    }
    else if(clickedid == credits)
    {
    //kommt gleich
    }
    else if(clickedid == regeln)
    {


    }
    else if(clickedid == quit)
    {


    }


    TextDrawHideForPlayer(playerid,login);
    TextDrawHideForPlayer(playerid,credits);
    TextDrawHideForPlayer(playerid,regeln);
    TextDrawHideForPlayer(playerid,quit);
    CancelSelectTextDraw(playerid);
    }
    return 1;
    }

  • if(_:clickedid != INVALID_TEXT_DRAW)
    Wieso _:?


    und


    TextDrawTextSize(quit, 55, 10); //War vorher zu klein probiere bischen aus 55 = Länge und 10 = Höhe musst rum probieren

    [tabmenu][tab='Angebote','http://cdn3.iconfinder.com/data/icons/glyph/227/Tag-48.png']

    + Die Preise liegen bei 5-100+€ Ablauf:
    + Entweder ihr addet mich in Skype (PN vorher Schreiben) oder Ihr schreibt eine PN an mich (Betreff - Euer Wunsch z.B. Filterscript)
    + So nun schreibt ihr mir was ihr alles in dem Script haben wollt ich werd euch dann sagen ob ich es hinbekomme.
    + Dann machen wir ein groben Preis aus. Ich werde das Script erstellen und es zusammen mit dem Kunden Testen.



    [tab='Kontakt','http://cdn3.iconfinder.com/data/icons/line/36/person_add-48.png']
    edmix23

    + Bitte beim Adden angeben wer ihr seit oder per PN bescheid sagen!
    [tab='Zahlungs Methoden','https://cdn3.iconfinder.com/data/icons/line/36/check_money-32.png']
    +Paypal!
    +Direkte Banküberweisung

  • GANZ GROßER HINWEIS AN ALLE MIT DIESEM PROBLEM

    Textdraws, die anklickbar sein sollen, funktionieren nur einwandfrei,
    wenn man eine Textdraw Box verwendet, denn nur diese in wirklich anklickbar.

    Egal ob die Box sichtbar oder unsichtbar ist, aber sie muss vorher von euch
    erstellt werden, denn nur diese Box ist für euren Cursor anklickbar.

    Dabei spielt es keine Rolle, ob die Box nach Erstellung und Einrichtung dieser wieder entfernt wird.
    Sie muss nur im Script deklariert sein, also die Größe der Box ist damit gemeint.


  • Kannst ja gleich noch hinzufügen das es auch auf die größe ankommt was auch die meisten vergessen
    und sollte diese negative sein oder eine achse auf 0 so ist das textdraw auch nicht anklickbar

  • Ja, das war mir klar, dass diese Frage kommt.

    Mein persönlicher Tipp:

    Soll die Box viel größer werden wie der Text selbst,
    empfehlen sich zwei Ebenen. Eine Box-Ebene und die
    Ebene ohne Box, nur mit Text.

    Dass in der Box-Ebene kein Text angezeigt wird, fügst du

    einfach einen Zeilenumbruch, sprich

    ˜n

    ˜ ein.




    Dann kannst du die Box einfach über die TEXTGRÖßE in Y-Richtung vergrößern.


  • Ja, das ist der einfachste Weg, eine Box in Y-Richtung zu vergrößern.

    (1) Textdraw erstellen
    (2) Box sichtbar machen (aktivieren)
    (3) neuen Text eingeben - ~n~
    (4) Schriftgröße verstellen
    (5) Box an die richtige Position verschieben

    Einfach, schnell und wirkungsvoll.


  • login = TextDrawCreate(35.000000, 119.000000, "- Login/Register");
    TextDrawSetSelectable(login, true);
    TextDrawTextSize(login, 120.500000, 20.200000);
    credits = TextDrawCreate(35.000000, 156.000000, "- Credits");
    TextDrawSetSelectable(credits, true);
    TextDrawTextSize(credits, 120.500000, 20.200000);
    regeln = TextDrawCreate(35.000000, 137.000000, "- Regeln");
    TextDrawSetSelectable(regeln, true);
    TextDrawTextSize(regeln, 120.500000, 20.200000);
    quit = TextDrawCreate(35.000000, 174.000000, "- Server verlassen");
    TextDrawSetSelectable(quit, true);
    TextDrawTextSize(quit, 120.500000, 20.200000);