/admins buggt

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
  • ocmd:admins(playerid,params[])
    {
    new clas[128];
    SendClientMessage(playerid,BLAU,"Admins Online:");
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IstSpielerAdmin(i,1))
    format(clas,sizeof(clas),"Probe-Supporter: %s",SpielerName(i)),SendClientMessage(playerid,weis,clas);
    else if(IstSpielerAdmin(i,2))
    format(clas,sizeof(clas),"Supporter: %s",SpielerName(i)),SendClientMessage(playerid,weis,clas);
    else if(IstSpielerAdmin(i,3))
    format(clas,sizeof(clas),"Moderator: %s",SpielerName(i)),SendClientMessage(playerid,weis,clas);
    else if(IstSpielerAdmin(i,4))
    format(clas,sizeof(clas),"Super-Moderator: %s",SpielerName(i)),SendClientMessage(playerid,weis,clas);
    else if(IstSpielerAdmin(i,5))
    format(clas,sizeof(clas),"Admin: %s",SpielerName(i)),SendClientMessage(playerid,weis,clas);
    else if(IstSpielerAdmin(i,6))
    format(clas,sizeof(clas),"stelv.Projektleitung: %s",SpielerName(i)),SendClientMessage(playerid,weis,clas);
    else if(IstSpielerAdmin(i,7))
    format(clas,sizeof(clas),"Projektleitung: %s",SpielerName(i)),SendClientMessage(playerid,weis,clas);
    }
    return 1;
    }


    Obwohl ich Projektleiter bin steht Probe-Supporter warum?!°

  • Ich gehe mal davon aus, dass dein IstSpielerAdmin überprüft, ob der Spieler den Rank hat, oder drüber ist.
    Wenn das der Fall ist, ist das das Problem.


    Du könntest die Abfragen tauschen, dass du zu erst die hohen Level abfragst, und dann die niedrigeren.


    Gruß,
    Neo. :)

  • Das liegt dann daran, dass du das else weg gemacht hast.
    Es muss else if heißen, da sonst alle IF-Abfragen durchgegangen werden.


    Gruß,
    Neo. :)


    €dit:


    Hier noch eine Variante, die ich persönlich besser finde.


    Spoiler anzeigen
    ocmd:admins(playerid, params[])
    {
    new rank[100];
    SendClientMessage(playerid, BLAU,"Admins Online:");
    for(new i=0; i<MAX_PLAYERS;i++)
    {
    if(IstSpielerAdmin(i, 1))
    {
    switch(GetPVarInt(playerid, "admin")) //Admin-Level Abfrage
    {
    case 1: { format(clas,sizeof(clas),"Probe-Supporter: %s",SpielerName(i)),SendClientMessage(playerid,weis,clas); }
    case 2: { format(clas,sizeof(clas),"Supporter: %s",SpielerName(i)),SendClientMessage(playerid,weis,clas); }
    case 3: { format(clas,sizeof(clas),"Moderator: %s",SpielerName(i)),SendClientMessage(playerid,weis,clas); }
    case 4: { format(clas,sizeof(clas),"Super-Moderator: %s",SpielerName(i)),SendClientMessage(playerid,weis,clas); }
    case 5: { format(clas,sizeof(clas),"Admin: %s",SpielerName(i)),SendClientMessage(playerid,weis,clas); }
    case 6: { format(clas,sizeof(clas),"stelv. Projektleitung: %s",SpielerName(i)),SendClientMessage(playerid,weis,clas); }
    case 7: { format(clas,sizeof(clas),"Projektleitung: %s",SpielerName(i)),SendClientMessage(playerid,weis,clas); }
    }
    }
    }
    return 1;
    }


    Einmal editiert, zuletzt von DasNeo () aus folgendem Grund: Pwn-Code

  • ocmd:admins(playerid,params[])
    {
    new text[256];
    new string[500],name[MAX_PLAYER_NAME],var,level;
    for(new i=0;i<MAX_PLAYERS;i++)
    {
    if(IsPlayerConnected(i) && isPlayerAnAdmin(i,1))
    {
    if(GetPVarInt(i,"Adminlevel")==1) {text = "Moderator"; }
    if(GetPVarInt(i,"Adminlevel")==2) {text = "Lite Admin"; }
    if(GetPVarInt(i,"Adminlevel")==3) {text = "Admin"; }
    if(GetPVarInt(i,"Adminlevel")==4) {text = "Full Admin"; }
    if(GetPVarInt(i,"Adminlevel")==5) {text = "Server Leader"; }
    format(string, sizeof(string), "%s{F5FF00}%s (ID: %d) - {2DFF00}Level %d {F00000}(%s)\n",string,PlayerName(i),i,GetPVarInt(i,"Adminlevel"),text);
    var++;
    }
    }
    if(!var)
    {
    ShowPlayerDialog(playerid,0,DIALOG_STYLE_MSGBOX,"{F00000}Admins","{F00000}Zur Zeit sind keine Admins online!","Ok","");
    }else
    {
    ShowPlayerDialog(playerid,0,DIALOG_STYLE_MSGBOX,"{F00000}Admins",string,"Ok","");
    }
    return 1;
    }


    Probier' das mal, das musst Du natürlich auf Dein Script anpassen. ;)

  • ocmd:admins(playerid,params[])
    {
    new clas[128];
    SendClientMessage(playerid,BLAU,"Admins Online:");
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IstSpielerAdmin(i,7))
    format(clas,sizeof(clas),"Projektleitung: %s",SpielerName(i)),SendClientMessage(playerid,weis,clas);
    else if(IstSpielerAdmin(i,6))
    format(clas,sizeof(clas),"stelv.Projektleitung: %s",SpielerName(i)),SendClientMessage(playerid,weis,clas);
    else if(IstSpielerAdmin(i,5))
    format(clas,sizeof(clas),"Admin: %s",SpielerName(i)),SendClientMessage(playerid,weis,clas);
    else if(IstSpielerAdmin(i,4))
    format(clas,sizeof(clas),"Super-Moderator: %s",SpielerName(i)),SendClientMessage(playerid,weis,clas);
    else if(IstSpielerAdmin(i,3))
    format(clas,sizeof(clas),"Moderator: %s",SpielerName(i)),SendClientMessage(playerid,weis,clas);
    else if(IstSpielerAdmin(i,2))
    format(clas,sizeof(clas),"Supporter: %s",SpielerName(i)),SendClientMessage(playerid,weis,clas);
    else if(IstSpielerAdmin(i,1))
    format(clas,sizeof(clas),"Probe-Supporter: %s",SpielerName(i)),SendClientMessage(playerid,weis,clas);
    }
    return 1;
    }
    ;)