Admin Abfrage

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
  • Hey,


    wie kann ich Abfragen ob ein Admin online ist?


    Also es ist ein /hilfmir Befehl. Ist kein Admin da soll das auch dastehen. Aber wie frag ich das ab?


    Arbeite mit PVars und die Variable von Adminlevel heißt "Adminlevel" ^^


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



    oder wen du Mysql benutz dan:



    stock isPlayerAnAdmin(playerid,rang)
    {
    if(mysql_GetInt("accounts", "Adminlevel", "Name", SpielerInfo[playerid][pName]) >= rang)return 1;
    return 0;
    }


  • Ja


    ocmd:aduty(playerid, params[])
    {
    if(!isPlayerAnAdmin(playerid,1))return SendClientMessage(playerid,rot,"Du hast nicht das nötige Adminlevel!");
    new string[64],rang;
    rang = GetPVarInt(playerid,"Adminlevel");
    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);
    }

  • stock AdminOnline(){ new adminanzahl; for(new s=0;s<MAX_PLAYERS;s++) { if(IsPlayerConnected(s) && GetPVarInt(playerid,"Adminlevel")> 0) { adminanzahl++; } } return adminanzahl;
    }// Verwendung:format(text,128,"Es sind %i Online",AdminOnline());
    Deine Abfrage bei deinem Befehl:
    if(AdminOnline()== 0) return SendClientMessage(playerid,farbe,"Es ist kein Admin on.");

  • if(strcmp(cmd,"/hilfmir",true)==0)
    {
    if(IsPlayerConnected(playerid))
    {
    for(new i=0;i<MAX_PLAYERS;i++)
    {
    if(PlayerInfo[i][pAdmin] >= 1)
    {
    if(IsPlayerConnected(i))
    {
    if(AdminDuty[i] == 1)
    {
    new sendername[MAX_PLAYER_NAME];
    new string[256];
    GetPlayerName(playerid, sendername, sizeof(sendername));
    format(string,sizeof(string),"%s braucht hilfe, du kannst dich mit /goto %d zu ihn Teleportieren!",sendername,playerid);
    SendClientMessage(i,COLOR_RED,string);
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Es ist kein Admin im Dienst!");
    }
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Zurzeit ist kein Admin Online!");
    }
    }
    }
    }
    return 1;
    }


    Ungetestet!


    //edit:
    Auf AdminDuty angepasst

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