admin 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
  • ich suche ein /aduty befehl für admins


    meine ränge: 1,2,3,4,5


    so überprüft er sie


    if(!isPlayerAnAdmin(playerid,1))


    ich möchte wen man /aduty macht das dan eine nachicht kommt justin ist in admindienst gegangen und ist auf der karte grün


    das bei supporter moderator und owner auch machen


    und halt wen man im dienst noch mal /aduty macht das man dan ausser dienst ist


    ich habe ein selfmade

  • Oben:
    new AdminDuty[MAX_PLAYERS];
    zcmd:aduty(playerid, params[])
    {
    if(AdminDuty[playerid] == 0)
    {
    AdminDuty[playerid] = 1;
    //Hier die gewünschte nachricht einbauen
    }
    else
    {
    AdminDuty[playerid] = 0;
    //Hier die gewünschte nachricht einbauen
    }
    }


    Es wird niemals so viel gelogen wie vor der Wahl, während des Krieges und nach der Jagd.

    - Otto von Bismarck
    -

  • if(strcmp(cmd,"/duty", true) == 0)
    {
    new adminduty[MAX_PLAYERS];
    if(isPlayerAnAdmin(playerid,1) && adminduty[playerid] == 0)
    {
    SendClientMessage(playerid,DEINERFARBE,"Admin lvl1 ist Duty");
    adminduty[playerid] = 1;
    }
    else if(isPlayerAnAdmin(playerid,2) && adminduty[playerid] == 0)
    {
    SendClientMessage(playerid,DEINERFARBE,"Admin lvl2 ist Duty");
    adminduty[playerid] = 1;
    }
    else if(isPlayerAnAdmin(playerid,3) && adminduty[playerid] == 0)
    {
    SendClientMessage(playerid,DEINERFARBE,"Admin lvl3 ist Duty");
    adminduty[playerid] = 1;
    }
    else if(isPlayerAnAdmin(playerid,4) && adminduty[playerid] == 0)
    {
    SendClientMessage(playerid,DEINERFARBE,"Admin lvl4 ist Duty");
    adminduty[playerid] = 1;
    }
    else if(isPlayerAnAdmin(playerid,5) && adminduty[playerid] == 0)
    {
    SendClientMessage(playerid,DEINERFARBE,"Admin lvl5 ist Duty");
    adminduty[playerid] = 1;
    }
    else if(adminduty[playerid] == 1)
    {
    SendClientMessage(playerid,DEINEFARBE,"Unduty");
    adminduty[playerid] = 0;
    }
    return1;
    }


    EDIT: Die Nachricht werden aber nur an den User geschickt wo /duty macht. Um nun noch den Namen herauszufinden benutze GetPlayerName und um diesen in eine Nachricht einzubauen verwende einen String + Format...

  • Wie kann man jetzt noch den Admin Rang rausfinden um dann zu schreiben %s ist als Admin Rang %i im Dienst. ?


    danke im vorraus


    Lg byBSE



    Einmal editiert, zuletzt von Tomsen ()

  • zcmd:aduty(playerid, params[])
    {
    new string[64];
    GetPlayerName(playerid,string,MAX_PLAYER_NAME);
    if(AdminDuty[playerid] == 0)
    {
    AdminDuty[playerid] = 1;
    format(string,64,"Admin %s mit dem Level %d ist nun im Dienst",name,DeineAdmLevelVar);
    }
    else
    {
    AdminDuty[playerid] = 0;
    format(string,64,"Admin %s ist nun nicht mehr im Dienst",name,DeineAdmLevelVar);
    }
    return SendClientMessage(playerid,DEINEFARBE,string);
    }
    das müsste es sein ;)

    "Bevor ich mir Informationen aus der "Bild" hole,
    werde ich anfangen, Wahlergebnisse danach vorauszusagen,
    neben welchen Busch unsere Katze gepinkelt hat."

    Margarete Stokowski

  • Und das mit der Admin Variable.


    Ich bin mir nicht sicher welche diese ist.


    Eigentlich Adminlevel, allerdings geht des nicht.


    Hilft das weiter?


    Das passiert beim Laden


    SetPVarInt(playerid,"Adminlevel",dini_Int(Spielerdatei,"Adminlevel"));
    Eigentlich ist Admin die Var oder?



    Einmal editiert, zuletzt von Tomsen ()

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Mir wär ein bisschen Praxis lieber. Entschuldige aber ich kann dir nicht wirlich folgen :rolleyes:


    edit: mom ein bisschen verstehen tu ichs, ich versuchs.


    Kann ich dafür einen extra stock machen zB stock rank(playerid) damit ich das auch woanders benutzen kann?


    edit2: ocmd:aduty(playerid, params[])
    {
    if(!isPlayerAnAdmin(playerid,1))return SendClientMessage(playerid,rot,"Du hast nicht das nötige Adminlevel!");
    new string[64],rang;//rang hinzugefügt
    GetPVarInt(playerid,"Adminlevel")//so richtig?
    if(AdminDuty[playerid] == 0)
    {
    AdminDuty[playerid] = 1;
    format(string,sizeof(string),"Admin %s mit dem Level %d ist nun im Dienst",SpielerName(playerid),rang);
    }
    else
    {
    AdminDuty[playerid] = 0;
    format(string,sizeof(string),"Admin %s ist nun nicht mehr im Dienst",SpielerName(playerid));
    }
    return SendClientMessage(playerid,rot,string);
    }


    Irgentwas fehlt noch ,damit er auch weiß das GetPVarInt(playerid,"Adminlevel"); auch rang ist, aber wie bau ich das ein`?


    Lg byBSE