AdminLevel wird nicht gesetzt

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
  • Die Erklärungen habe ich im Code als Kommentar beigefügt.


    ocmd:setadmin(playerid,params[])
    {
    new number,level;
    if(sscanf(params,"dd", number, level)) return GameTextForPlayer(playerid,"~g~/setadmin ~w~[AccountID] [Level]",2500,1);
    if(level <0 || level>=10) return GameTextForPlayer(playerid,"~g~/setadmin ~w~ [AccountID] [Level]",2500,1); //Hier war ein ~ zu viel = Crash
    new query[256];
    mysql_format(handle, query, sizeof(query), "SELECT Name FROM user WHERE id = '%d'", number); //Du gibst die ID ein, dann nutze diese auch für die Abfrage
    mysql_pquery(handle, query, "SetAdminLevelForPlayer", "ddd", playerid, level, number);
    return 1;
    }


    forward SetAdminLevelForPlayer(playerid, level, number);
    public SetAdminLevelForPlayer(playerid, level, number)
    {
    new rows, string[145], name[MAX_PLAYER_NAME];
    cache_get_row_count(rows);
    if(rows == 0) return SendClientMessage(playerid,-1,"AccountID not found");
    else
    {
    cache_get_value_name(0, "Name", name); //Wir lesen noch den Name aus.
    format(string, sizeof(string), "ADMIN: %s has setted the Admin Level of %s <%d> to %d ", GetName(playerid),name,number,level);
    ABroadCast(0xFFFFA333,string);
    mysql_format(handle, string, sizeof(string), "UPDATE user SET Adminlevel = '%d' WHERE id = '%d'", level,number); //Auch hier, die eingegebene ID nutzen
    mysql_pquery(handle, string);
    return 1;
    }
    }

  • Okay folgende Probleme:


    Erstmal wird die Nachricht nicht gesendet, wenn ich nicht alles richtig gemacht habe


    if(sscanf(params,"dd", number, level)) return GameTextForPlayer(playerid,"~g~/setadmin ~w~[AccountID] [Level]",2500,1);



    (Könnte zur fehlerbehebung beitragen)


    Und egal welche Acc id ich eingebe, es steht immer da "AccID nicht gefunden"






    // Edit



    Zum besseren Verständnis, möchte das Adminlevel eines Spielers ÜBER eine AccountID setzen