Здравствуйте!
Можно ли как то получить флаги доступа игрока, которые присваиваются ему AMXX функцией set_user_flags в метамод плагине?
Femidion писал(а): Ты вот пришёл в мою ветку, выкабениваешься здесь, пишешь охинею, пытаешься всё высмеять... пользы от тебя никакой, только понты и хамство... зачем? Может ты тот самый лживый чурка-паразит?
#include <amxmodx>
#include <amxmisc>
#define PLUGIN "GetFlags"
#define VERSION "1.0"
#define AUTHOR "Somebody"
new c_flags
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
register_srvcmd("GetFlags","fnGetFlags");
c_flags=register_cvar("cv_user_flags");
// Add your code here...
}
public fnGetFlags(id)
{
/*
//Вроде не нужно в серверной команде. Не помню уже.
if (!cmd_access(id, level, cid, 1))
return PLUGIN_HANDLED
*/
new szUserId[5];
new UserID;
if(read_argc()!=2)
{
//Я вот не помню, если у нас команда вызвана с одним параметром тут будет 2, или 1?
//Например: GetFlags 20
set_pcvar_num(c_flags,0);
return PLUGIN_HANDLED;
}
read_argv(1,szUserId,charsmax(szUserId));
UserID=str_to_num(szUserId);
if(!UserID||!is_user_connected(UserID))
{
set_pcvar_num(c_flags,0);
return PLUGIN_HANDLED;
}
set_pcvar_num(c_flags,get_user_flags(UserID));
return PLUGIN_HANDLED;
}
int GetUserFlags(int id)
{
char szCmd[50];
auto cv_flags = g_engfuncs.pfnCVarGetPointer("cv_user_flags");
snprintf(szCmd, sizeof(szCmd) - 1, "GetFlags %i", id);
g_engfuncs.pfnServerCommand(szCmd);
g_engfuncs.pfnServerExecute();
return cv_flags ? static_cast<int>(cv_flags->value) : 0;
}
а там такой же костыль придётся использовать. xD)
#define MF_GetPlayerFlags g_fn_GetPlayerFlags
Chuvi писал(а):Bos93, эээээ?!
Chuvi писал(а):Тогда её, вроде, вполне реально и из метабода дёрнуть. Но это я потом проверю.)
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2