ATM Verbuggt

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 uns ein neues atm system erstellt, doch wenn ich geld ein oder auszahle wird mir nix abgezogen aber im atm gutgeschrieben... oO


    der code sieht so aus:


    if(dialogid == bankmenue)
    {
    if(response)
    {
    if(listitem == 0) //Einzahlen
    {
    new einzahlstring[256];
    new einzahlname[64];
    format(einzahlstring,sizeof(einzahlstring),"Willkommen an diesem Bankterminal %s !\nHier kannst du Geld auf dein San Andreas Bankknonto einzahlen.\nDu hast %d$ auf deinem Konto\nBitte gib an, wie viel Geld du einzahlen möchtest:", PlayerInfo[playerid][pAccount] ,einzahlname);
    ShowPlayerDialog(playerid,einzahlen,DIALOG_STYLE_INPUT,"Bankterminal",einzahlstring,"Einzahlen","Abbrechen");
    }
    if(listitem == 1) //Auszahlen
    {
    new auszahlstring[256];
    new auszahlname[64];
    format(auszahlstring,sizeof(auszahlstring),"Willkommen an diesem Bankterminal %s !\nHier kannst du dir dein Geld von deinem San Andreas Bankknonto auszahlen lassen.\nDu hast %d$ auf deinem Konto\nBitte gib an, wie viel Geld du auszahlen möchtest:", PlayerInfo[playerid][pAccount], auszahlname);
    ShowPlayerDialog(playerid,auszahlen,DIALOG_STYLE_INPUT,"Bankterminal",auszahlstring,"Auszahlen","Abbrechen");
    }
    if(listitem == 2) //Kontoauszug
    {
    SendClientMessage(playerid, COLOR_WHITE, "|___ KONTOAUSZUG ___|");
    format(string, sizeof(string), " Ihr Kontostand beträgt: %d $", PlayerInfo[playerid][pAccount]);
    SendClientMessage(playerid, COLOR_WHITE, string);
    SendClientMessage(playerid, COLOR_GRAD6, "|-----------------------------------------|");
    }
    return 1;
    }
    }
    //Bankmenü



    //Einzahlen
    if(dialogid == einzahlen)
    {
    if(strlen(inputtext))
    {
    if(!AtATM(playerid))
    {
    SendClientMessage(playerid, COLOR_GREY, "Du bist nicht an einem Bankautomaten !");
    return 1;
    }
    //tmp = strtok(cmdtext, idx);
    if(!strlen(inputtext))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "Bitte gibt die Menge ein !");
    format(string, sizeof(string), " Du hast $%d auf deinem Konto.", PlayerInfo[playerid][pAccount]);
    SendClientMessage(playerid, COLOR_GRAD3, string);
    return 1;
    }
    new cashdeposit = strval(inputtext);
    if(!strlen(inputtext))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "Bitte gib die Menge ein !");
    format(string, sizeof(string), " Du hast $%d auf deinem Konto.", PlayerInfo[playerid][pAccount]);
    SendClientMessage(playerid, COLOR_GRAD3, string);
    return 1;
    }
    if (cashdeposit > GetPlayerMoney(playerid) || cashdeposit < 1)
    {
    SendClientMessage(playerid, COLOR_GRAD2, " Du hast nicht soviel Geld !");
    return 1;
    }
    PlayerMoney[playerid] = PlayerMoney[playerid] -cashdeposit;
    new curfunds = PlayerInfo[playerid][pAccount];
    PlayerInfo[playerid][pAccount]=cashdeposit+PlayerInfo[playerid][pAccount];
    SendClientMessage(playerid, COLOR_WHITE, "|___ BANK AUSZUG ___|");
    format(string, sizeof(string), " Alter Kontostand: $%d", curfunds);
    SendClientMessage(playerid, COLOR_GRAD2, string);
    format(string, sizeof(string), " Eingezahlt: $%d",cashdeposit);
    SendClientMessage(playerid, COLOR_GRAD4, string);
    SendClientMessage(playerid, COLOR_GRAD6, "|-----------------------------------------|");
    format(string, sizeof(string), " Neuer Kontostand: $%d", PlayerInfo[playerid][pAccount]);
    SendClientMessage(playerid, COLOR_WHITE, string);
    }
    return 1;
    }
    //Einzahlen


    //Auszahlen
    if(dialogid == auszahlen)
    {
    if(strlen(inputtext))
    {
    if(!AtATM(playerid))
    {
    SendClientMessage(playerid, COLOR_GREY, "Du bist nicht an einem Bankautomaten !");
    return 1;
    }
    //tmp = strtok(cmdtext, idx);
    if(!strlen(inputtext))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "Bitte gibt die Menge ein !");
    format(string, sizeof(string), " Du hast $%d auf deinem Konto.", PlayerInfo[playerid][pAccount]);
    SendClientMessage(playerid, COLOR_GRAD3, string);
    return 1;
    }
    new cashdeposit = strval(inputtext);
    if(!strlen(inputtext))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "Bitte gib die Menge ein !");
    format(string, sizeof(string), " Du hast $%d auf deinem Konto.", PlayerInfo[playerid][pAccount]);
    SendClientMessage(playerid, COLOR_GRAD3, string);
    return 1;
    }
    if (cashdeposit > PlayerInfo[playerid][pAccount] || cashdeposit < 1)
    {
    SendClientMessage(playerid, COLOR_GRAD2, " Du hast nicht soviel Geld !");
    return 1;
    }
    PlayerMoney[playerid] = PlayerMoney[playerid] +cashdeposit;
    new curfunds = PlayerInfo[playerid][pAccount];
    PlayerInfo[playerid][pAccount]=PlayerInfo[playerid][pAccount]-cashdeposit;
    SendClientMessage(playerid, COLOR_WHITE, "|___ BANK AUSZUG ___|");
    format(string, sizeof(string), " Alter Kontostand: $%d", curfunds);
    SendClientMessage(playerid, COLOR_GRAD2, string);
    format(string, sizeof(string), " Ausgezahlt: $%d",cashdeposit);
    SendClientMessage(playerid, COLOR_GRAD4, string);
    SendClientMessage(playerid, COLOR_GRAD6, "|-----------------------------------------|");
    format(string, sizeof(string), " Neuer Kontostand: $%d", PlayerInfo[playerid][pAccount]);
    SendClientMessage(playerid, COLOR_WHITE, string);
    }
    return 1;
    }
    //Auszahlen


    Wo liegt da der bug?


    gruß

  • na wenn du was einzahlst musst du es auch mit GivePlayerMoney(playerid, -BETRAG) abziehen
    in diesem fall


    GivePlayerMoney(playerid, -strval(inputtext))


    und beim abheben


    GivePlayerMoney(playerid, strval(inputtext))

  • Also müsste das so aussehen, oder?


    GivePlayerMoney(playerid, -cashdeposit(inputtext))


    Was muss denn dann bei inputtext rein? Sorry bin völliger neuling...



    nein nur


    GivePlayerMoney(playerid, -cashdeposit)

  • C:\Users\Dennis\Desktop\Real-Roleplay.de\Real-Roleplay.de\Linux Root\gamemodes\LoH.pwn(45166) : error 001: expected token: ";", but found "-identifier-"
    C:\Users\öööö\Desktop\Linux Root\gamemodes\ooo.pwn(45168) : error 017: undefined symbol "curfunds"
    C:\Users\ÖÖÖÖ\Desktop\Linux Root\gamemodes\ooo.pwn(45214) : error 001: expected token: ";", but found "-identifier-"
    C:\Users\ÖÖÖÖ\Desktop\Linux Root\gamemodes\ooo.pwn(45216) : error 017: undefined symbol "curfunds"


    ich bekomme errors, habe sachen ausgeklammert, die davor errors verursacht haben:


    C:\Users\ÖÖÖÖ\Desktop\Linux Root\gamemodes\ooo.pwn(45164) : error 001: expected token: ";", but found "-identifier-"
    C:\Users\ÖÖÖÖ\Desktop\Linux Root\gamemodes\ooo.pwn(45212) : error 001: expected token: ";", but found "-identifier-"
    C:\Users\