Bank kann man überall benutzen :(

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
  • nabend hab ein problem


    if(strcmp(cmd, "/Abheben", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(IsPlayerInRangeOfPoint(playerid, 7.0, 2309.1921, -8.5255, 26.7422))
    {
    SendClientMessage(playerid, COLOR_GREY, " Du bist nicht an der Bank !");
    return 1;
    }
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "NUTZUNG: /withdraw [Betrag]");
    format(string, sizeof(string), " Du hast $%d mit deinem Acc.", PlayerInfo[playerid][pAccount]);
    SendClientMessage(playerid, COLOR_GRAD3, string);
    return 1;
    }
    new cashdeposit = strval(tmp);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "NUTZUNG: /withdraw [Betrag]");
    format(string, sizeof(string), " Du hast $%d in deinem Acc.", PlayerInfo[playerid][pAccount]);
    SendClientMessage(playerid, COLOR_GRAD3, string);
    return 1;
    }
    if (cashdeposit > PlayerInfo[playerid][pAccount] || cashdeposit < 1)
    {
    SendClientMessage(playerid, COLOR_GRAD2, " Du hast nicht genug !");
    return 1;
    }
    ConsumingMoney[playerid] = 1;
    GivePlayerMoney(playerid,cashdeposit);
    PlayerInfo[playerid][pAccount]=PlayerInfo[playerid][pAccount]-cashdeposit;
    format(string, sizeof(string), " Du hast $%d von deinem Account genommen. Kasse: $%d ", cashdeposit,PlayerInfo[playerid][pAccount]);
    SendClientMessage(playerid, COLOR_YELLOW, string);
    return 1;
    }
    return 1;
    }
    if(strcmp(cmd, "/Einzahlen", true) == 0 || strcmp(cmd, "/Einzahlen", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(IsPlayerInRangeOfPoint(playerid, 7.0, 2309.1921, -8.5255, 26.7422))
    {
    SendClientMessage(playerid, COLOR_GREY, " Du bist nicht an der Bank !");
    return 1;
    }
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "NUTZUNG: /bank [Betrag]");
    format(string, sizeof(string), " Du hast $%d auf deinem Account.", PlayerInfo[playerid][pAccount]);
    SendClientMessage(playerid, COLOR_GRAD3, string);
    return 1;
    }
    new cashdeposit = strval(tmp);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "NUTZUNG: /bank [Betrag]");
    format(string, sizeof(string), " Du hast $%d auf deinem Account.", 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");
    return 1;
    }
    GivePlayerMoney(playerid,-cashdeposit);
    new curfunds = PlayerInfo[playerid][pAccount];
    PlayerInfo[playerid][pAccount]=cashdeposit+PlayerInfo[playerid][pAccount];
    SendClientMessage(playerid, COLOR_WHITE, "|___ BANK Erklärung ___|");
    format(string, sizeof(string), " Vorheriger Kontostand: $%d", curfunds);
    SendClientMessage(playerid, COLOR_GRAD2, string);
    format(string, sizeof(string), " Zahlung: $%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, "/Kontostand", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(IsPlayerInRangeOfPoint(playerid, 7.0, 2309.1921, -8.5255, 26.7422))
    {
    SendClientMessage(playerid, COLOR_GREY, " Du bist nicht an der Bank !");
    return 1;
    }
    format(string, sizeof(string), " Du hast $%d auf deinem Account.",PlayerInfo[playerid][pAccount]);
    SendClientMessage(playerid, COLOR_YELLOW, string);
    }
    return 1;
    }



    ich möchte das die befehle nur bei dieser position gehen>>>7.0, 2309.1921, -8.5255, 26.7422<<< aber ich krieg es nicht hin bitte helf mir :(

  • if(IsPlayerInRangeOfPoint(playerid, 7.0, 2309.1921, -8.5255, 26.7422)) { SendClientMessage(playerid, COLOR_GREY, " Du bist nicht an der Bank !"); return 1; }

    Du fragst ab, sendest die nachricht, lässt aber die funktion weiter laufen.
    Versuchs mal so:
    if(IsPlayerInRangeOfPoint(playerid, 7.0, 2309.1921, -8.5255, 26.7422))
    {
    return SendClientMessage(playerid, COLOR_GREY, " Du bist nicht an der Bank !");
    }

  • geht immernoch nicht kann die befehle überall eingeben nur bei dieser posotion wo die befehle eig gehen sollten geht es nicht da kommt dann die meldung das ich nicht an der bank bin :/

  • du machst:
    wenn er an der bank ist
    => sende nachricht, dass er nicht da ist.


    mach mal nen ! vor das IsPlayerInRangeOfPoint



    if(!IsPlayerInRangeOfPoint(playerid, 7.0, 2309.1921, -8.5255, 26.7422))
    {
    return SendClientMessage(playerid, COLOR_GREY, "Du bist nicht an der Bank !");
    }

  • versuch es mal so:


    if(strcmp(cmd, "/Abheben", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(!IsPlayerInRangeOfPoint(playerid, 7.0, 2309.1921, -8.5255, 26.7422))
    {
    SendClientMessage(playerid, COLOR_GREY, " Du bist nicht an der Bank !");
    return 1;
    }
    else
    {
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "NUTZUNG: /withdraw [Betrag]");
    format(string, sizeof(string), " Du hast $%d mit deinem Acc.", PlayerInfo[playerid][pAccount]);
    SendClientMessage(playerid, COLOR_GRAD3, string);
    return 1;
    }
    new cashdeposit = strval(tmp);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "NUTZUNG: /withdraw [Betrag]");
    format(string, sizeof(string), " Du hast $%d in deinem Acc.", PlayerInfo[playerid][pAccount]);
    SendClientMessage(playerid, COLOR_GRAD3, string);
    return 1;
    }
    if (cashdeposit > PlayerInfo[playerid][pAccount] || cashdeposit < 1)
    {
    SendClientMessage(playerid, COLOR_GRAD2, " Du hast nicht genug !");
    return 1;
    }
    ConsumingMoney[playerid] = 1;
    GivePlayerMoney(playerid,cashdeposit);
    PlayerInfo[playerid][pAccount]=PlayerInfo[playerid][pAccount]-cashdeposit;
    format(string, sizeof(string), " Du hast $%d von deinem Account genommen. Kasse: $%d ", cashdeposit,PlayerInfo[playerid][pAccount]);
    SendClientMessage(playerid, COLOR_YELLOW, string);
    return 1;
    }
    }
    return 1;
    }
    if(strcmp(cmd, "/Einzahlen", true) == 0 || strcmp(cmd, "/Einzahlen", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(!IsPlayerInRangeOfPoint(playerid, 7.0, 2309.1921, -8.5255, 26.7422))
    {
    SendClientMessage(playerid, COLOR_GREY, " Du bist nicht an der Bank !");
    return 1;
    }
    else
    {
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "NUTZUNG: /bank [Betrag]");
    format(string, sizeof(string), " Du hast $%d auf deinem Account.", PlayerInfo[playerid][pAccount]);
    SendClientMessage(playerid, COLOR_GRAD3, string);
    return 1;
    }
    new cashdeposit = strval(tmp);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "NUTZUNG: /bank [Betrag]");
    format(string, sizeof(string), " Du hast $%d auf deinem Account.", 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");
    return 1;
    }
    GivePlayerMoney(playerid,-cashdeposit);
    new curfunds = PlayerInfo[playerid][pAccount];
    PlayerInfo[playerid][pAccount]=cashdeposit+PlayerInfo[playerid][pAccount];
    SendClientMessage(playerid, COLOR_WHITE, "|___ BANK Erklärung ___|");
    format(string, sizeof(string), " Vorheriger Kontostand: $%d", curfunds);
    SendClientMessage(playerid, COLOR_GRAD2, string);
    format(string, sizeof(string), " Zahlung: $%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, "/Kontostand", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(!IsPlayerInRangeOfPoint(playerid, 7.0, 2309.1921, -8.5255, 26.7422))
    {
    SendClientMessage(playerid, COLOR_GREY, " Du bist nicht an der Bank !");
    return 1;
    }
    else
    {
    format(string, sizeof(string), " Du hast $%d auf deinem Account.",PlayerInfo[playerid][pAccount]);
    SendClientMessage(playerid, COLOR_YELLOW, string);
    }
    }
    return 1;
    }


    ich habs nicht getestet also kann ich nichts versprechen ^^

  • nehli:
    Dann wird der wird zwar die nachricht gesendet wenn er nicht da ist, der CMD aber trozdem weiter ausgeführt.
    Nutz meine Version mit einem "!" (ohne " ") vor dem "IsPlayerInRangeOfPoint".


    Ist zwar ungetestet müsste aber eigentlich funktionieren, da ich nicht auf die Abfrage geachtet und diese somit nicht angepasst habe..

  • ja aber deswegen hab ich ja eine elsefunktion gemacht also wenn er im Bereich ist kann er den Befehl ausführen und wenn er nicht im Bereich ist dann kommt die Nachricht...


    Das habe ich so bei meinen /buygun, /buyskin gemacht und keine Probleme damit ;) also müsst es hier ja auch so funken ;)