Probem mit /selldrugs

In 10 Minuten startet der nächtliche Backupvorgang! Es kann währenddessen (ca. 10 Minuten) zu Einschränkungen bei der Nutzung des Forums kommen
Weitere Infos findet ihr im Thema Backup des Forums
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 Morgen,
    ich habe ein Problem mit meinem Selldrugsbefehl:
    dcmd_selldrugs(playerid,params[])
    {
    new Menge;


    if(sscanf(params, "d", Menge))
    {
    SendClientMessage(playerid,COLOR_RED,"Benutzung: /selldrugs [Menge]");
    }

    if (Menge < 1 )
    {
    return SendClientMessage(playerid,COLOR_RED,"Du musst mindestens 1 g Dorgen verkaufen");
    }


    if(SpielerInfo[playerid][drugs] == 0)
    {
    return SendClientMessage(playerid, Rot, "Du hast keine Drogen mehr bei dir");
    }


    if(IsPlayerInRangeOfPoint(playerid, 10, 2399.3516,1842.1266,5.7427))
    {
    if(SpielerInfo[playerid][job] == 4 )
    {
    GivePlayerMoney(playerid, 1000*Menge);
    SpielerInfo[playerid][drugs] = Menge;
    new string[256];
    format(string, sizeof(string), "Du hast %d g Drogen verkauft", Menge);
    SendClientMessage(playerid, COLOR_RED, string);
    }
    else
    {
    return SendClientMessage(playerid,COLOR_RED,"Du bist nicht am Abgabepunkt");
    }
    }
    return 1;
    }


    Soo wie kann ich es machen,
    dass bei
    SpielerInfo[playerid][drugs] = Menge;
    Die Menge abgezogen wird?
    Thx im Vorraus.
    MfG Ber912

  • Guten Morgen, versuche es mal so:


    dcmd_selldrugs(playerid,params[])
    {
    new Menge;


    if(sscanf(params, "d", Menge))
    {
    SendClientMessage(playerid,COLOR_RED,"Benutzung: /selldrugs [Menge]");
    }

    if (Menge < 1 )
    {
    return SendClientMessage(playerid,COLOR_RED,"Du musst mindestens 1 g Dorgen verkaufen");
    }


    if(SpielerInfo[playerid][drugs] == 0)
    {
    return SendClientMessage(playerid, Rot, "Du hast keine Drogen mehr bei dir");
    }


    if(IsPlayerInRangeOfPoint(playerid, 10, 2399.3516,1842.1266,5.7427))
    {
    if(SpielerInfo[playerid][job] == 4 )
    {
    GivePlayerMoney(playerid, 1000*Menge);
    SpielerInfo[playerid][drugs] = -Menge;
    new string[256];
    format(string, sizeof(string), "Du hast %d g Drogen verkauft", Menge);
    SendClientMessage(playerid, COLOR_RED, string);
    }
    else
    {
    return SendClientMessage(playerid,COLOR_RED,"Du bist nicht am Abgabepunkt");
    }
    }
    return 1;
    }

  • Dann versuche es so:


    dcmd_selldrugs(playerid,params[])
    {
    new Menge;


    if(sscanf(params, "d", Menge))
    {
    SendClientMessage(playerid,COLOR_RED,"Benutzung: /selldrugs [Menge]");
    }

    if (Menge < 1 )
    {
    return SendClientMessage(playerid,COLOR_RED,"Du musst mindestens 1 g Dorgen verkaufen");
    }


    if(SpielerInfo[playerid][drugs] == 0)
    {
    return SendClientMessage(playerid, Rot, "Du hast keine Drogen mehr bei dir");
    }


    if(IsPlayerInRangeOfPoint(playerid, 10, 2399.3516,1842.1266,5.7427))
    {
    if(SpielerInfo[playerid][job] == 4 )
    {
    GivePlayerMoney(playerid, 1000*Menge);
    SpielerInfo[playerid][drugs] -=Menge;
    new string[256];
    format(string, sizeof(string), "Du hast %d g Drogen verkauft", Menge);
    SendClientMessage(playerid, COLOR_RED, string);
    }
    else
    {
    return SendClientMessage(playerid,COLOR_RED,"Du bist nicht am Abgabepunkt");
    }
    }
    return 1;
    }



    Hasst du etwas was neben bei dein acc Speicher? zb AccountSpeicher(Playeid);?

  • Egal :D Thema kann dann geschlossen werden denke ich.