WAH. ich habe tatsächlich in der zählschleife vergessen, die adminanzahl zu erhöhen, so dass diese immer auf blieb
Code:
#include <adminlib>
#define ADMIN_BITS 17
new g_Version[] = "2.50.50";
public HandleSay(HLCommand,HLData,HLUserName,UserIndex) {
new Data[120];
new Name[MAX_NAME_LENGTH];
new Menutext[512];
new maxplayers = maxplayercount() + 1;
new Admins = 0;
new i;
convert_string(HLData,Data,120);
strstripquotes(Data);
if(strcasecmp(Data,"admin") == 0) {
strcpy(Menutext,"\yAdmins on Server:",512);
for(i=1;i<maxplayers;i++) {
if(playerinfo(i,Name,MAX_NAME_LENGTH) == 1) {
if(auth(Name)) {
get_accesslevel(Name,Data);
snprintf(Data,120,"^n\d----------^n\w%s^n\R%s",Name,Data);
strcat(Menutext,Data,512);
Admins++;
}
}
}
if(Admins) {
snprintf(Data,120,"^n^n\y%i Admins",Admins);
strcat(Menutext,Data,512);
} else {
strcpy(Menutext,"^n^n^n^n^n^n^n^n\yThere are no admins present at the moment.",512);
}
convert_string(HLUserName,Name,MAX_NAME_LENGTH);
menu(Name,Menutext,1023,0);
return PLUGIN_HANDLED;
}
return PLUGIN_CONTINUE;
}
get_accesslevel(UserName[MAX_NAME_LENGTH],Level[]) {
new i,j = 1<<(ADMIN_BITS),k = 0;
new color = 0;
for(i=0;i<ADMIN_BITS;i++) {
j >>= 1;
if(access(j,UserName)) {
if(!color) {
Level[k++] = '\';
Level[k++] = 'y';
color = 1;
}
} else {
if(color) {
Level[k++] = '\';
Level[k++] = 'd';
color = 0;
}
}
Level[k++] = '*';
}
Level[k] = '^0';
}
public plugin_init() {
plugin_registerinfo("Rinde's Admin Plugin","Returns all admins on server",g_Version);
plugin_registercmd("say","HandleSay",ACCESS_ALL,"say admin: Prints all admins and their adminlevels.");
return PLUGIN_CONTINUE;
}
wenn das hier kommt:
[Admin] beta feature menu not enabled
dann schreib in deine server.cfg:
amv_enable_beta "menu1"