Textdraw macht probleme!

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 Abend Breadfish,
    Genau ich schon wieder, da ich nicht soviel Erfahrung mit Textdraws besitze bräuchte ich hilfe.
    Normal Scripten Systeme etc kann ich aber Textdraws machen mir manchmal probleme.
    Mein Problem ist das sich das Textdraw nicht anklickbar lassen lässt.
    Hier mein Code:
    Textdraw10[playerid] = CreatePlayerTextDraw(playerid, 534.399902, 73.173385, "Login & Register");
    PlayerTextDrawLetterSize(playerid,Textdraw10[playerid], 0.342799, 2.092799);
    PlayerTextDrawTextSize(playerid,Textdraw10[playerid], 127.199981, 17.920001);
    PlayerTextDrawAlignment(playerid,Textdraw10[playerid], 1);
    PlayerTextDrawColor(playerid,Textdraw10[playerid], -1);
    PlayerTextDrawSetShadow(playerid,Textdraw10[playerid], 0);
    PlayerTextDrawSetOutline(playerid,Textdraw10[playerid], 1);
    PlayerTextDrawBackgroundColor(playerid,Textdraw10[playerid], 51);
    PlayerTextDrawFont(playerid,Textdraw10[playerid], 1);
    PlayerTextDrawSetProportional(playerid,Textdraw10[playerid], 1);
    PlayerTextDrawSetSelectable(playerid,Textdraw10[playerid], true);
    PlayerTextDrawShow(playerid,Textdraw10[playerid]);
    Ich weiß das man die anklickbar range mit TextSize verändern kann, nur bei mir verändert sich garnichts.


    SelectTextDraw(playerid,0xFF9600FF);


    public OnPlayerClickPlayerTextDraw(playerid, PlayerText:playertextid)
    {
    if(playertextid==Textdraw10[playerid])
    {
    if(GetPVarInt(playerid,"Eingeloggt") == 0)
    {
    if(mysql_CheckAccount(playerid) == 0)
    {
    SendClientMessage(playerid, 0xFFFFFFFF,"Willkommen Test Register");
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Registrieren","Registriere dich bitte Test","Registrieren","Abbrechen");
    }
    else if(mysql_CheckAccount(playerid) == 1)
    {
    SendClientMessage(playerid, 0xFFFFFFFF,"Willkommen Test Login");
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Login","Login dich bitte ein Test","Login","Abbrechen");
    }
    }


    }
    return 1;
    }


    Hoffe ihr könnt mir weiterhelfen..


    Mit freundlichen Grüßen
    IceboyTea

  • ka obs was bringt, aber mach mal die abfrage mit rein

    public OnPlayerClickPlayerTextDraw(playerid, PlayerText:playertextid)
    {
    if(_:clickedid != INVALID_TEXT_DRAW)
    {
    if(playertextid==Textdraw10[playerid])
    {
    if(GetPVarInt(playerid,"Eingeloggt") == 0)
    {
    if(mysql_CheckAccount(playerid) == 0)
    {
    SendClientMessage(playerid, 0xFFFFFFFF,"Willkommen Test Register");
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Registrieren","Registriere dich bitte Test","Registrieren","Abbrechen");
    }
    else if(mysql_CheckAccount(playerid) == 1)
    {
    SendClientMessage(playerid, 0xFFFFFFFF,"Willkommen Test Login");
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Login","Login dich bitte ein Test","Login","Abbrechen");
    }
    }


    }
    }
    return 1;
    }

  • Nun bekomm ich diese Fehler:
    C:\Users\Brandon\Desktop\Unbekannt-RP\gamemodes\Unbekannt.pwn(432) : error 025: function heading differs from prototype
    C:\Users\Brandon\Desktop\Unbekannt-RP\gamemodes\Unbekannt.pwn(436) : error 017: undefined symbol "playertextid"
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    2 Errors.

  • So jetz aber ^^

    public OnPlayerClickTextDraw(playerid, Text:clickedid)
    {
    if(_:clickedid != INVALID_TEXT_DRAW)
    {
    if(_:clickedid != INVALID_TEXT_DRAW)
    {
    if(playertextid==Textdraw10[playerid])
    {
    if(GetPVarInt(playerid,"Eingeloggt") == 0)
    {
    if(mysql_CheckAccount(playerid) == 0)
    {
    SendClientMessage(playerid, 0xFFFFFFFF,"Willkommen Test Register");
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Registrieren","Registriere dich bitte Test","Registrieren","Abbrechen");
    }
    else if(mysql_CheckAccount(playerid) == 1)
    {
    SendClientMessage(playerid, 0xFFFFFFFF,"Willkommen Test Login");
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Login","Login dich bitte ein Test","Login","Abbrechen");
    }
    }


    }
    }
    }
    }


  • ui sry hatte was vergessen, jetz aber^^

    public OnPlayerClickTextDraw(playerid, Text:clickedid)
    {
    if(_:clickedid != INVALID_TEXT_DRAW)
    {
    if(clickedid==Textdraw10[playerid])
    {
    if(GetPVarInt(playerid,"Eingeloggt") == 0)
    {
    if(mysql_CheckAccount(playerid) == 0)
    {
    SendClientMessage(playerid, 0xFFFFFFFF,"Willkommen Test Register");
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Registrieren","Registriere dich bitte Test","Registrieren","Abbrechen");
    }
    else if(mysql_CheckAccount(playerid) == 1)
    {
    SendClientMessage(playerid, 0xFFFFFFFF,"Willkommen Test Login");
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Login","Login dich bitte ein Test","Login","Abbrechen");
    }
    }


    }
    }
    }

  • Bekomme zwar nur ein Warning der hier:
    C:\Users\Brandon\Desktop\Unbekannt-RP\gamemodes\Unbekannt.pwn(437) : warning 213: tag mismatch
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    1 Warning.

    Aber Ingame kann ich immer noch nichts anklicken.
    :( Aber trozdem Danke Music4You


  • Ein PlayerTextDraw muss unter OnPlayerClickPlayerTextDraw.
    Was machst denn du? Daher der Tag mismatch und die Definition ist oben.

    seekrass approved
    4x vom Discord geflogen


    shoxinat0r 4
    dennismitzwein 2
    Trooper[Y] 2
    maddin 1
    Unbekannter Discord Kick 2
  • @Music4you
    Warning befindet sich hier
    if(clickedid==Textdraw10[playerid])
    Und ich hab mein playertextdraw unter OnPlayerConnect, aber wenn TheBlueFireKing meint unter OnPlayerClickblabla versuch ich das mal so.


    Ich meine was du oben mit anklicken das das so richtig ist wie es du gemacht hast.
    Der Warning kommt daher weil du ein PlayerTextDraw unter der TextDraw abfrage gemacht hast.


    //EDIT

    public OnPlayerClickPlayerTextDraw(playerid, PlayerText:playertextid)
    {
    if(playertextid==Textdraw10[playerid])
    {
    SendClientMessage(playerid, FARBE, "Test");
    if(GetPVarInt(playerid,"Eingeloggt") == 0)
    {
    if(mysql_CheckAccount(playerid) == 0)
    {
    SendClientMessage(playerid, 0xFFFFFFFF,"Willkommen Test Register");
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Registrieren","Registriere dich bitte Test","Registrieren","Abbrechen");
    }
    else if(mysql_CheckAccount(playerid) == 1)
    {
    SendClientMessage(playerid, 0xFFFFFFFF,"Willkommen Test Login");
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Login","Login dich bitte ein Test","Login","Abbrechen");
    }
    }


    }
    return 1;
    } Probier noch die SCM so zu machen uns sag ob sie ankommt.

    seekrass approved
    4x vom Discord geflogen


    shoxinat0r 4
    dennismitzwein 2
    Trooper[Y] 2
    maddin 1
    Unbekannter Discord Kick 2
  • so wenn das nich geht weiß ich auch nichg mehr

    Textdraw10[playerid] = TextDrawCreate(playerid, 534.399902, 73.173385, "Login & Register");


    Nein? Dann machst du ja ein Allgemeines TextDraw wenn dann 2 Spieler gleichzeitig sich Regestrieren dann Buggt das rum!
    Erst Denken dann schreiben.

    seekrass approved
    4x vom Discord geflogen


    shoxinat0r 4
    dennismitzwein 2
    Trooper[Y] 2
    maddin 1
    Unbekannter Discord Kick 2
  • Ich hab genug nachgedacht..
    Dann bring doch nen komplett richtigen lösungsweg wenn du es besser weißt..


    Ich will nicht sagen das ichs besser weiss. Was ich aber weiss ist das dass falsch war.
    Hatte das Problem auch schon selber mus nurnoch im Script die lösung suchen.

    seekrass approved
    4x vom Discord geflogen


    shoxinat0r 4
    dennismitzwein 2
    Trooper[Y] 2
    maddin 1
    Unbekannter Discord Kick 2
  • Ich will nicht sagen das ichs besser weiss. Was ich aber weiss ist das dass falsch war.
    Hatte das Problem auch schon selber mus nurnoch im Script die lösung suchen.


    ja sry wenns so rüber kam bin grad leicht gereizt..
    Okay anders würde mir nichts einfallen, aber ien versuch ist es immer wert^^