Wie mache ich ein OCMD zu strcmp Befehl?

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
  • ocmd:setadmin(playerid,params[])
    {
    if(!isPlayerAnAdmin(playerid,5))return SendClientMessage(playerid,ROT,"Du bist kein Admin.");
    new pID, rank;
    if(sscanf(params,"ui",pID,rank))return SendClientMessage(playerid,ROT,"/setadmin [spieler] [level]");
    if(rank<1||rank>5)return SendClientMessage(playerid,ROT,"Bitte gültigen Rang angeben.");
    SetPVarInt(pID,"Adminlevel",rank);
    SpielerSpeichern(pID);
    SendClientMessageToAll(BLAU,"Es wurde jemand zu Admin gemacht.");
    return 1;
    }




    Ich möchte denn in strcmp ich habe es versucht bekomme aber 12Erros!


  • if(!strcmp(strget(cmdtext, 0), "/makeadmin"))


    {


    if(sSpieler[playerid][Adminlevel] == 5)


    {


    new pID = strval(strget(cmdtext, 1));


    new pAD = strval(strget(cmdtext, 2));


    if(pID == INVALID_PLAYER_ID)


    {


    SendClientMessage(playerid,ROT,"Die ID existiert nicht!");


    }


    if(pAD < 1 || pAD > 5)


    {


    SendClientMessage(playerid,ROT,"Benutze /makeadmin [ID] [Level(1-5)]");


    }


    sSpieler[pID][Adminlevel] == pAD;


    SendClientMessage(playerid,ROT,"Du hast den angegeben Spieler zum Admin gemacht");


    }


    else


    {


    SendClientMessage(playerid,GELB,"Du bist kein Admin!");


    }


    return 1;


    }

  • Man kann es aber auch so machen:


    if(strcmp(cmdtext, "/setadmin", true) == 0)
    {
    if(!isPlayerAnAdmin(playerid,5))return SendClientMessage(playerid,ROT,"Du bist kein Admin.");
    new pID, rank;
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, ROT, "Benutzung: /setadmin [spielerid] [Adminlevel]");
    return 1;
    }
    pID = ReturnUser(tmp);
    tmp = strtok(cmdtext, idx);
    rank = strval(tmp);
    if(IsPlayerConnected(pID))
    {
    if(pID != INVALID_PLAYER_ID)
    {
    if(rank<1||rank>5)return SendClientMessage(playerid,ROT,"Bitte gültigen Rang angeben.");
    SetPVarInt(pID,"Adminlevel",rank);
    SpielerSpeichern(pID);
    new str[128], name[MAX_PLAYER_NAME];
    GetPlayerName(pID, name, sizeof(name));
    format(str, sizeof(str),"Es wurde %s zu Admin gemacht.",name);
    SendClientMessageToAll(BLAU,str);
    }
    }
    return 1;
    }


    mfg. :thumbup:

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S