06.10.2014, 21:21
pawn Код:
// top of gm
#define MAX_ADMINS 10
new AdminNames[MAX_ADMINS][MAX_PLAYER_NAME char];
new AdminsInGame;
pawn Код:
// Creating list of admins in OnGameModeInit
new len;
new File:F = fopen("Admins.ini",io_read);
while((len = fread(F,str)) && AdminsInGame < MAX_ADMINS)
{
str[len - 2] = EOS;
strpack(AdminNames[AdminsInGame++],str,sizeof(AdminNames[]));
}
fclose(F);
/*In file
Nick1
Nick2
Nick3 and after last nick must be enter key*/
pawn Код:
// cmd /admins
new bool:found,count;
static tempAdmins[MAX_ADMINS][MAX_PLAYER_NAME char];
new name[MAX_PLAYER_NAME + 1];
for(new i=0; i != MAX_PLAYERS; i++)
if(IsPlayerConnected(i) && IsAdmin(i) && count < MAX_ADMINS)
{
GetPlayerName(i,name,sizeof(name));
strpack(tempAdmins[count++],name,sizeof(tempAdmins[]));
}
new str[(MAX_PLAYER_NAME + 11) * MAX_ADMINS];
static status[][] = {"offline","online"};
for(new i=0,d; i != AdminsInGame; i++)
{
found = false;
for(d=0; d != count; d++)
if(!strcmp(AdminNames[i],tempAdmins[d]))
{
found = true;
break;
}
}
strunpack(name,AdminNames[i]);
format(str,sizeof(str),"%s%s (%s)\n",str,name,status[found]);
}
// ShowPlayerDialog(...);