ocmd: admins. spackt i.wie rum

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
  • Heii Leute,


    wenn ich /admins eingebe kommen die User wo gerade online sind und noch sehr viele leere Zeilen xD Was da los


    ocmd:admins(playerid,params[])
    {
    SendClientMessage(playerid,ROT, "Folgende Admins sind online:");
    for(new i=0; i<GetMaxPlayers(); i++)
    {
    new Admins[50],adminrank[20];
    format(Admins,sizeof(Admins),"- %s %s",SpielerName(i),adminrank);
    SendClientMessage(playerid,GRUEN,Admins);
    }
    return 1;
    }

    • 1. Musst du eine globale Adminvari verwenden.
      Leere Zeilen kommen denke ich mal weil du leere Strings benutzt.
      Abgesehen davon fehlt die Adminabfrage, so werden alle Spieler die online sind angezeigt.

    KleineHilfe 2.0

  • Du musst auch abfragen ob der Spieler connectet ist und ob er ein Admin ist


    for(new i=0; i<GetMaxPlayers(); i++)
    {
    if(IsPlayerConnected(i))
    {
    if(Adminabfrage)
    {
    new Admins[50],adminrank[20];
    format(Admins,sizeof(Admins),"- %s %s",SpielerName(i),adminrank);
    SendClientMessage(playerid,GRUEN,Admins);
    }
    }
    }

  • Kann vielleicht jemand auf meinen Server kurz um des zu testen? 5.9.147.14:8476


    Mein code jetzt:
    ocmd:admins(playerid,params[])
    {
    SendClientMessage(playerid,ROT, "Folgende Admins sind online:");
    for(new i=0; i<GetMaxPlayers(); i++)
    {
    if(IsPlayerConnected(i))
    {
    if(!isPlayerAnAdmin(playerid,1))
    {
    new Admins[50],adminrank[20];
    format(Admins,sizeof(Admins),"- %s %s",adminrank,SpielerName(i));
    SendClientMessage(playerid,GRUEN,Admins);
    }
    }
    }
    return 1;
    }

  • Das macht kein sinn, wenn der Spieler kein Admin ist soll der Text angezeigt werden?


    if(isPlayerAnAdmin(i) >= 1)
    {
    new Admins[50],adminrank[20];
    format(Admins,sizeof(Admins),"- %s %s",adminrank,SpielerName(i));
    }
    SendClientMessage(playerid,GRUEN,Admins);


    //Selbst verständlich infra
    //Edit Dein Adminrank muss auch angepasst werden

    KleineHilfe 2.0

    Einmal editiert, zuletzt von YaBroo ()

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen

  • *hust*

    if(isPlayerAnAdmin(i) >= 1)

  • Ok ich habs jetzt aber den Adminrank zeigs net an ?


    Code

    Spoiler anzeigen
    ocmd:admins(playerid,params[])
    {
    SendClientMessage(playerid,ROT, "Folgende Admins sind online:");
    for(new i=0; i<GetMaxPlayers(); i++)
    {
    if(IsPlayerConnected(i))
    {
    if(isPlayerAnAdmin(i,1))
    {
    new Admins[50],adminrank[20];
    format(Admins,sizeof(Admins),"- %s %s",adminrank,SpielerName(i));
    SendClientMessage(playerid,GRUEN,Admins);
    }
    }
    }
    return 1;
    }


    PS ist das so deutsch: ich habe von Ihrem Prospekt erfahren...... ??????????

  • Woher soll das Script wissen wie welcher Rank heißt ?


    mit adminrank einfach definieren ist das nicht getan ;)


    Machs in einem Stock.


    Bsp.


    stock Adminrang(playerid)
    {
    new rang[54];
    switch(SpielerInfo[playerid][Adminlevel])
    {
    case 0:{rang="";}
    case 1:{rang="{05FF00}Supporter";}
    case 2:{rang="{EBFF00}Moderator";}
    case 3:{rang="{0019FF}Administrator";}
    case 4:{rang="Techniker";}
    case 5:{rang="{FFC800}Super Administrator";}
    case 6:{rang="{FF8C00}Server Manager";}
    case 7:{rang="{FF0019}Serverleitung";}
    default:{rang="ERROR";}
    }
    return rang;
    }


    & auslesen lässt du es so:


    Adminrang(playerid)


    Greetz 8)

  • So hab ich des jetzt! Müsste gehn oder

    Spoiler anzeigen
    ocmd:admins(playerid,params[])
    {
    SendClientMessage(playerid,ROT, "Folgende Admins sind online:");
    for(new i=0; i<GetMaxPlayers(); i++)
    {
    if(IsPlayerConnected(i))
    {
    if(isPlayerAnAdmin(i,1))
    {
    new rank[50],Admins[50];
    switch (GetPVarInt(playerid,"Adminlevel"))
    {
    case 0:{rank="Spieler";}
    case 1:{rank="Supporter";}
    case 2:{rank="Administrator";}
    case 3:{rank="Projektleiter";}
    }
    format(Admins,sizeof(Admins),"- %s %s",rank,SpielerName(i));
    SendClientMessage(playerid,GRUEN,Admins);
    }
    }
    }
    return 1;
    }

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen