Premiumpunkte

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
  • Hallo Community,
    ich habe in meinem Selfmadescript ein kleines System für Premiumpunkte.
    In der Spielerdatei werden dann eben die vorhanden Premiumpunkte gespeichert.
    Für onlinespieler klappt das:



    ocmd:givepoints(playerid,params[])
    {
    if(!IsPlayerAnAdmin(playerid,5))return SendClientMessage(playerid,BLAU,"Dieser Befehl ist nur für Admins freigeschalten.");
    new pID, points, reason[128],string[128],string2[128];
    if(sscanf(params,"uds",pID,points,reason))return SendClientMessage(playerid,BLAU, "Benutze: /givepoints [ID] [Points] [Grund]");
    format(string,sizeof(string),"Admin %s hat dir %i Premiumpunkte eingetragen. (Grund: %s)",Spielername(playerid),points,reason);
    format(string2,sizeof(string2),"Du hast %s %i Premiumpunkte eingetragen. (Grund: %s)",Spielername(pID),points,reason);
    SendClientMessage(pID,ROT,string);
    SendClientMessage(playerid,ROT,string2);
    SetPVarInt(pID, "Premiumpunkte", GetPVarInt(pID, "Premiumpunkte") +points);
    Spielerspeichern(pID);
    return 1;
    }


    Nun möchte ich aber auch, dass dies funktioniert, wenn der User offline ist. Dies wollte ich so umsetzen:



    ocmd:giveoffpoints(playerid,params[])
    {
    if(!IsPlayerAnAdmin(playerid,5))return SendClientMessage(playerid,BLAU,"Dieser Befehl ist nur für Admins freigeschalten.");
    new player, points, reason[128],string[128],datei[128],punkte;
    if(sscanf(params,"sds",player,points,reason))return SendClientMessage(playerid,BLAU, "Benutze: /giveoffpoints [Spieler] [Points] [Grund]");
    format(string,sizeof(string),"Du hast %s %i Premiumpunkte eingetragen. (Grund: %s)",player,points,reason);
    SendClientMessage(playerid,ROT,string);
    format(datei,sizeof(datei),"/Accounts/%s",player);
    punkte = dini_Int(datei,"Premiumpunkte") +points;
    dini_IntSet(datei,"Premiumpunkte",punkte);
    return 1;
    }


    Wenn ich /giveoffpoints eingebe, kommt die Fehlermeldung -> klar.
    Wenn ich /giveoffpoints Rudolf 10 Test eingebe, kommt SERVER: Unknow Command


    Hoffe mir kann jemand helfen.