Werte werden falsch ausgegeben

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
  • Hallo,


    ich habe mir ein simples Bank System gescriptet.
    Nur bei dem Bank System werden bei Eingaben falsche Werte wieder ausgeben :S


    if(dialogid == DIALOG_BANKM)
    {
    if(response == 0) // Abbruch
    {
    }
    if(response == 1) // Wählen
    {
    if(listitem == 0) // Login
    {
    ShowPlayerDialog(playerid,DIALOG_BANKL,DIALOG_STYLE_INPUT,"Bank System","Gebe nun deine Kontonummer von deinem Konto ein" ,"Weiter","Abbruch");
    }
    if(listitem == 1) // Reg
    {
    new szString1[125];
    NeuesKonto = strval(RandomStr(6));
    format(szString1,sizeof szString1,"Deine KontoNummer ist %d, bitte merke sie dir.\nGebe nun dein Gewünschtes Passwort ein.",NeuesKonto);
    ShowPlayerDialog(playerid,DIALOG_BANKR,DIALOG_STYLE_INPUT,"Bank System",szString1 ,"Weiter","");
    }
    }
    }
    if(dialogid == DIALOG_BANKR)
    {
    if(response == 1) // Passwort eingabe
    {
    for(new t = 1; t < MAX_KONTEN; t++)
    {
    new szString1[125];
    format(szString1,sizeof szString1,"Deine KontoNummer ist %d\nDein Konto Passwort: %d\nBitte merke dir dies, wenn du sie verlierst kann sie dir niemand ersetzen",NeuesKonto,strlen(inputtext));
    ShowPlayerDialog(playerid,DIALOG_BANKRE,DIALOG_STYLE_MSGBOX,"Bank System", szString1,"Weiter","");
    bank[t][bID] = NeuesKonto;
    bank[t][bPasswort] = strlen(inputtext);
    bank[t][bGeld] = 0;
    KontoExistiert ++;
    bank[t][bID2] = KontoExistiert;
    SpeicherKonto(KontoExistiert);
    }
    }
    }
    if(dialogid == DIALOG_BANKRE)
    {
    if(response == 1) // Passwort eingabe
    {
    ShowPlayerDialog(playerid,DIALOG_BANKM2,DIALOG_STYLE_LIST,"Bank System","Abheben\nÜberweisen\nKontostand","OK","Abbruch");
    }
    }
    if(dialogid == DIALOG_BANKL)
    {
    if(response == 0) // Abbruch
    {
    }
    if(response == 1) // Passwort eingabe
    {
    for(new t = 1; t < MAX_KONTEN; t++)
    {
    if(bank[t][bID] == strlen(inputtext))
    {
    ShowPlayerDialog(playerid,DIALOG_BANKL2,DIALOG_STYLE_INPUT,"Bank System","Gebe nun dein Passwort von deinem Konto ein.","Weiter","Abbruch");
    konto = strlen(inputtext);
    }
    else
    {
    ShowPlayerDialog(playerid,DIALOG_BANKE,DIALOG_STYLE_MSGBOX,"Bank System","Diese Kontonummer existiert gar nicht!","OK","");
    }
    }
    }
    }
    if(dialogid == DIALOG_BANKL2)
    {
    if(response == 0) // Abbruch
    {
    }
    if(response == 1) // Erfolgreich?
    {
    if(strcmp(inputtext,bank[konto][bPasswort]) == 0)
    {
    ShowPlayerDialog(playerid,DIALOG_BANKL3,DIALOG_STYLE_MSGBOX,"Bank System","Du wurdest erfolgreich in dein Kontoeingeloggt.","OK","");
    }
    else
    {
    ShowPlayerDialog(playerid,DIALOG_BANKE,DIALOG_STYLE_MSGBOX,"Bank System","Dieses Passwort ist nicht richtig!","OK","");
    }
    }
    }
    if(dialogid == DIALOG_BANKL3)
    {
    if(response == 1) // Menü
    {
    ShowPlayerDialog(playerid,DIALOG_BANKM2,DIALOG_STYLE_LIST,"Bank System","Abheben\nÜberweisen\nKontostand","OK","Abbruch");
    }
    }
    if(dialogid == DIALOG_BANKM2)
    {
    if(response == 0) // Abbruch
    {
    }
    if(response == 1) // Wählen
    {
    if(listitem == 0) // Abheben
    {
    ShowPlayerDialog(playerid,DIALOG_BANKA,DIALOG_STYLE_INPUT,"Bank System","Gebe nun deinen gewünschten Geldbetrag ein" ,"Weiter","Abbruch");
    }
    if(listitem == 1) // Überweisen
    {
    ShowPlayerDialog(playerid,DIALOG_BANKUA,DIALOG_STYLE_INPUT,"Bank System","Konto Nummer des Empfängers bitte eingeben" ,"Weiter","Abbruch");
    }
    if(listitem == 2) //Kontostand
    {
    new szString1[56];
    format(szString1,sizeof szString1,"Derzeitiger Kontostand: %i $",bank[konto][bGeld]);
    ShowPlayerDialog(playerid,DIALOG_BANKS,DIALOG_STYLE_INPUT,"Bank System",szString1,"Zurück","");
    }
    }
    }
    if(dialogid == DIALOG_BANKA)
    {
    if(response == 0) // Abbruch
    {
    ShowPlayerDialog(playerid,DIALOG_BANKM2,DIALOG_STYLE_LIST,"Bank System","Abheben\nÜberweisen\nKontostand" ,"OK","Abbruch");
    }
    if(response == 1) // Wählen
    {
    new szString1[125];
    format(szString1,sizeof szString1,"Du hast %d $ abgehoben, es wird dir nun Gutgeschrieben",strlen(inputtext));
    ShowPlayerDialog(playerid,DIALOG_BANKAE,DIALOG_STYLE_INPUT,"Bank System",szString1,"Zurück","");
    GivePlayerMoney(playerid, strlen(inputtext));
    bank[konto][bGeld] -= strlen(inputtext);
    SpeicherKonto(bank[konto][bID2]);
    }
    }
    if(dialogid == DIALOG_BANKUA)
    {
    if(response == 0) // Abbruch
    {
    ShowPlayerDialog(playerid,DIALOG_BANKM2,DIALOG_STYLE_LIST,"Bank System","Abheben\nÜberweisen\nKontostand" ,"OK","Abbruch");
    }
    if(response == 1) // Wählen
    {
    Empfaenger += strlen(inputtext);
    ShowPlayerDialog(playerid,DIALOG_BANKUW,DIALOG_STYLE_INPUT,"Bank System","Gebe bitte nun den gewünschten Betrag ein","Weiter","Abbruch");
    SpeicherKonto(bank[Empfaenger][bID2]);
    }
    }
    if(dialogid == DIALOG_BANKUW)
    {
    if(response == 0) // Abbruch
    {
    ShowPlayerDialog(playerid,DIALOG_BANKM2,DIALOG_STYLE_LIST,"Bank System","Abheben\nÜberweisen\nKontostand" ,"OK","Abbruch");
    }
    if(response == 1) // Wählen
    {
    bank[konto][bGeld] -= strlen(inputtext);
    bank[Empfaenger][bGeld] = strlen(inputtext);
    new szString1[125];
    format(szString1,sizeof szString1,"Du hast soeben an Kontonummer: %d %d $ überwiesen",Empfaenger,strlen(inputtext));
    ShowPlayerDialog(playerid,DIALOG_BANKUE,DIALOG_STYLE_MSGBOX,"Bank System",szString1,"Menü","");
    SpeicherKonto(konto);
    }
    }
    if(dialogid == DIALOG_BANKUW)
    {
    if(response == 1) // Abbruch
    {
    ShowPlayerDialog(playerid,DIALOG_BANKM2,DIALOG_STYLE_LIST,"Bank System","Abheben\nÜberweisen\nKontostand" ,"OK","Abbruch");
    }
    }


    MfG: Apoolecu

  • if(dialogid == DIALOG_BANKR)
    {
    if(response == 1) // Passwort eingabe
    {
    for(new t = 1; t < MAX_KONTEN; t++)
    {
    new szString1[125];
    format(szString1,sizeof szString1,"Deine KontoNummer ist %d\nDein Konto Passwort: %s\nBitte merke dir dies, wenn du sie verlierst kann sie dir niemand ersetzen",NeuesKonto,inputtext);
    ShowPlayerDialog(playerid,DIALOG_BANKRE,DIALOG_STYLE_MSGBOX,"Bank System", szString1,"Weiter","");
    bank[t][bID] = NeuesKonto;
    strmid(bank[t][bPasswort],inputtext, 0, strlen(inputtext),255);
    bank[t][bGeld] = 0;
    bank[t][bID2] = KontoExistiert;
    SpeicherKonto(KontoExistiert);
    }
    }
    }



    so habe ich es derzeit problem ist bei bPasswort kommen immer noch zahlen raus :O

  • bank[t][bPasswort] = strlen(inputtext); ?

    Unkompetent. Das neue dynamisch.



    ihr seit schon lustig postet erros aber nicht die zeilen wo sie sind dann können wir euch auch nicht helfen^^


    Lernt Scripten, Leute, und macht eure Augen auf!


    _______________________________________
    50 Beiträge: [x] 300 Beiträge: [x]
    100 Beiträge: [x] 500 Beiträge: [x]
    150 Beiträge: [x] 1000 Beiträge: [x]
    200 Beiträge: [x]
    2000 Beiträge: []
    250 Beiträge: [X] Boardaktivitäten: Profil


    [size=36]_______________________________________

    /Edit: Schmerzt es dir eigentlich nicht so ein Müll zu schreiben 8|

  • Wieso verwendest du da strlen(inputtext)... Weißt du überhaupt was strlen bedeutet? str = string len = length. Damit bekommst du die Länge vom eingegebenen Passwort was du ja anscheinend nicht willst...