Adminbefehle Problem

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:setadmin(playerid,params[])
    {
    new pID, Rang, string[128],adminname[128];
    if(PlayerInfo[playerid][pAdminLevel] >= 4)return SendClientMessage(playerid,COLOR_RED,"Diesen Befehl kannst du nicht nutzen. Mindestens benötigter Rang: {C90000}Admin");
    if(sscanf(params,"ui",pID,Rang))return SendClientMessage(playerid,COLOR_RED,"Benutzung: /setadmin [ID][Rang]");
    if(Rang < 0 || Rang > 6)return SendClientMessage(playerid,COLOR_RED,"Es gibt nur 6 Adminlevel");
    SetPVarInt(pID,"Adminlevel",Rang);
    switch(GetPVarInt(playerid,"Adminlevel"))
    {
    case 0:{adminname="Spieler";}
    case 1:{adminname="{00D4C9}Trial Supporter";}
    case 2:{adminname="{00FA1D}Supporter";}
    case 3:{adminname="{018210}Trial Admin";}
    case 4:{adminname="{D18400}Admin";}
    case 5:{adminname="{D12300}Head Admin";}
    case 6:{adminname="{C90000}Projektleiter";}
    }
    format(string,sizeof(string),"Du hast %s zu einem %s gemacht.",SpielerName(playerid),adminname);
    SendClientMessage(playerid,COLOR_YELLOW,string);
    format(string,sizeof(string),"{C90000}Full Admin {FFFFFF}%s hat dich zu einem %s befördert!",SpielerName(pID),adminname);
    SendClientMessage(pID,COLOR_YELLOW,string);
    return 1;
    }


    ocmd:kick(playerid,params[]) //Befehl der eingegeben wird hier ist es kick
    {
    if(PlayerInfo[playerid][pAdminLevel] < 2) return SendClientMessage(playerid,COLOR_RED,"Du kannst diesen Befehl nicht benutzen."); //Admin abfrage, muss aber angepasst werden, weil ich nicht weiss, welches admin system du hast
    new pID, reason[128],string[128]; //pID = Andere SpielerID, reason ist der grund, string der string als variable, damit man z.B. Befehle wie kick ID Grund machen kann.
    if(sscanf(params,"us",pID,reason))return SendClientMessage(playerid,COLOR_RED,"/kick [id] [grund]"); //Hier wird die Variable ausgefüllt. pID mit der anderen SpielerID, die gekickt werden soll und reason mit dem grund
    format(string,sizeof(string),"%s wurde von %s gekickt. Grund: %s",pID,playerid,reason); //string ist dafür da, damit du sachen wie %s usw ausfüllen kannst z.B. mit dem SpielerNamen vom anderen Spieler, hier auch wieder die spielername abfrage anpassen.
    SendClientMessageToAll(COLOR_RED,string); //Der string wird gesendet
    Kick(pID); //Die Person wird gekickt.
    return 1;
    }
    ocmd:ban(playerid,params[]){
    if(PlayerInfo[playerid][pAdminLevel] < 2) return SendClientMessage(playerid,COLOR_RED,"Du kannst diesen Befehl nicht benutzen.");
    new pID, reason[128],string[128];
    if(sscanf(params,"us",pID,reason))return SendClientMessage(playerid,COLOR_GREY,"/ban [ID / Teil des Namens] [Grund]");
    format(string,sizeof(string),"%s wurde vom Admin %s gekicked. Grund: %s",pID,playerid,reason);
    SendClientMessageToAll(COLOR_RED,string);
    Ban(pID);
    return 1;
    }



    denke reicht-