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" ![]()
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" ![]()
Mit einer "öffentlichen" Variable ;]
Ist überraschend einfach. ![]()
Was für ein Script verwendest du?
Gruss: Sonic
AAAA Sonic
![]()
Immernoch mein Selfmade ![]()
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;
}
Sowas hab ich schon. Ich formuliere mal besser:
Wie muss der Teil bei /hilfmir im Command aussehen, das es ihm anzeigt: Es ist kein Admin online.
MfG byBSE
asoo ok srry,
ehm hast du ein Duty System ?
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
SetPlayerHealt(playerid, 99999);
Okay danke. ![]()