/admins 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
  • Hallo,
    Ich habe ein Problemm mit dem /admins befehl
    wen ein admin online ist soll im Chat stehen:


    |~~~~~~~~~~|Administratoren|~~~~~~~~~~|
    TheTutoFreak|Administrator|1339


    Und wen keiner online ist soll im Chat stehen:


    Es ist immoment kein Administrator online!


    aber ich weis nicht wie man das scriptet kann mir jemand helfen ?


    PS muss nicht der name sein was da steht :D

  • new admins = 0;
    format(string,sizeof(string),"Admins:");
    for(new i=0;i<MAX_PLAYERS;i++) {
    if(!IsPlayerConnected(i)) continue;
    if(PlayerInfo[i][pAdmin] == 0) continue;
    format(string,sizeof(string),"%s--Was du halt alles abrufen willst--",string);
    Admins++;}


    if(Admins == 0) { SendClientMessage(playerid,Farbe,"Es ist kein Admin online"; return 1; } else { SendClientMessage(playerid,Fabre,string); return 1;}

  • Du musst dir am besten schon einmal das Grundgerüst vom Befehl erstellen.


    ocmd:admins(playerid,params[])
    {
    return 1;
    }
    Danach machst du eine "For - Schleife" durch jeden Spieler.
    for(new i = 0;i<MAX_PLAYERS;i++)
    {


    }


    In der "For - Schleife" fragst du dann ab, ob ob ein Spieler ein Admin ist:
    if(IstSpielerAdmin(i,1))
    {


    }
    oder
    if(GetPVarInt(i,"Adminlevel")>=1)
    {


    }


    Wenn Admins online sind, schreibst du in der "if" Abfrage die Nachricht!


    new string[128];
    format(string,sizeof(string),"%s | Administratoren | %i",SpielerName(i),adminrang);
    SendClientMessage(playerid,FARBE,string);//FARBE = DEINE FARBE!!!


    Und wenn kein Admin online ist, dann schreibst du unter einen der beiden "if" Abfragen:


    else
    {
    SendClientMessage(playerid,FARBE," Es sind momentan keine Administratoren online!");//FARBE = DEINE FARBE!!!
    }


    Ich hoffe das hat die weiter geholfen, aber bei "adminrang" musst du dann oben ein:
    new adminrang[64];
    switch(GetPVarInt(i,"Adminlevel"))
    {
    case 1:{adminrang="1 Adminrang";}
    case 2:{adminrang="2 Adminrang";}
    //usw...
    }
    ocmd:admins(playerid,params[])
    {
    for(new i = 0;i<MAX_PLAYERS;i++)
    {
    if(IstSpielerAdmin(i,1))
    {
    new string[128];
    new adminrang[64];
    switch(GetPVarInt(i,"Adminlevel"))
    {
    case 1:{adminrang="1 Adminrang";}
    case 2:{adminrang="2 Adminrang";}
    //usw...
    }
    format(string,sizeof(string),"%s | Administratoren | %i",SpielerName(i),adminrang);
    SendClientMessage(playerid,FARBE,string);//FARBE = DEINE FARBE!!!
    }
    else
    {
    SendClientMessage(playerid,FARBE," Es sind momentan keine Administratoren online!");//FARBE = DEINE FARBE!!!
    }
    }
    return 1;
    }


  • ocmd:admins(playerid,params[])
    {
    new adminonline = 0;
    for(new i = 0;i<MAX_PLAYERS;i++)
    {
    if(IstSpielerAdmin(i,1))
    {
    adminonline ++;
    new string[128];
    new adminrang[64];
    switch(GetPVarInt(i,"Adminlevel"))
    {
    case 1:{adminrang="1 Adminrang";}
    case 2:{adminrang="2 Adminrang";}
    //usw...
    }
    format(string,sizeof(string),"%s | Administratoren | %i",SpielerName(i),adminrang);
    SendClientMessage(playerid,FARBE,string);//FARBE = DEINE FARBE!!!
    }
    }
    if ( adminonline < 1 ) { SendClientMessage(playerid,FARBE," Es sind momentan keine Administratoren online!"); } //FARBE = DEINE FARBE!!!
    return 1;
    }


    [SoA]TheBester hat das in der For-Schleife abgefragt dadurch wurde auch der Chat zugespamt...