Adminsystem - Adminränge

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
  • Guten Tag liebe Community,


    für mein Adminsystem würde ich gerne den "Rängen 1 - 3" Namen geben.
    Was braucht ihr für Codes, etc.?
    Braucht ihr meinen Stock für isPlayerAnAdmin?


    stock isPlayerAnAdmin(playerid,rang)
    {
    if(GetPVarInt(playerid,"Adminlevel")>=rang)return 1;
    return 0;
    }


    Liebe Grüße
    TimPhillip

  • Mach es einfach so wie ich.
    einen stock mit GetAdminName(playerid) in welchem dann per switch das Adminlevel genommen wird und dann eben z.B. die Variable Adminname auf Supporter setzt.
    Dann einfach bei jedme Befehl, bei welchem der Adminname angezeigt werden soll, das GetAdminName(playerid) aufrufen und dann einfach beim formatieren die Adminname-Variable nutzen.

  • if (strcmp(cmd, "/admins", true) == 0 || strcmp(cmd, "/supporter", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    SendClientMessage(playerid, COLOR_GRAD1, " ");
    SendClientMessage(playerid, COLOR_GRAD1, " Admins und Supporter:");
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i))
    {
    if(PlayerInfo[i][pAdmin] == 1)
    {
    GetPlayerName(i, sendername, sizeof(sendername));
    format(string,sizeof(string)," %d* Supporter: %s[%d] Nummer: %d",PlayerInfo[i][pAdmin],sendername,i,PlayerInfo[i][pPnumber]);
    SendClientMessage(playerid, 0xFF8200FF, string);
    }
    if(PlayerInfo[i][pAdmin] == 2)
    {
    GetPlayerName(i, sendername, sizeof(sendername));
    format(string,sizeof(string)," %d* Moderator: %s[%d] Nummer: %d",PlayerInfo[i][pAdmin],sendername,i,PlayerInfo[i][pPnumber]);
    SendClientMessage(playerid, 0xFF8200FF, string);
    }
    }
    }
    }
    return 1;
    }


    usw. Vielleicht kannste was damit anfangen

  • So ein System möcht ich ja nicht.
    Bei "Showstats" :
    ocmd:showstats(playerid,params[])
    {
    new pID,string[164],string2[128];
    if(sscanf(params,"u",pID))return SendClientMessage(playerid,drot,"SERVER: /showstats [Name/ID]");
    format(string,sizeof(string),"~~~~~~~~~~~~~~~~~~~~~~\n\n\n\n[Name: %s]\n[Kills: %i]\n[Tode: %i]\n[Adminlevel: %i]\n[Warns: %i]\n\n\n\n~~~~~~~~~~~~~~~~~~~~~~",SpielerName(pID),GetPlayerScore(pID),GetPVarInt(pID,"Tode"),GetPVarInt(pID,"Adminlevel"),GetPVarInt(pID,"Warn"));
    ShowPlayerDialog(playerid, DIALOG_SHOWSTATS, DIALOG_STYLE_MSGBOX, "Informationen", string, "Schließen", "");
    format(string2,sizeof(string2),"Du guckst von %s die Stats an.",SpielerName(pID));
    SendClientMessage(playerid,weiß,string2);
    return 1;
    }


    Soller mir beim Adminlevel keine Zahl zeigen, sondern einen "Beliebigen" Rangnamen!

  • Hier:
    stock GetAdminName(playerid)
    {
    switch(GetPVarInt(playerid,"Adminlevel"))
    {
    case 0:{adminname="Spieler";}
    case 1:{adminname="Auszubildender Supporter";}
    case 2:{adminname="Supporter";}
    case 3:{adminname="Auszubildender Moderator";}
    case 4:{adminname="Moderator";}
    case 5:{adminname="Supermoderator";}
    case 6:{adminname="Administrator";}
    case 7:{adminname="Headadmin";}
    }
    }


    Beispielcmd:
    ocmd:admins(playerid,params[])
    {
    SendClientMessage(playerid,ROT, "|_______________ ADMINISTRATOREN _______________|");
    for(new i=0; i<GetMaxPlayers(); i++)
    {
    if(IsPlayerAnAdmin(i,1))
    {
    new Admins[100];
    GetAdminName(i);
    format(Admins,sizeof(Admins),"** %s %s **",adminname, Spielername(i));
    SendClientMessage(playerid,BLAU,Admins);
    SendClientMessage(playerid,BLAU,"Gebe für die ADuty-Liste '/adutys' ein!");
    }
    }
    return 1;
    }

  • Ich danke dir Sven.
    Folgende Fehler.. ( ich fixx sie warscheinlich jetzt )..


    E:\Dokumente und Einstellungen\Systemadministrator\Desktop\Pawno\gamemodes\Selfmade100.pwn(296) : error 017: undefined symbol "IsPlayerAnAdmin"
    E:\Dokumente und Einstellungen\Systemadministrator\Desktop\Pawno\gamemodes\Selfmade100.pwn(300) : error 017: undefined symbol "adminname"
    E:\Dokumente und Einstellungen\Systemadministrator\Desktop\Pawno\gamemodes\Selfmade100.pwn(716) : error 017: undefined symbol "adminname"
    E:\Dokumente und Einstellungen\Systemadministrator\Desktop\Pawno\gamemodes\Selfmade100.pwn(716) : warning 215: expression has no effect
    E:\Dokumente und Einstellungen\Systemadministrator\Desktop\Pawno\gamemodes\Selfmade100.pwn(717) : error 017: undefined symbol "adminname"
    E:\Dokumente und Einstellungen\Systemadministrator\Desktop\Pawno\gamemodes\Selfmade100.pwn(717) : warning 215: expression has no effect
    E:\Dokumente und Einstellungen\Systemadministrator\Desktop\Pawno\gamemodes\Selfmade100.pwn(718) : error 017: undefined symbol "adminname"
    E:\Dokumente und Einstellungen\Systemadministrator\Desktop\Pawno\gamemodes\Selfmade100.pwn(718) : warning 215: expression has no effect
    E:\Dokumente und Einstellungen\Systemadministrator\Desktop\Pawno\gamemodes\Selfmade100.pwn(719) : error 017: undefined symbol "adminname"
    E:\Dokumente und Einstellungen\Systemadministrator\Desktop\Pawno\gamemodes\Selfmade100.pwn(719) : warning 215: expression has no effect
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    6 Errors.


    ocmd:admins(playerid,params[])
    {
    SendClientMessage(playerid,drot, "|_______________ ADMINISTRATOREN _______________|");
    for(new i=0; i<GetMaxPlayers(); i++)
    {
    if(IsPlayerAnAdmin(i,1))
    {
    new Admins[100];
    GetAdminName(i);
    format(Admins,sizeof(Admins),"** %s %s **",adminname, Spielername(i));
    SendClientMessage(playerid,weiß,Admins);
    }
    }
    return 1;
    }


    Warscheinlich hab ich sie gleich Gefixxt!

  • Ich hab den Befehl nochmal rausgenommen, keine Errors.
    Mein Stock sieht nun so aus :


    stock GetAdminName(playerid)
    {
    switch(GetPVarInt(playerid,"Adminlevel"))
    {
    case 0:{adminname="Spieler";}
    case 1:{adminname="Supporter";}
    case 2:{adminname="Administrator";}
    case 3:{adminname="Projektleitung";}
    }
    }


    #Edit ich schaff es glaube ich gerade die Errors zu beheb :)
    #edit2


    E:\Dokumente und Einstellungen\Systemadministrator\Desktop\Pawno\gamemodes\Selfmade100.pwn(300) : error 017: undefined symbol "string"
    E:\Dokumente und Einstellungen\Systemadministrator\Desktop\Pawno\gamemodes\Selfmade100.pwn(300) : error 017: undefined symbol "string"
    E:\Dokumente und Einstellungen\Systemadministrator\Desktop\Pawno\gamemodes\Selfmade100.pwn(300) : error 029: invalid expression, assumed zero
    E:\Dokumente und Einstellungen\Systemadministrator\Desktop\Pawno\gamemodes\Selfmade100.pwn(300) : fatal error 107: too many error messages on one line


    Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    4 Errors.


    format(string,sizeof(string),"** %s %s **",adminname, Spielername(playerid));

    -

    2 Mal editiert, zuletzt von Yung_Hurn ()