[HILFE] /withdraw /deposit /balance /transfer Dialog

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
  • Guten Abend,


    wie der Titel schon sagt suche ich folgende Dialoge:


    /withdraw /deposit /balance /transfer Dialog



    die SuFu hat mir soweit nicht geholfen, deswegen bitte ich euch um hilfe, hier sind die befehle btw. commands:


    if(strcmp(cmd, "/withdraw", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(PlayerInfo[playerid][pLocal] != 103)
    {
    SendClientMessage(playerid, COLOR_GREY, "** Du bbist nicht in der Bank !");
    return 1;
    }
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "Verwende: /withdraw [Betrag]");
    format(string, sizeof(string), "** Du hast $%d auf deinem Konto !", PlayerInfo[playerid][pAccount]);
    SendClientMessage(playerid, COLOR_GRAD3, string);
    return 1;
    }
    new cashdeposit = strval(tmp);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "Verwende: /withdraw [Betrag]");
    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 so viel Geld !");
    return 1;
    }
    ConsumingMoney[playerid] = 1;
    GivePlayerMoney(playerid,cashdeposit);
    PlayerInfo[playerid][pAccount]=PlayerInfo[playerid][pAccount]-cashdeposit;
    format(string, sizeof(string), "** Du hast $%d von deinem Konto abgehoben. Neuer Kontostand: $%d ", cashdeposit,PlayerInfo[playerid][pAccount]);
    SendClientMessage(playerid, COLOR_YELLOW, string);
    return 1;
    }
    return 1;
    }
    if(strcmp(cmd, "/deposit", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(PlayerInfo[playerid][pLocal] != 103)
    {
    SendClientMessage(playerid, COLOR_GREY, "** Du bist nicht in der Bank !");
    return 1;
    }
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "Verwende: /deposit [Betrag]");
    format(string, sizeof(string), "** Du hast $%d auf deinem Konto !", PlayerInfo[playerid][pAccount]);
    SendClientMessage(playerid, COLOR_GRAD3, string);
    return 1;
    }
    new cashdeposit = strval(tmp);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "Verwende: /deposit [Betrag]");
    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 so viel Geld");
    return 1;
    }
    GivePlayerMoney(playerid,-cashdeposit);
    new curfunds = PlayerInfo[playerid][pAccount];
    PlayerInfo[playerid][pAccount]=cashdeposit+PlayerInfo[playerid][pAccount];
    SendClientMessage(playerid, COLOR_WHITE, "|___ Kontoauszug ___|");
    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;
    }
    return 1;
    }
    if(strcmp(cmd, "/balance", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(PlayerInfo[playerid][pLocal] != 103)
    {
    SendClientMessage(playerid, COLOR_GREY, "** Du bist nicht in der Bank");
    return 1;
    }
    format(string, sizeof(string), "** Du hast $%d auf deinem Konto !",PlayerInfo[playerid][pAccount]);
    SendClientMessage(playerid, COLOR_YELLOW, string);
    }
    return 1;
    }


    if(strcmp(cmd, "/transfer", true) == 0 || strcmp(cmd, "/wiretransfer", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(PlayerInfo[playerid][pLevel] < 3)
    {
    SendClientMessage(playerid, COLOR_GRAD1, " You must be level 3 !");
    return 1;
    }
    if(PlayerInfo[playerid][pLocal] != 103)
    {
    SendClientMessage(playerid, COLOR_GREY, " You are not at the Bank !");
    return 1;
    }
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GRAD1, "USAGE: /transfer [playerid/PartOfName] [amount]");
    return 1;
    }
    giveplayerid = ReturnUser(tmp);
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GRAD1, "USAGE: /transfer [playerid/PartOfName] [amount]");
    return 1;
    }
    moneys = strval(tmp);
    if (IsPlayerConnected(giveplayerid))
    {
    if(giveplayerid != INVALID_PLAYER_ID)
    {
    GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
    GetPlayerName(playerid, sendername, sizeof(sendername));
    playermoney = PlayerInfo[playerid][pAccount] ;
    if (moneys > 0 && playermoney >= moneys)
    {
    PlayerInfo[playerid][pAccount] -= moneys;
    PlayerInfo[giveplayerid][pAccount] += moneys;
    format(string, sizeof(string), " You have transferd $%d to %s's account", moneys, giveplayer,giveplayerid);
    PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
    SendClientMessage(playerid, COLOR_GRAD1, string);
    format(string, sizeof(string), " You have recieved $%d to into your account from %s", moneys, sendername, playerid);
    SendClientMessage(giveplayerid, COLOR_GRAD1, string);
    format(string, sizeof(string), "%s transferd $%d to %s", sendername, moneys, giveplayer);
    if(moneys >= 500000)
    {
    ABroadCast(COLOR_YELLOW,string,1);
    }
    printf("%s", string);
    PayLog(string);
    PlayerPlaySound(giveplayerid, 1052, 0.0, 0.0, 0.0);
    }
    else
    {
    SendClientMessage(playerid, COLOR_GRAD1, " Invalid transaction amount.");
    }
    }
    }
    else
    {
    format(string, sizeof(string), " %d is not an active player.", giveplayerid);
    SendClientMessage(playerid, COLOR_GRAD1, string);
    }
    }
    return 1;
    }


    vielen dank schonmal im vorraus


    *edit


    oder zumindest nur eins von denen damit ich in etwa weiß wie es geht ...

  • Meine Signatur --> Los Angeles Reallife v0.9 --> /bank
    In dem GM haben wir das Bank Menü auf Dialoge umgeschrieben. Schau da mal rein und dann siehste wies geht.


    //Edit: Übrigens nur mal so:


    if(PlayerInfo[playerid][pLocal] != 103)
    {
    SendClientMessage(playerid, COLOR_GREY, "** Du bbist nicht in der Bank !");
    return 1;
    }

    Such den Rechtschreibfehler :D
    Sieht blöd aus wenn das Script mal online läuft und haufen Rechtschreibfehler drinnen sind^^