Wie Geld abziehen lassen?

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 Tag,


    Es geht um folgenden Befehl:

    forward Abholen2(playerid);
    public Abholen2(playerid)
    {
    new Drugcars = GetPlayerVehicleID(playerid);
    if(Drug[playerid] == 4 && GetVehicleModel(GetPlayerVehicleID(playerid)) == 498)
    {
    SendClientMessage(playerid, COLOR_WHITE,"");
    SendClientMessage(playerid, COLOR_WHITE,"");
    SendClientMessage(playerid, COLOR_WHITE,"");
    SendClientMessage(playerid, COLOR_WHITE,"");
    SendClientMessage(playerid, COLOR_WHITE,"");
    SendClientMessage(playerid, COLOR_WHITE,"");
    SendClientMessage(playerid, COLOR_LIGHTBLUE,"Jack: Danke für deine Fahrt.");
    SendClientMessage(playerid, COLOR_LIGHTBLUE,"Jack: Hier habe ich für dich was.");
    Drug[playerid] = 0;
    SetVehicleToRespawn(Drugcars);
    SetPlayerPos(playerid, 1866.4332,-1859.7687,13.6000);
    PlayerInfo[playerid][pDrugs] += 15;
    SendClientMessage(playerid, COLOR_PURPLE,"*Jack überreicht dir 15g Marioana.");
    }
    return 1;
    }



    Ich möchte, dass bei der Ausführung automatisch 1500 Dollar abgezogen werden.
    Aber man sollte nicht ins Minus gehen können.


    Liebe GRüße
    Mr.X


    Diese Signatur wird erneuert.
    Bitte haben Sie ein wenig geduld...



  • Hallo :)


    Ich habe das nun so gemacht:

    if(strcmp(cmd, "/drugs", true) == 0)
    {
    if(PlayerInfo[playerid][pJob] == 4 && Drug[playerid] == 0)
    {
    if(IsPlayerInRangeOfPoint(playerid, 3.0, 1866.4332,-1859.7687,13.6000))
    {
    SendClientMessage(playerid, COLOR_WHITE,"");
    SendClientMessage(playerid, COLOR_WHITE,"");
    SendClientMessage(playerid, COLOR_WHITE,"");
    SendClientMessage(playerid, COLOR_WHITE,"");
    SendClientMessage(playerid, COLOR_WHITE,"");
    SendClientMessage(playerid, COLOR_LIGHTBLUE,"Jack: Moin, du möchtest Drogen bekommen?!");
    SendClientMessage(playerid, COLOR_LIGHTBLUE,"Jack: Kein Problem, ich hab da was für dich. Aber du musst was für mich abholen.");
    SetPlayerCheckpoint(playerid, 2705.3472,-1275.7703,58.0565, 5.0);
    SendClientMessage(playerid, COLOR_LIGHTBLUE,"Jack: Ich habe dir ein Checkpoint gesetzt, damit du weißt, wohin du musst.");
    SendClientMessage(playerid, COLOR_LIGHTBLUE,"Jack: Hinter dem Zaun steht ein Fahrzeug, nehm dir eins.");
    SendClientMessage(playerid, COLOR_LIGHTBLUE,"Jack: Wenn noch keins steht, warte einfach einen Momment.");
    SendClientMessage(playerid, COLOR_GRAD2,"Dir wurden 1500 Dollar für die Drogen abgezogen!");
    if(GetPlayerMoney(playerid) <1500) return SendClientMessage(playerid,COLOR_GRAD2,"Du hast nicht soviel Geld.");
    Drug[playerid] = 1;
    }
    else
    {
    SetPlayerCheckpoint(playerid,1866.508,-1860.010,13.181, 5.0);
    SendClientMessage(playerid, COLOR_GRAD2,"Du bist kein Drogendealer oder bist nicht am Drogen Punkt!");
    SendClientMessage(playerid, COLOR_GRAD2,"Es wurde ein Checkpoint gesetzt!");
    }
    }
    return 1;
    }


    Wenn man nicht genügend Geld hat, kommt halt die Nachricht, ist richtig.
    Alles gut.
    Nur wenn man genug hat, dann wird kein Geld abgezogen.
    Woran liegt das oder was fehlt noch?



    Liebe Grüße und Vielen Dank
    Mr.X


    Diese Signatur wird erneuert.
    Bitte haben Sie ein wenig geduld...



  • Du musst die Function einfühen,
    wenn alles richtig ist, GivePlayerMoney(playerid, -1500);


    Wichtig - sonst bekommt er das Geld drauf.

    Wer Rechtschreibfehler findet, darf sie behalten ;)
    -> Forentechniker | WBB Entwickler pn

  • if(GetPlayerMoney(playerid) -1500)return SendClientMessage(playerid,COLOR,"Dir wurden 1500$ für Drogen abgezogen!
    Drug[playerid] = 1;
    }
    else
    {
    SendClientMessgae(playerid,COLOR,"Du bist entweder nicht am Punkt oder hast nicht genug geld

    graphics frontend web

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Könnte mir jemand den Befehl so machen, wie er sein muss?
    Also nur so, dass ich ihn kopieren muss?


    Weil es ist nun ein neues Problem.
    Das mit dem Geld passt alles, nur auch wenn dort kommt "Du hast nicht genügend Geld", dann wird zwar nichts abgezogen,
    aber der Checkpoint wird trd gesetzt.



    Liebe Grüße
    Mr.X


    Diese Signatur wird erneuert.
    Bitte haben Sie ein wenig geduld...



  • so müsste es gehen ..
    if(strcmp(cmd, "/drugs", true) == 0)
    {
    if(PlayerInfo[playerid][pJob] == 4 && Drug[playerid] == 0)
    {
    if(IsPlayerInRangeOfPoint(playerid, 3.0, 1866.4332,-1859.7687,13.6000))
    {
    if(GetPlayerMoney(playerid) <1500)
    {
    SendClientMessage(playerid, COLOR_WHITE,"");
    SendClientMessage(playerid, COLOR_WHITE,"");
    SendClientMessage(playerid, COLOR_WHITE,"");
    SendClientMessage(playerid, COLOR_WHITE,"");
    SendClientMessage(playerid, COLOR_WHITE,"");
    SendClientMessage(playerid, COLOR_LIGHTBLUE,"Jack: Moin, du möchtest Drogen bekommen?!");
    SendClientMessage(playerid, COLOR_LIGHTBLUE,"Jack: Kein Problem, ich hab da was für dich. Aber du musst was für mich abholen.");
    SetPlayerCheckpoint(playerid, 2705.3472,-1275.7703,58.0565, 5.0);
    SendClientMessage(playerid, COLOR_LIGHTBLUE,"Jack: Ich habe dir ein Checkpoint gesetzt, damit du weißt, wohin du musst.");
    SendClientMessage(playerid, COLOR_LIGHTBLUE,"Jack: Hinter dem Zaun steht ein Fahrzeug, nehm dir eins.");
    SendClientMessage(playerid, COLOR_LIGHTBLUE,"Jack: Wenn noch keins steht, warte einfach einen Momment.");
    SendClientMessage(playerid, COLOR_GRAD2,"Dir wurden 1500 Dollar für die Drogen abgezogen!");
    Drug[playerid] = 1;
    }
    else
    {
    SendClientMessage(playerid,COLOR_GRAD2,"Du hast nicht soviel Geld.");
    }
    }
    else
    {
    SetPlayerCheckpoint(playerid,1866.508,-1860.010,13.181, 5.0);
    SendClientMessage(playerid, COLOR_GRAD2,"Du bist kein Drogendealer");
    }
    }
    else
    {
    SendClientMessage(playerid,COLOR_GRAD2,"Du bist nicht am Drogen Punkt!");
    }
    return 1;
    }