/admins oder /member

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
  • Nun ich will einen befehl machen mit dem ich eine bestimmte gruppe an leuten anzeigen kann(zb. die Cops)


    for(new i=0; i<GetMaxPlayers; i++)
    {
    if(GetPVarInt(playerid,"fraktion")==1)//Beispiel
    {


    }
    //Was muss ich jetzt machen?
    }


    xXSeXyBreaDXx -> BREAD. -> [LoG]Bread -> Bread

  • Ich hab dir mal was gemacht hier
    das ist für alle fraktionen
    ist player in fraktion 1 zeigt er alle an die in 1 sind so ist es dann auch mit 2/3 etc


    bcmd:members(playerid,params[])
    {
    if(GetPVarInt(playerid,"fraktion")==0)return SendClientMessage(playerid,cRed,"Deine Fraktion kann diesen befehl nicht nutzen");
    new message[128];
    SendClientMessage(playerid,cGrey,"=====[Members online]=====");
    for(new i = 0;i<MAX_PLAYERS;i++)
    {
    if(GetPVarInt(i,"fraktion")==GetPVarInt(playerid,"fraktion"))
    {
    format(message,sizeof message,"Member %s",PlayerName(i));
    SendClientMessage(playerid,cGangchat,message);
    }
    }
    return 1;
    }

    All in all it's just another brick in the wall

  • kommt an als was du es ausgeben willst nur als Text oder in einer MSGbox.


    Nur als text reicht dir ein formatierter String


    zum Beispiel:

    new string[64], pName[MAX_PLAYER_NAME];
    GetPlayerName(i,pName,sizeof(pName));
    format(string,sizeof(string),"%s | Rang: %d",pName,SpielerInfo[i][Rang]);
    SendClientMessage(playerid,Farbe,string);


    also hier sendest du einen fomratierten string mit dem Namen und gegebfalls den Rang an den spieler welcher den command eingeben wird.
    %s steht hier für den string pName, %d für eine Zahl.


    bei strins kannst du das ganze zusammenfügen jedoch bedenken das man dann einen Zeilenbruch brauch /n oder ~n~ je nach dem ob MSG box oder
    Textdraw.
    und zum Syntex ist strins so aufgebaut das du einen großen string erstellen musst wo die nebenstrings zusammen geführt werden.
    Beispiel:


    new string[64], pName[MAX_PLAYER_NAME],string2[256];


    GetPlayerName(i,pName,sizeof(pName));


    format(string,sizeof(string),"%s | Rang: %d/n",pName,SpielerInfo[i][Rang]);


    strins(string2,string,0);


    //edit


    @ sHain dein lösung ist nicht richtig
    GetPlayerName(playerid,name,sizeof(name));
    if(GetPVarInt(playerid,"fraktion")==1)//Beispiel


    hier gehst du den spieler durch der den command eingeben hat nicht die anderen also playerid durch i ersetzen


    @ xXSeXyBreaDXx
    schau dir da eher -Chris sein commadn beispiel an das ist so richtig.


    //edit 2
    ahja das habe ich vergessen nicht
    GetMaxPlayers;
    sonder
    GetMaxPlayers();


    schnellste variante
    new i;
    for(; i < GetMaxPlayers(); i++)


    aller beste such die foreach include by Y-Less

  • habe dabei mal eine frage ? ich habe vor sleber so ein Befehl zu erstellen aber


    new string[64], pName[MAX_PLAYER_NAME];
    GetPlayerName(i,pName,sizeof(pName));
    format(string,sizeof(string),"%s | Rang: %d",pName,SpielerInfo[i][Rang]); // wird da nicht nur 1 Member angezeigt oder führt später einfahr so eine liste .. also
    SendClientMessage(playerid,Farbe,string);


    .. Member 1
    Member 2
    usw .. ?