Beiträge von Jameso

    Was mir gerade auffällt ist, dass die letzte Zahl also die 9 nicht funktioniert, wenn ich diese anklicke.
    Das Array ist 10 groß heißt, dass es theoretisch klappen sollte.


    Die Variable pInfo[playerid][pBankcode] ist immer gleich der angeklickten Zahl. Allerdings immer nur gleich der ersten angeklickten Zahl. Drücke ich zuerst die 1 ist es auch die 1 dann z.B die 3 dann ist die Zahl immer noch eine 1.


    Nach den 4 Versuchen wird der Code wieder auf 0 gesetzt.



    Muss in Zeile 1 eine 10 stehen um mein erst genannten Problem zu lösen?

    Zitat von Kaliber

    Nein auf 4..für 4 Slots

    Ich entschuldige mich für diese Dumme Frage. :D


    Dem Log geht es soweit ganz gut, er zeigt keine Fehler.
    Allerdings ist der Code 0


    C
    pBankcode[MAX_CODE_LEN]


    achso, ich habe das falsch verstanden, mit pInfo[playerid][savecode] wollte ich das zwischenspeichern, brauch ich aber ja nicht und kann dann sofort pInfo[playerid][pBankcode] abspeichern.



    Habe ich was falsch gemacht? Ich kriege http://prntscr.com/nh5s88


    Max_Code_Len ist auf 3 definiert. Heißt es, dass es 4 Zahlen sind oder 3? Weil in Zeile 10 ja auch MAX_CODE_LEN-1 abfragt?

    Dankesehr der Herr,


    Mein Aktueller Code ist die ganze Zeit 0 warum? Da stimmt was mit Zeile 10. glaube ich nicht

    Also jetzt habe ich Warnings und das Textdraw wird nicht removed


    http://prntscr.com/nggmmi
    Was hat dies zu sagen? Soll ich für das verstecken der Textdraws es so lassen und für die anderen Funktionen OnPlayerClickPlayerTextDraw benutzen?


    Die Diskussion hatte ich schon mit 2 anderen schon darüber :D

    C
    public OnPlayerClickPlayerTextDraw(playerid, PlayerText:playertextid)
    {
        if(PlayerText:playertextid == Text:INVALID_TEXT_DRAW)
    	{
    		PlayerTextDrawHide(playerid, JamKeyNum[7][playerid]);


    Hier ist ein Tag mismatch in der if Abfrage


    genauso hier


    C
    if(PlayerText:playertextid == Text:JamKeyNum[i][playerid])

    Alles richtig deklariert.
    Ja es sind PlayerTextDraws :D


    C
    public OnPlayerClickTextDraw(playerid, Text:clickedid)
    {
        if(clickedid == Text:INVALID_TEXT_DRAW)
    	{
    		PlayerTextDrawHide(playerid, JamKeyNum[0][playerid]);
      		return 1;
        }

    Das funktioniert ja vorher.

    C
    public OnPlayerClickTextDraw(playerid, Text:clickedid)
    {

    Was habe ich falsch gemacht, dass er mir nichts anzeigt? Eventuell Zeile 8. ? Oder sollte ich das lieber so machen, dass ich die Code Variable benutzte und sie am Ende der richtigen hinzufüge also die Zahlen.

    Danke dir, solche Idiotenfragen... ^^



    Was mache ich falsch? Wenn ich auf das Textdraw clicke passiert nichts.


    Muss die Schleife 1 returnen oder jede einzelne if(clickedid Abfrage und oder beides?

    Upsi, habe vergessen zu sagen das ich irgendwie 9 Textdraws habe KeyPad[9][playerid] und ich will abfragen ob dieses angeklickte Textdraw eines von denen ist.
    Ich habe versucht abzufahren ob clickedid gleich KeyPad[][playerid] ist aber da kriege ich ein Error weil ich keine Angabe gemacht habe in den ersten Klammern.



    Zitat von XonarZ

    Das mit dem Array hatte ich gesagt nicht Andosius

    Die Sache mit dem Array bezog sich auf die Textdraws, mein Fehler hab vergessen es dazu zu schreiben.

    Ja das mit dem Array hatte ich auch gedacht, das ganze so zu machen wie es der liebe @Andosius vorgeschlagen hat.
    Dann kann ich sofort den String pInfo[playerid][savecode] zuordnen.


    Um unnötige if Abfragen zu vermeiden möchte ich abfragen ob das Textdraw eines von den ganzen ist
    KeyPad[][playerid] ohne einen Array anzugeben bekomme ich ein Error

    Hey!
    Ich habe ein Numpad mit Textdraws erstellt und will das der Spieler einen Code für sich erstellt.
    Klickt er auf die 3 ist es ja die Zahl 3, klickt er auf die 2 ist es die Zahl 2 würde ich die Zahlen jeweilig + rechnen käme ja was ganz anderes raus
    Aber ich kann am ende nicht alle Zahlen addieren, gibt es da irgendwelche Möglichkeiten? Ich hab die Variable pInfo[playerid][savecode]
    Von den kleinen Scriptingfragen hierher verschoben

    C
    PlayerTextDrawShow(playerid, X);
    C
    X = CreatePlayerTextDraw(playerid, 66.000000, 47.000000, "");
    C
    public OnPlayerClickPlayerTextDraw(playerid, PlayerText:playertextid)
    {
    	if(playertextid ==PlayerText: INVALID_TEXT_DRAW)
    	{
    		PlayerTextDrawHide(playerid, X);
    		CancelSelectTextDraw(playerid);
    		return 1;
    	}
        return 0;
    }

    Macht eigentlich nichts, man muss PlayerText: vorher nicht angeben, trotzdem war es ein Versuch wert. Klappt immer noch nicht.


    Diesmal verschwindet das Textdraw nicht einmal bei dem anderen Callback schon

    C
    public OnPlayerClickPlayerTextDraw(playerid, PlayerText:playertextid)
    {
    	if(playertextid == INVALID_TEXT_DRAW)
    	{
    		PlayerTextDrawHide(playerid,X);
    		CancelSelectTextDraw(playerid);
    		return 1;
    	}
        return 0;
    }

    Wieder ein Tagmismatch in der if Abfrage. Das Textdraw verschwindet auch nicht.

    Ich benutzte die Textdraws für eine Funktion, ich will halt, dass wenn ich nachdem das TextDraw versteckt wurde es wieder mit /textdraw anzeige, dass funktioniert nicht.

    C
    ocmd:textdraw(playerid,params[])
    {
    	    new Float:angle;
    	    GetPlayerFacingAngle(playerid,angle);
    	    SelectTextDraw(playerid, 0x00FF00FF);
    	    SetPlayerFacingAngle(playerid,angle);
    		PlayerTextDrawShow(playerid, X);


    Code
    public OnPlayerClickTextDraw(playerid, Text:clickedid)
    {
    	if(_:clickedid == INVALID_TEXT_DRAW)
    	{
    		PlayerTextDrawHide(playerid, X);
    		CancelSelectTextDraw(playerid);
    		return 1;
    }
        return 0;
    }