[help] Als Leader nur in der eigenen Fraktion den Rank der Member ändern

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
  • Moin Jungs,


    Ich bin gerade dabei die Ränge der Fraktionen zu erstellen und jetzt hab ich ein Problem.
    Wenn man Leader ist kann man im Moment die Ränge jeder Member in jeder Fraktion ändern.


    hier mein cmd


    ocmd:giverank(playerid,params[])
    {
    if(!hasplayerafraklevel(playerid,5)) return SendClientMessage(playerid,Rot,"Du bist kein Leader!");
    new pID,level,string[128],fraktid;
    if(sscanf(params,"ui",pID,level))return SendClientMessage(playerid,hellblau,"/giverank [spieler] [level]");
    if(!isPlayerInFrakt(pID,fraktid))return SendClientMessage(playerid,Rot,"Der Spieler ist nicht deiner Fraktion!");
    SetPVarInt(pID,"Fraklevel",level);
    SpielerSpeichern(pID);
    format(string,sizeof(string),"%s hat jetzt den Rank %d",SpielerName(pID),level);
    SendClientMessage(pID,Rot,string);
    return 1;
    }



    Ich denke ich muss hier irgendwas ändern:
    if(!isPlayerInFrakt(pID,fraktid))return SendClientMessage(playerid,Rot,"Der Spieler ist nicht deiner Fraktion!");



    MfG


    Marksman

  • Ahhh okay, danke für die schnelle Antwort :)


    Ich habs jetzt:


    ocmd:giverank(playerid,params[])
    {
    if(!hasplayerafraklevel(playerid,5)) return SendClientMessage(playerid,Rot,"Du bist kein Leader!");
    new pID,level,string[128];
    if(sscanf(params,"ui",pID,level))return SendClientMessage(playerid,hellblau,"/giverank [spieler] [level]");
    if(!GetPVarInt(pID,"Fraktion"))return SendClientMessage(playerid,Rot,"Der Spieler ist nicht in deiner Fraktion");
    SetPVarInt(pID,"Fraklevel",level);
    SpielerSpeichern(pID);
    format(string,sizeof(string),"%s hat jetzt den Rank %d",SpielerName(pID),level);
    SendClientMessage(pID,Rot,string);
    return 1;
    }