/makeadmin (strcmp) funktioniert nicht richtig

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
  • Also ich hab hier:


    if(strcmp(cmd, "/makeadmin", true) == 0)
    {
    if(Spieler[playerid][Admin] >= 3)
    if(IsPlayerConnected(playerid))
    {
    new tmp[256], tmp2[256], idx; tmp = strtok(cmdtext,idx), tmp2 = strtok(cmdtext,idx);
    tmp = strtok(cmdtext, idx);
    new player1, level, playername[MAX_PLAYER_NAME], adminname[MAX_PLAYER_NAME], string[128];
    player1 = strval(tmp);
    level = strval(tmp2);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, 0xFFFF00FF, "Nutze: /makeadmin [spielerid] [level]");
    }
    else
    {
    if(Spieler[playerid][Admin] >= 3)
    {
    if(IsPlayerConnected(playerid))
    {
    GetPlayerName(player1, playername, sizeof(playername)); GetPlayerName(playerid, adminname, sizeof(adminname));
    format(string,sizeof(string),"Du hast %s zum Admin Level [%d] gemacht", playername, level);
    SendClientMessage(playerid, 0xFFFF00FF, string);
    format(string,sizeof(string),"Admin %s machte %s zum Admin. Level [%d]",adminname, playername, level);
    SendClientMessageToAll(0xFFFF00FF, string);
    Spieler[playerid][Admin] = level;
    return 1;
    }
    return 1;
    }
    }
    }
    }


    Das und wenn ich ingame /makeadmin ID und ein Level eingebene macht der server mich(nur mich auch bei ID eingabe !) immer ein Level niedriger 8|

  • Yo,
    Also ich gebe dir einfach mal mein Makeadmin Befehl


    if(strcmp(cmd, "/makeadmin", true) == 0)
    {
    if(SpielerInfo[playerid][pAdmin] == 1338)
    {
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "Benutze: /makeadmin [ID] [Level]");
    return 1;
    }
    new para1 = ReturnUser(tmp);
    tmp = strtok(cmdtext, idx);
    new level = strval(tmp);
    if(IsPlayerConnected(para1))
    {
    if(para1 != INVALID_PLAYER_ID)
    {
    GetPlayerName(para1, giveplayer, sizeof(giveplayer));
    GetPlayerName(playerid, sendername, sizeof(sendername));
    if(SpielerInfo[para1][pAdmin] < level)
    {
    printf("AdmCmd: %s hat %s zu einem Level %d Admin befördert.", sendername, giveplayer, level);
    format(string, sizeof(string), " Du wurdest durch %s zu einem Level %d Admin befördert", sendername, level);
    SendClientMessage(para1, COLOR_LIGHTBLUE, string);
    format(string, sizeof(string), " Du hast %s zu einem Level %d Admin befördert.", giveplayer,level);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
    for(new i=0; i<MAX_PLAYERS; i++)
    {
    if(SpielerInfo[i][pAdmin] >= 1)
    {
    format(string, sizeof(string), " %s hat %s zu einem Admin Level %d befördert!", sendername, giveplayer, level);
    SendClientMessage(i, COLOR_LIGHTBLUE, string);
    }
    }
    }
    else
    {
    printf("AdmCmd: %s hat %s zu einem Level %d Admin degradiert.", sendername, giveplayer, level);
    format(string, sizeof(string), " Du wurdest durch %s zu einem Level %d Admin degradiert", sendername, level);
    SendClientMessage(para1, COLOR_LIGHTBLUE, string);
    format(string, sizeof(string), " Du hast %s zu einem Level %d Admin degradiert.", giveplayer,level);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
    for(new i=0; i<MAX_PLAYERS; i++)
    {
    if(SpielerInfo[i][pAdmin] >= 1)
    {
    format(string, sizeof(string), " %s hat %s zu einem Admin Level %d degradiert!", sendername, giveplayer, level);
    SendClientMessage(i, COLOR_LIGHTBLUE, string);
    }
    }
    }
    SpielerInfo[para1][pAdmin] = level;
    }
    }
    }
    else
    {
    SendClientMessage(playerid,COLOR_GRAD2," Das Vergeben und Entziehen von Adminrechten ist nur für Admins möglich!");
    }
    return 1;
    }


    Du musst das halt mit "SpielerInfo" in Spieler umschreiben


    Mein Schatz:*

  • Yo,
    Du musst das halt mit "SpielerInfo" in Spieler umschreiben


    imo post unsinnvoll vll benutzt er selfmade / gf?
    bei gf ists PlayerInfo
    bei selfmade ists meistens SpielerInfo / Spieler / Player / PlayerInfo / oder ähnliches
    vll fragst du auch einfach falsch ab bei den admin befehlen :D

  • Zitat

    imo post unsinnvoll vll benutzt er selfmade / gf?
    bei gf ists PlayerInfo
    bei selfmade ists meistens SpielerInfo / Spieler / Player / PlayerInfo / oder ähnliches
    vll fragst du auch einfach falsch ab bei den admin befehlen :D

    Ich benutzte Selfmade und bei mir ist es Spieler[playerid][Admin] etc. :thumbup: