Du bist nicht in der Bank? WTF

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
  • Irgendwie ist der Befehl, aua im Kopf :D
    Ist alles festgesetzt, stehe ich vor dem Automaten "Du bist nicht an der Bank" obwohl ich ja davor stehe also an der richtigen stelle.
    Gehe von dem besagten Punkt weg, geht es ôo. Als wenn ich sage das nur an dem besagten Punkt man nicht abheben kann sonst aber überall... Regt mich grade auf :D


    forward IsAtBank(playerid);


    public IsAtBank(playerid)
    {
    if(IsPlayerConnected(playerid))
    {
    if(IsPlayerInRangeOfPoint(playerid,2.0,780.1137,-1400.4254,-30.2661))
    {
    return 1;
    }
    }
    return 0;
    }


    if(strcmp(cmd, "/Abheben", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(IsAtBank(playerid))
    {
    SendClientMessage(playerid, COLOR_GREY, " Du bist nicht an der Bank !");
    return 1;
    }
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "NUTZUNG: /Abheben [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: /Abheben [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(IsAtBank(playerid))
    {
    SendClientMessage(playerid, COLOR_GREY, " Du bist nicht an der Bank !");
    return 1;
    }
    Kein Wunder^^
    if(!IsAtBank(playerid))
    {
    SendClientMessage(playerid, COLOR_GREY, " Du bist nicht an der Bank !");
    return 1;
    }

  • Der Aufruf von "IsAtBank" ist komplett unsinnig.
    Du gibst "Du bist nicht an der Bank !" aus, obwohl der Spieler bei der Bank ist.

    Text sollte eig. stehen du bist nicht am Automaten ^^ habe komplett neue Bank..
    Aber habe schon mit direkt playertopoint anstatt isatbank geballert aber funzt auch nicht :S

  • Lies doch was ich geschrieben habe..



    if(strcmp(cmd, "/Abheben", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(!IsAtBank(playerid))
    {
    SendClientMessage(playerid, COLOR_GREY, " Du bist nicht an der Bank !");
    return 1;
    }
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "NUTZUNG: /Abheben [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: /Abheben [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;
    }


    So funktionierts.