Fraktionsränge | Invit - Uninvite

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 Community ;)


    Nach langer Versuchung und suche hier im Forum fand ich leider keine Lösung.
    Ich habe bisher ein einfaches Fraktionssystem, d.h das ein Admin einen anderen Spieler mit dem Befehl /invite in die Fraktion packen kann:
    dcmd(invite,6, cmdtext);
    dcmd_invite(playerid, params[])
    {
    new pid, frakid;
    if(sscanf(params,"ud",pid,frakid))
    {
    return SendClientMessage(playerid,ROT,"Verwendung : /invite [ID] [Fraktions ID]");
    }
    if(frakid > 10)
    {
    return SendClientMessage(playerid,ROT,"Soviele Fraktionen gibt es nicht!");
    }
    if(IstSpielerAdmin(playerid, 5))
    {
    if(pid == INVALID_PLAYER_ID)
    {
    return SendClientMessage(playerid,ROT,"Ungültiger Spieler!");
    }
    if(IstSpielerInFraktion(pid,frakid) == frakid)
    {
    return SendClientMessage(playerid,ROT,"Der angegebene Spieler ist schon in dieser Fraktion!");
    }
    else
    {
    sSpieler[pid][Fraktion] = frakid;
    SendClientMessage(pid,GRUEN,"Du bist nun in einer Fraktion!");
    SendClientMessage(playerid,GRUEN,"Du hast den Spieler erfolgreich in die Fraktion eingeladen!");
    }
    }
    else
    {
    return SendClientMessage(playerid,ROT,"Du bist kein Admin!");
    }
    return 1;
    }


    Fraktionen habe ich so definiert:
    #define sFraktion "LSPD"
    #define sFrakion2 "SFPD"
    #define sFraktion3 "LVPD"


    Ich hoffe es kann mir einer helfen ;)
    Muss nicht umbedingt dcmd sein aber wäre gut.


    Vielen Dank im vorraus
    MfG
    Ryder558

  • Hast du kein Makeleader Command?
    Bau den Befehl dazu um und dann reden wir weiter üben In /-Uninvite


    MfG

  • So habe ich sie definiert:


    stock IstSpielerInFraktion(playerid, fraktionsid)
    {
    if(sSpieler[playerid][Fraktion] == fraktionsid) return 1;
    return 0;
    }


    //edit
    Makeleader ist ja kein Probleme einfach das invite in Makeleader umbenennen.

  • Ich möchte es so haben, dass eine Fraktion Ränge hat. z.B Rang 1-10 oder so.
    Nur Rang 10 können inviten so als Beispiel.
    Und das der Rang 10 auch uninviten kann. Sobald er uninvitet ist der uninvitete Spieler wieder Zivilist.
    Woran ich noch scheitere ist, den Rängen Namen zu geben z.B beim LSPD Rang 1 = Praktikant.
    Danke im Vorraus.