В последнее время развелось какая то мания на плагины вип и попытки заработать на CS серверах и привилегиях, очевидно что вип привилегии нужно ограничить от всех кто не имеет на них право, как же это сделать? В большинстве случаев игроку присваивается какой то из не используемых админских фрагов. И фактически игроку которому дали какой то флаг кроме Z (USER) то он уже дамин, но не совсем пока что правами доступа.
Что бы узнать конкретные права доступа игрока, можно воспользоваться сток функцией cmd_access
Инфо из
amxmisc.inc:stock cmd_access(id, level, cid, num, bool:accesssilent = false)
stock cmd_access(id, level, cid, num, bool:accesssilent = false)
{
new has_access = 0;
if ( id==(is_dedicated_server()?0:1) )
{
has_access = 1;
}
else if ( level==ADMIN_ADMIN )
{
if ( is_user_admin(id) )
{
has_access = 1;
}
}
else if ( get_user_flags(id) & level )
{
has_access = 1;
}
else if (level == ADMIN_ALL)
{
has_access = 1;
}
if ( has_access==0 )
{
if (!accesssilent)
{
#if defined AMXMOD_BCOMPAT
console_print(id, SIMPLE_T("You have no access to that command."));
#else
console_print(id,"%L",id,"NO_ACC_COM");
#endif
}
return 0;
}
if (read_argc() < num)
{
new hcmd[32], hinfo[128], hflag;
get_concmd(cid,hcmd,31,hflag,hinfo,127,level);
#if defined AMXMOD_BCOMPAT
console_print(id, SIMPLE_T("Usage: %s %s"), hcmd, SIMPLE_T(hinfo));
#else
console_print(id,"%L: %s %s",id,"USAGE",hcmd,hinfo);
#endif
return 0;
}
return 1;
}