/giverang ?!

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 Leute,


    wenn ich mit /giverang einen Befördern will, klappt es nicht egal bei welcher Fraktion.

    Wenn ich Leader bin kann ich mich selbst befördern, aber nicht die anderen.


    Wodran liegt das Problem?


    if(strcmp(cmd, "/giverank", true) == 0 || strcmp(cmd, "/giverang", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "NUTZUNG: /giverang [playerid] [Rang(1-6)]");
    return 1;
    }
    new para1;
    new level;
    para1 = ReturnUser(tmp);
    tmp = strtok(cmdtext, idx);
    level = strval(tmp);
    if(level > 12 || level < 0) { SendClientMessage(playerid, COLOR_GREY, "Ränge gehen nur von 1 bis 12!"); return 1; }
    if (PlayerInfo[playerid][pLeader] >= 1)
    {
    if(IsPlayerConnected(para1))
    {
    if(para1 != INVALID_PLAYER_ID)
    {
    if(PlayerInfo[playerid][pLeader] == PlayerInfo[para1][pMember] && PlayerInfo[playerid][pAdmin] <= 4)
    {
    GetPlayerName(para1, giveplayer, sizeof(giveplayer));
    GetPlayerName(playerid, sendername, sizeof(sendername));
    PlayerInfo[para1][pRank] = level;
    format(string, sizeof(string), " Du wurdest von %s zum Rang %d gemacht",sendername,level);
    SendClientMessage(para1, COLOR_LIGHTBLUE, string);
    format(string, sizeof(string), " Du hast %s Rang %d gegeben.",giveplayer,level);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
    }
    else if(PlayerInfo[playerid][pLeader] == PlayerInfo[para1][pLeader])
    {
    GetPlayerName(para1, giveplayer, sizeof(giveplayer));
    GetPlayerName(playerid, sendername, sizeof(sendername));
    PlayerInfo[para1][pRank] = level;
    format(string, sizeof(string), " Du wurdest von %s zum Rang %d gemacht",sendername,level);
    SendClientMessage(para1, COLOR_LIGHTBLUE, string);
    format(string, sizeof(string), " Du hast %s Rang %d gegeben.",giveplayer,level);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
    }
    else if(PlayerInfo[playerid][pAdmin] >= 1337)
    {
    GetPlayerName(para1, giveplayer, sizeof(giveplayer));
    GetPlayerName(playerid, sendername, sizeof(sendername));
    PlayerInfo[para1][pRank] = level;
    format(string, sizeof(string), " Du wurdest von %s zum Rang %d gemacht",sendername,level);
    SendClientMessage(para1, COLOR_LIGHTBLUE, string);
    format(string, sizeof(string), " Du hast %s Rang %d gegeben.",giveplayer,level);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
    }
    else
    {
    SendClientMessage(playerid, COLOR_GRAD1, "Du bist nicht der Leader des Spielers!");
    }
    }
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GRAD1, " Du darfst diesen Befehl nicht benutzen(Nur Leader)!");
    }
    }
    return 1;
    }


    Wenn ich ein Befördern will steht da:


    " Du bist nicht Leader des Spielers!"

  • Schreibe das mal so:



    if(strcmp(cmd, "/giverank", true) == 0 || strcmp(cmd, "/giverang", true) == 0)
    {
    if(!IsPlayerConnected(playerid)) return SendClientMessage(playerid, COLOR_GREY,"Du bist noch nicht connected !");
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_GREY,"NUTZUNG: /giverang [playerid] [Rang(1-12)]");
    new para1, level;
    para1 = ReturnUser(tmp);
    tmp = strtok(cmdtext, idx);
    level = strval(tmp);
    if(level > 12 || level < 0) return SendClientMessage(playerid, COLOR_GREY, "Ränge gehen nur von 1 bis 12!");
    if (PlayerInfo[playerid][pLeader] == 0) return SendClientMessage(playerid, COLOR_GREY,"Du bist kein Leader !");
    if(!IsPlayerConnected(para1)) return SendClientMessage(playerid, COLOR_GREY,"Dieser Spieler ist nicht online !");
    if(PlayerInfo[playerid][pLeader] == PlayerInfo[para1][pMember] || PlayerInfo[playerid][pAdmin] >= 1337)
    {
    GetPlayerName(para1, giveplayer, sizeof(giveplayer));
    GetPlayerName(playerid, sendername, sizeof(sendername));
    PlayerInfo[para1][pRank] = level;
    format(string, sizeof(string), " Du wurdest von %s zum Rang %d gemacht",sendername,level);
    SendClientMessage(para1, COLOR_LIGHTBLUE, string);
    format(string, sizeof(string), " Du hast %s Rang %d gegeben.",giveplayer,level);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
    }
    else return SendClientMessage(playerid, COLOR_GREY,"Dieser Spieler ist nicht in deiner Fraktion !");
    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