Geld abziehen

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
  • Hay,
    Habe nun ein /buylevel Command erstellt, die if-Abfragen funktionieren soweit aber dem Spieler wird das Geld nicht abgezogen:
    ocmd:buylevel(playerid,params[])
    {
    new Playerdatei[128];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Playerdatei,sizeof(Playerdatei),"/Accounts/%s.ini",name);
    if(dini_Int(Playerdatei,"Level")==1)
    {
    if(dini_Int(Playerdatei,"Respektpunkte")>=8)
    {
    if(GetPlayerMoney(playerid)>=5000)
    {
    dini_IntSet(Playerdatei,"Level",2);
    dini_IntSet(Playerdatei,"Respektpunkte",0);
    SetPlayerScore(playerid,2);
    SendClientMessage(playerid,Orange,"Du bist nun Level 2!");
    GivePlayerMoney(playerid,-5000);
    return 1;
    }
    else return SendClientMessage(playerid,Rot,"Du hast nicht genügend Geld! Du brauchst 5000 $!");
    }
    else return SendClientMessage(playerid,Rot,"Du hast nicht genügend Respektpunkte! Du brauchst mindestens 8.");
    }
    return 1;
    }
    Wie man sieht habe ich
    GivePlayerMoney(playerid,-5000);
    eingefügt, aber trotzdem wird mir kein Geld abgezogen...
    Greetz

    Greetz

  • ocmd:buylevel(playerid,params[])
    {
    new Playerdatei[128];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Playerdatei,sizeof(Playerdatei),"/Accounts/%s.ini",name);
    if(dini_Int(Playerdatei,"Level")==1)
    {
    if(dini_Int(Playerdatei,"Respektpunkte")>=8)
    {
    if(GetPlayerMoney(playerid)>=5000)
    {
    dini_IntSet(Playerdatei,"Level",2);
    dini_IntSet(Playerdatei,"Respektpunkte",0);
    SetPlayerScore(playerid,2);
    SendClientMessage(playerid,Orange,"Du bist nun Level 2!");
    GivePlayerMoney(playerid,-5000);
    }
    else
    {
    SendClientMessage(playerid,Rot,"Du hast nicht genügend Geld! Du brauchst 5000 $!");
    return 1;
    }
    }
    else
    {
    SendClientMessage(playerid,Rot,"Du hast nicht genügend Respektpunkte! Du brauchst mindestens 8.");
    return 1;
    }


    }
    return 1;
    }


    versuch mal so. bin mir nicht sicher obs klappt. aber einfach mal testen ;)



    //edit


    ist nicht richtig eingerückt. sorry :huh:


    //edit 2


    versuch nr. 2 auch gescheitert. ich hasse diesen quellcode. hoffe du kannst damit trotzdem was anfangen