Banksystem funktioniert nicht :(

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!
    Mein Selfmade Banksystem ist fertig aber da funktioniert so einiges nicht...
    Kann mir mal bitte jemand drüber schauen und meine Fehler zeigen?
    Bitte... ich verzweifle schon -.-



    if(dialogid == BANKMENU)
    {
    if(response)
    {
    if(listitem == 0)
    {
    ShowPlayerDialog(playerid,BARGELD_BEHEBEN,DIALOG_STYLE_INPUT,"Kontobehebung","Wie viel möchten Sie beheben?","Auszahlen","Abbrechen");
    }
    if(listitem == 1)
    {
    ShowPlayerDialog(playerid,EINZAHLEN,DIALOG_STYLE_INPUT,"Kontoeinzahlung","Wie viel möchten Sie einzahlen?","Einzahlen","Abbrechen");
    }
    if(listitem == 2)
    {
    ShowPlayerDialog(playerid,UEBERWEISEN,DIALOG_STYLE_INPUT,"Überweisung","Wie viel möchten Sie überweisen?","Weiter","Abbrechen");
    }
    if(listitem == 3)
    {
    SendClientMessage(playerid,COLOR_WHITE,"Deine Kontodaten:");
    new string[128];
    format(string,sizeof(string)," Bankguthaben: %d$",GetPVarInt(playerid,"Bankbetrag"));
    SendClientMessage(playerid,COLOR_GREY,string);
    SendClientMessage(playerid,COLOR_GREY," Habenzinsen: 0,03 Prozent pro Payday");
    }
    }
    else
    {
    SendClientMessage(playerid,COLOR_LAWNGREEN,"Bankmitarbeiter: Einen schönen Tag noch.");
    }
    return 1;
    }
    if(dialogid == BARGELD_BEHEBEN)
    {
    if(response)
    {
    if(!isnumeric(inputtext))
    {
    ShowPlayerDialog(playerid,BARGELD_BEHEBEN,DIALOG_STYLE_INPUT,"Kontobehebung","Wie viel möchten Sie beheben?","Auszahlen","Abbrechen");
    SendClientMessage(playerid,COLOR_GREY,"Bitte nur Zahlen eingeben! ");
    }
    new Betrag = strval(inputtext);
    if(GetPVarInt(playerid,"Bankkonto")<Betrag)return SendClientMessage(playerid,COLOR_GREY,"So viel Geld hast du nicht auf deinem Konto.");
    GivePlayerMoney(playerid,Betrag);
    SetPVarInt(playerid,"Bankbetrag",GetPVarInt(playerid,"Bankbetrag")-Betrag);
    SendClientMessage(playerid,COLOR_LAWNGREEN,"Behebung erfolgreich!");
    new string[128];
    format(string,sizeof(string),"{CCCCFF}Dein neuer Kontostand: {00FF00}%d$",GetPVarInt(playerid,"Bankbetrag"));
    SendClientMessage(playerid,-1,string);
    SpielerSpeichern(playerid);
    }
    else
    {
    ShowPlayerDialog(playerid,BANKMENU,DIALOG_STYLE_LIST,"Bankmenü","Bargeld beheben \nGeld einzahlen\nGeld überweisen \nKontostand abfragen","Auswählen","Abbrechen");
    }
    return 1;
    }
    if(dialogid == EINZAHLEN)
    {
    if(response)
    {
    if(!isnumeric(inputtext))
    {
    ShowPlayerDialog(playerid,EINZAHLEN,DIALOG_STYLE_INPUT,"Kontoeinzahlung","Wie viel möchten Sie einzahlen?","Einzahlen","Abbrechen");
    SendClientMessage(playerid,COLOR_GREY,"Bitte nur Zahlen eingeben! ");
    }
    new Betrag = strval(inputtext);
    if(GetPlayerMoney(playerid)<Betrag)return SendClientMessage(playerid,COLOR_GREY,"So viel Geld hast du nicht dabei.");
    GivePlayerMoney(playerid,-Betrag);
    SetPVarInt(playerid,"Bankbetrag",GetPVarInt(playerid,"Bankbetrag")+Betrag);
    SendClientMessage(playerid,COLOR_LAWNGREEN,"Behebung erfolgreich!");
    new string[128];
    format(string,sizeof(string),"{CCCCFF}Dein neuer Kontostand: {00FF00}%d$",GetPVarInt(playerid,"Bankbetrag"));
    SendClientMessage(playerid,-1,string);
    SpielerSpeichern(playerid);
    }
    else
    {
    ShowPlayerDialog(playerid,BANKMENU,DIALOG_STYLE_LIST,"Bankmenü","Bargeld beheben \nGeld einzahlen\nGeld überweisen \nKontostand abfragen","Auswählen","Abbrechen");
    }
    return 1;
    }
    if(dialogid == UEBERWEISEN)
    {
    if(response)
    {
    if(!isnumeric(inputtext))
    {
    ShowPlayerDialog(playerid,UEBERWEISEN,DIALOG_STYLE_INPUT,"Überweisung","Wie viel möchten Sie überweisen?","Weiter","Abbrechen");
    SendClientMessage(playerid,COLOR_GREY,"Bitte nur Zahlen eingeben! ");
    }
    new Betrag = strval(inputtext);
    if(GetPVarInt(playerid,"Bankbetrag")<Betrag)return SendClientMessage(playerid,COLOR_GREY,"So viel Geld hast du nicht auf deinem Konto.");
    SetPVarInt(playerid,"Bankbetrag",GetPVarInt(playerid,"Bankbetrag")-Betrag);
    SetPVarInt(playerid,"Überweisungsbetrag",Betrag);
    SpielerSpeichern(playerid);


    if(response)
    {
    ShowPlayerDialog(playerid,UEBERWEISUNGSEMPFAENGER,DIALOG_STYLE_INPUT,"Empfänger","An wen möchtest du überweisen?","Absenden","Abbrechen");
    }
    else
    {
    ShowPlayerDialog(playerid,BANKMENU,DIALOG_STYLE_LIST,"Bankmenü","Bargeld beheben \nGeld einzahlen\nGeld überweisen \nKontostand abfragen","Auswählen","Abbrechen");
    }
    }
    else
    {
    ShowPlayerDialog(playerid,BANKMENU,DIALOG_STYLE_LIST,"Bankmenü","Bargeld beheben \nGeld einzahlen\nGeld überweisen \nKontostand abfragen","Auswählen","Abbrechen");
    }
    return 1;
    }
    if(dialogid == UEBERWEISUNGSEMPFAENGER)
    {
    new ueberweisungsbetrag=GetPVarInt(playerid,"Überweisungsbetrag");
    new pID = strval(inputtext);
    if(GetPVarInt(pID,"Bankkonto")==0)
    {
    SendClientMessage(playerid,COLOR_GREY,"Dieser Spieler hat noch kein Konto eröffnet.");
    ShowPlayerDialog(playerid,UEBERWEISUNGSEMPFAENGER,DIALOG_STYLE_INPUT,"Empfänger","An wen möchtest du überweisen?","Absenden","Abbrechen");
    }
    SetPVarInt(pID,"Bankbetrag",GetPVarInt(pID,"Bankbetrag")+ueberweisungsbetrag);
    SpielerSpeichern(pID);
    SpielerSpeichern(playerid);
    }
    if(dialogid == KONTOERSTELLEN)
    {
    if(response)
    {
    SetPVarInt(playerid,"Bankkonto",1);
    SetPVarInt(playerid,"Bankbetrag",50000);
    SendClientMessage(playerid,COLOR_LAWNGREEN,"Du hast ein neues Girokonto eröffnet. Herzlichen Glückwunsch.");
    SendClientMessage(playerid,COLOR_LAWNGREEN,"Als Startgeld erhalten Sie von uns 50.000$ gutgeschrieben.");
    ShowPlayerDialog(playerid,BANKMENU,DIALOG_STYLE_LIST,"Bankmenü","Bargeld beheben \nGeld einzahlen\nGeld überweisen \nKontostand abfragen","Auswählen","Abbrechen");
    }
    else
    {
    SendClientMessage(playerid,COLOR_GREY,"Ok, vielleicht beim nächsten Mal.");
    }
    return 1;
    }
    return 1;
    }

  • Beispielsweise:


    Ich gehe zur Bank benutze meinen Befehl /bank und dann wird abgefragt ob ich schon ein Konto habe oder nicht.
    Da ich noch keins habe klicke ich bei dem kontoerstellen dialog auf Antwort ja (ich möchte eines erstellen).
    Anschließend werde ich nicht weiter zum dialog bankmenü geschickt und ich bekomme auch nicht die nachricht vom startbonus (steht alles unter kontoerstellen)


    lg


    Schmonk

  • if(response)
    {
    SetPVarInt(playerid,"Bankkonto",1);
    SetPVarInt(playerid,"Bankbetrag",50000);
    SendClientMessage(playerid,COLOR_LAWNGREEN,"Du hast ein neues Girokonto eröffnet. Herzlichen Glückwunsch.");
    SendClientMessage(playerid,COLOR_LAWNGREEN,"Als Startgeld erhalten Sie von uns 50.000$ gutgeschrieben.");
    ShowPlayerDialog(playerid,BANKMENU,DIALOG_STYLE_LIST,"Bankmenü","Bargeld beheben \nGeld einzahlen\nGeld überweisen \nKontostand abfragen","Auswählen","Abbrechen");
    }
    else
    {
    SendClientMessage(playerid,COLOR_GREY,"Ok, vielleicht beim nächsten Mal.");
    }
    return 1;


    Also, du meinst folgende Zeile wird nicht ausgeführt (?):


    ShowPlayerDialog(playerid,BANKMENU,DIALOG_STYLE_LIST,"Bankmenü","Bargeld beheben \nGeld einzahlen\nGeld überweisen \nKontostand abfragen","Auswählen","Abbrechen");


    #Edit: Und halt das mit dem Geld.

    [tabmenu][tab=Signatur,'http://bit.ly/1i4RY3v']

    Wie poste ich richtig?
    Nachdem du Google, die FAQ und die Suchfunktion erfolgreich ignoriert hast, erstellst du 2 bis 5 neue Themen in den falschen Unterforen mit lustigem Titel,
    zu vielen Ausrufezeichen und undeutlichem Text, unter dem sich jeder etwas anders vorstellen kann.



    Mr.Dubstep | GFX | Scripting | Hackerplace
    If Mr.DubStep don't have it, you don't need it.

    [tab=Spieler bei,'http://bit.ly/1db2jaf'][subtab=Hackerplace,'http://bit.ly/1bswN2T']


    Welch wunderschöner Hack ist heute vollzogen worden, könntest Du mir es denn sagen? Ein wunderschönes Browsergame, auch für Kleinigkeiten unterwegs. Erschaffe deinen eigenen Computer, nutze ihn um anderen das Geld zu rauben, schließe dich einem Clan an oder gründe selbst einen. Bleibe allein oder mit vielen Freunden.

  • Nimm doch mal das return 1; davon weg und probier es erneut.


    if(dialogid == KONTOERSTELLEN)
    {
    ...
    {
    SendClientMessage(playerid,COLOR_GREY,"Ok, vielleicht beim nächsten Mal.");
    }
    return 1;
    }

    [tabmenu][tab=Signatur,'http://bit.ly/1i4RY3v']

    Wie poste ich richtig?
    Nachdem du Google, die FAQ und die Suchfunktion erfolgreich ignoriert hast, erstellst du 2 bis 5 neue Themen in den falschen Unterforen mit lustigem Titel,
    zu vielen Ausrufezeichen und undeutlichem Text, unter dem sich jeder etwas anders vorstellen kann.



    Mr.Dubstep | GFX | Scripting | Hackerplace
    If Mr.DubStep don't have it, you don't need it.

    [tab=Spieler bei,'http://bit.ly/1db2jaf'][subtab=Hackerplace,'http://bit.ly/1bswN2T']


    Welch wunderschöner Hack ist heute vollzogen worden, könntest Du mir es denn sagen? Ein wunderschönes Browsergame, auch für Kleinigkeiten unterwegs. Erschaffe deinen eigenen Computer, nutze ihn um anderen das Geld zu rauben, schließe dich einem Clan an oder gründe selbst einen. Bleibe allein oder mit vielen Freunden.

  • if(!isnumeric(inputtext))
    {
    ShowPlayerDialog(playerid,BARGELD_BEHEBEN,DIALOG_STYLE_INPUT,"Kontobehebung","Wie viel möchten Sie beheben?","Auszahlen","Abbrechen");
    SendClientMessage(playerid,COLOR_GREY,"Bitte nur Zahlen eingeben! ");
    }
    new Betrag=strval(inputtext);
    new string[128];
    if(GetPVarInt(playerid,"Bankkonto") < 1)return SCM(playerid,COLOR_GREY,"Du hast nicht genug Geld auf dem Konto.");
    if(money<1||money>500000)return SCM(playerid,COLOR_GREY,"Falscher Wert (min. 1$ | max. 500000$)");//Gleichzeitiger ATM-Bug Schutz
    GivePlayerMoney(playerid,Betrag);
    SetPVarInt(playerid,"Bankkonto",GetPVarInt(playerid,"Bankkonto")-Betrag);
    format(string,sizeof(string),"{CCCCFF}Dein neuer Kontostand: {00FF00}%d$",GetPVarInt(playerid,"Bankbetrag"));
    SendClientMessage(playerid,COLOR_GREY,string);
    SpielerSpeichern(playerid);


    ShowPlayerDialog(playerid,BARGELD_BEHEBEN,DIALOG_STYLE_INPUT,"Auszahlen","Tippe den Betrag zum Auszahlen.","Auszahlen","Abbrechen");


    Sollte eigentlich funktionieren.

    [tabmenu][tab=Signatur,'http://bit.ly/1i4RY3v']

    Wie poste ich richtig?
    Nachdem du Google, die FAQ und die Suchfunktion erfolgreich ignoriert hast, erstellst du 2 bis 5 neue Themen in den falschen Unterforen mit lustigem Titel,
    zu vielen Ausrufezeichen und undeutlichem Text, unter dem sich jeder etwas anders vorstellen kann.



    Mr.Dubstep | GFX | Scripting | Hackerplace
    If Mr.DubStep don't have it, you don't need it.

    [tab=Spieler bei,'http://bit.ly/1db2jaf'][subtab=Hackerplace,'http://bit.ly/1bswN2T']


    Welch wunderschöner Hack ist heute vollzogen worden, könntest Du mir es denn sagen? Ein wunderschönes Browsergame, auch für Kleinigkeiten unterwegs. Erschaffe deinen eigenen Computer, nutze ihn um anderen das Geld zu rauben, schließe dich einem Clan an oder gründe selbst einen. Bleibe allein oder mit vielen Freunden.