Помогите добавить в плагин для админов команду на откл. "черного" экрана для админов по команде . Что то никак понять не могу плюс еще и опыта в таких делах маловато. Плагины 2 версии(оригинал, + моя реализация) во вложении. А то что то , сделал , но похоже где то накосячил и похоже даже очень.. Да и опыта в таких делах маловат всё таки. Смысл добавления добавить адм. команду в консоль , на откл. "черного экрана" для админов , которые в спектрах, а когда выбирают команду или по консольной команде, всё становится на своих местах, то есть "черный экран" опять активен.
_wS_, а так ход мыслей моих правильный ? Добавлено (23.08.2021, 20:45:05) ---------------------------------------------
Цитата_wS_ ()
Добавь просто проверку на админ флаг.
Это я хотел сделать , но что то по неопытности чутка запутался, да и вообще такие вещи правильно ли делать , как я сделал.А то решил взять по принципу bres ROOT-овского ,как у него с проверкой StopChain %))) ================ Спасибо !!!
Цитата_wS_ ()
(flags & ADMFLAG_ROOT) || (flags & ADMFLAG_BAN); // Вместо ADMFLAG_BAN можешь другой
Кстати вопросик по поводу "ADMFLAG_ROOT" и "ADMFLAG_BAN" .. А если у кого то только есть "ADMFLAG_BAN" или любой другой флаг , этот с флагом ADMFLAG_ROOT подхватится, то есть нужно указывать к ADMFLAG_ROOT и доп. флаг , или наоборот при проверке ?
Сообщение отредактировал www22 - Понедельник, 23.08.2021, 21:09:33
Дата: Понедельник, 23.08.2021, 21:22:26 | Сообщение # 4
Цитатаwww22 ()
Кстати вопросик по поводу "ADMFLAG_ROOT" и "ADMFLAG_BAN" .. А если у кого то только есть "ADMFLAG_BAN" или любой другой флаг , этот с флагом ADMFLAG_ROOT подхватится, то есть нужно указывать к ADMFLAG_ROOT и доп. флаг , или наоборот ?
Это же начальный программинг, как работают операторы, условия.
Код
if (a || b) // Если 'a' или 'b' true, то { // выполнится код тут. // Если 'a' правда, то 'b' не проверяется, т.к. уже нет смысла. }
Поиск "как работает ||" сразу даёт ответ. Если у игрока есть 'z' флаг, то это не значит, что у него есть 'ADMFLAG_BAN' (бан флаг). И т.к. заведено что 'z' = полный доступ, то и проверяем есть ли 'z' флаг или тот, который ты хочешь.
Цитатаwww22 ()
да и вообще такие вещи правильно ли делать , как я сделал
За AllowAFSBUsage недостаточно следишь, вход/выход игрока не учтен. В Event_round_start ты всем принудительно делаешь AllowAFSBUsage true, даже тем, кто отключил, поэтому в начале раунда всех наблюдателей ослепит. Создавать таймер в цикле не совсем логично, достаточно одного, и уже в калбеке таймера запускать цикл по игрокам. По логике, в OnPlayerTeam проверка AllowAFSBUsage должна быть в строке "if(!client || IsFakeClient(client))" (оптимизация). В калбеке ScreenFadeRoundStart у тебя условие и после него 4 разные команды, такое огораживается { скобками }.
И лучше на новом синте пиши, он ближе к популярному c++ (сказал тот, у кого весь сайт в старом, не дошли руки).
кто отключил, поэтому в начале раунда всех наблюдателей ослепит.
Мне это и нужно , чтобы не всем принудительно , а по усмотрению , в данном случае по команде консольной, чтоб никто не догадался откл. ослепление %)) Попробую объяснить по другому. Есть снайперский сервер , на нем играют так же и админы , когда поставил этот плагин , мне тут же задали вопрос - "а как следить за читаками ?!!" , если постоянно у всех вкл. админов "черный экран" и в спектрах даже. Вот и решил дополнить оригинал плагина админской консольной командой , чтоб можно было для админов, когда они ввели в консоль к примеру команду "xz", это ослепление как бы на время отключить, чтобы только для админы имеющие доступ к банам , могли это просмотреть/проследить за кем либо. Плюс еще когда они в спектрах , по другому они же никак не проследить за нехорошим игроком. Вообщем как то так, надеюсь понятно объяснил..
return (flags & ADMFLAG_ROOT) || (flags & ADMFLAG_BAN); // Вместо ADMFLAG_BAN можешь другой
Опять не так понял , то есть если я скажем сделаю проверку только на флаг "ADMFLAG_BAN", а у кого проверяю флаги у него будет полный доступ, то есть флаг "z"= ака "ROOT". Вопрос , обязательно дополнять проверку и на флаг "z" для "Root" ? Как это сделано у тебя в примере ? p.s. блин наверное опять не так написал %))
И лучше на новом синте пиши, он ближе к популярному c++ gut (сказал тот, у кого весь сайт в старом, не дошли руки).
бывает.. да я плохо еще в Си же , вон сам видишь по простенькому пишу, +- */ и текст , что то там делать.Пока на это способен.. никак еще. да и а ДоДс, уже никто плагины то не пишет же.Вот и приходится на старом писать или чуток прееделывать. С нуля пока тоже никак у меня %))