Hilfe Beim Bank System Bittttttttte

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
  • heey ich habe 4 errors bei einem Bank system bitte schnell um hilfe




    if(dialogid == Einzahlung) //Fragt ab, welcher Dialog aufgerufen wurde.
    {
    new str[128]; //Wieder ein neuer string.
    if(!response)return ShowPlayerDialog(playerid,Bankmenu,DIALOG_STYLE_LIST,"Transaktionen","Einzahlung\nAuszahlung\nKontostand\nÜberweisung","Wählen","Beenden"); //Falls der Dialog nicht beantwortet wird, wird der originale Dialog angezeigt. (!response) Das Ausrufezeichen verneint die Abfrage.
    if(GetPlayerMoney(playerid) < strval(inputtext))return SendClientMessage(playerid,0xC8C8C8FF,"Du hast nicht genug Geld dabei!"); //Wenn das Geld auf der Hand des Spielers nicht ausreicht, erscheint diese Nachricht. Der inputtext dient hierbei als Abfrage dafür. Das Zeichen < müsstest du aus dem Mathematikunterricht kennen.
    GivePlayerMoney(playerid, - strval(inputtext)); //Hier wird dem Spieler das Geld abgezogen, was er einzahlt. Da es kein Befehl zum abziehen von Geld gibt, arbeitet man mit Minus.
    pInfo[playerid][Bank] += strval(inputtext); //Hier wird das Geld dann auf das Bankkonto addiert.
    format(str,sizeof(str),"Sie haben %d$ auf ihr Konto eingezahlt",strval(inputtext)); //Jetzt kommt der string (str) zum Einsatz.
    ShowPlayerDialog(playerid,EinzahlungText,DIALOG_STYLE_MSGBOX,"Transaktion",str,"Schließen",""); //und als Dialog ausgegeben
    }
    if(dialogid == Auszahlung)
    {
    new str[128];
    if(!response)return ShowPlayerDialog(playerid,Bankmenu,DIALOG_STYLE_LIST,"Transaktionen","Einzahlung\nAuszahlung\nKontostand\nÜberweisung","Wählen","Beenden");
    if(pInfo[playerid][Bank] < strval(inputtext))return SendClientMessage(playerid,0xC8C8C8FF,"Du hast nicht genug auf dem Konto!"); //Das Selbe wie eben, nur wird das Geld auf der Bank abgefragt.
    GivePlayerMoney(playerid,strval(inputtext)); //Das Geld wird ausgegeben.
    pInfo[playerid][Bank] -= strval(inputtext); //und von der Bank abgezogen.
    format(str,sizeof(str),"Sie haben %d$ von ihrem Konto abgehoben",strval(inputtext));
    ShowPlayerDialog(playerid,AuszahlungText,DIALOG_STYLE_MSGBOX,"Transaktion",str,"Schließen","");
    }
    if(dialogid == Ueberweisung)
    {
    new pID;
    if(!response)return ShowPlayerDialog(playerid,Bankmenu,DIALOG_STYLE_LIST,"Transaktionen","Einzahlung\nAuszahlung\nKontostand\nÜberweisung","Wählen","Beenden");
    if(sscanf(inputtext,"u",pID))return ShowPlayerDialog(playerid,UeberweisungText1,DIALOG_STYLE_MSGBOX,"Transaktion","Ungültige Angabe!","Schließen","") ; //Falls ihr mit sscanf nicht umgehen könnt, nutzt euere Variante um Parameter abzufragen oder ladet euch die Include runter.
    if(!IsPlayerConnected(pID))return ShowPlayerDialog(playerid,UeberweisungText1,DIALOG_STYLE_MSGBOX,"Transaktion","Ungültiger Empfänger!","Schließen","") ; //Hier wird, wie über dieser Zeile der Dialog "UeberweisungText1" nochmals verwendet. Das macht bei Texten nichts, diese könnt ihr so oft wie ihr wollt verwenden.
    if (pID == playerid)return ShowPlayerDialog(playerid,UeberweisungText1,DIALOG_STYLE_MSGBOX,"Transaktion","Ungültiger Empfänger!","Schließen","") ;
    ShowPlayerDialog(playerid,Ueberweisung2,DIALOG_STYLE_INPUT,"Überweisung","Summe eingeben:","Überweisen","Verlassen");
    Ueberweiser[playerid] = pID; //Unsere Variable kommt zum Einsatz
    Ueberweiser[pID] = playerid; // same here
    }
    if(dialogid == Ueberweisung2)
    {


    und die errors



    C:\Users\Masse\Desktop\sa-mp server\gamemodes\Script.pwn(1439) : error 028: invalid subscript (not an array or too many subscripts): "pInfo"
    C:\Users\Masse\Desktop\sa-mp server\gamemodes\Script.pwn(1439) : warning 215: expression has no effect
    C:\Users\Masse\Desktop\sa-mp server\gamemodes\Script.pwn(1439) : error 001: expected token: ";", but found "]"
    C:\Users\Masse\Desktop\sa-mp server\gamemodes\Script.pwn(1439) : error 029: invalid expression, assumed zero
    C:\Users\Masse\Desktop\sa-mp server\gamemodes\Script.pwn(1439) : fatal error 107: too many error messages on one line


    Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    4 Errors.



    das ist die zeile 1439


    pInfo[playerid][Bank] += strval(inputtext);

    alles in Bearbeitung :)

  • So:


    if(dialogid == Einzahlung) //Fragt ab, welcher Dialog aufgerufen wurde.
    {
    new str[128]; //Wieder ein neuer string.
    if(!response)return ShowPlayerDialog(playerid,Bankmenu,DIALOG_STYLE_LIST,"Transaktionen","Einzahlung\nAuszahlung\nKontostand\nÜberweisung","Wählen","Beenden"); //Falls der Dialog nicht beantwortet wird, wird der originale Dialog angezeigt. (!response) Das Ausrufezeichen verneint die Abfrage.
    if(GetPlayerMoney(playerid) < strval(inputtext))return SendClientMessage(playerid,0xC8C8C8FF,"Du hast nicht genug Geld dabei!"); //Wenn das Geld auf der Hand des Spielers nicht ausreicht, erscheint diese Nachricht. Der inputtext dient hierbei als Abfrage dafür. Das Zeichen < müsstest du aus dem Mathematikunterricht kennen.
    GivePlayerMoney(playerid, - strval(inputtext)); //Hier wird dem Spieler das Geld abgezogen, was er einzahlt. Da es kein Befehl zum abziehen von Geld gibt, arbeitet man mit Minus.
    pInfo[playerid][Bank] += strval(inputtext); //Hier wird das Geld dann auf das Bankkonto addiert.
    format(str,sizeof(str),"Sie haben %d$ auf ihr Konto eingezahlt",strval(inputtext)); //Jetzt kommt der string (str) zum Einsatz.
    ShowPlayerDialog(playerid,EinzahlungText,DIALOG_STYLE_MSGBOX,"Transaktion",str,"Schließen",""); //und als Dialog ausgegeben
    }
    if(dialogid == Auszahlung)
    {
    new str[128];
    if(!response)return ShowPlayerDialog(playerid,Bankmenu,DIALOG_STYLE_LIST,"Transaktionen","Einzahlung\nAuszahlung\nKontostand\nÜberweisung","Wählen","Beenden");
    if(pInfo[playerid][Bank] < strval(inputtext))return SendClientMessage(playerid,0xC8C8C8FF,"Du hast nicht genug auf dem Konto!"); //Das Selbe wie eben, nur wird das Geld auf der Bank abgefragt.
    GivePlayerMoney(playerid,strval(inputtext)); //Das Geld wird ausgegeben.
    pInfo[playerid][Bank] -= strval(inputtext); //und von der Bank abgezogen.
    format(str,sizeof(str),"Sie haben %d$ von ihrem Konto abgehoben",strval(inputtext));
    ShowPlayerDialog(playerid,AuszahlungText,DIALOG_STYLE_MSGBOX,"Transaktion",str,"Schließen","");
    }
    if(dialogid == Ueberweisung)
    {
    new pID;
    if(!response)return ShowPlayerDialog(playerid,Bankmenu,DIALOG_STYLE_LIST,"Transaktionen","Einzahlung\nAuszahlung\nKontostand\nÜberweisung","Wählen","Beenden");
    if(sscanf(inputtext,"u",pID))return ShowPlayerDialog(playerid,UeberweisungText1,DIALOG_STYLE_MSGBOX,"Transaktion","Ungültige Angabe!","Schließen","") ; //Falls ihr mit sscanf nicht umgehen könnt, nutzt euere Variante um Parameter abzufragen oder ladet euch die Include runter.
    if(!IsPlayerConnected(pID))return ShowPlayerDialog(playerid,UeberweisungText1,DIALOG_STYLE_MSGBOX,"Transaktion","Ungültiger Empfänger!","Schließen","") ; //Hier wird, wie über dieser Zeile der Dialog "UeberweisungText1" nochmals verwendet. Das macht bei Texten nichts, diese könnt ihr so oft wie ihr wollt verwenden.
    if (pID == playerid)return ShowPlayerDialog(playerid,UeberweisungText1,DIALOG_STYLE_MSGBOX,"Transaktion","Ungültiger Empfänger!","Schließen","") ;
    ShowPlayerDialog(playerid,Ueberweisung2,DIALOG_STYLE_INPUT,"Überweisung","Summe eingeben:","Überweisen","Verlassen");
    Ueberweiser[playerid] = pID; //Unsere Variable kommt zum Einsatz
    Ueberweiser[pID] = playerid; // same here
    }
    if(dialogid == Ueberweisung2)
    {


    und die errors
    Wo hastn das her? :o
    Ausm Filterscript?