FreshBans блокировка бана

ArKaNeMaN

Квалифицированный специалист по VipModular
Сообщения
434
Реакции
296
Помог
5 раз(а)
Есть ли у фб форвард вызываемый во время бана, через который можно предотвратить этот бан...
 
Сообщения
2,491
Реакции
2,794
Помог
61 раз(а)
ArKaNeMaN, форвард есть. Но можна ли предовратить я не вкурсе. Названия не помню
 
Сообщения
265
Реакции
315
Помог
10 раз(а)
Обратите внимание, если вы хотите заключить сделку с этим пользователем, он заблокирован
ArKaNeMaN,
вот форвард
forward fbans_player_banned_pre(id, userid);
но насколько я знаю - раньше он не принимал PLUGIN_HANDLED и тд(просто игнорировал)
но сейчас может уже и можно решить Вашу задачу, ибо версий много было а изменить поведение форварда - это всего лишь 2-3 строки
 

ArKaNeMaN

Квалифицированный специалист по VipModular
Сообщения
434
Реакции
296
Помог
5 раз(а)
neygomon, fantom, Спасибо... Я уже додумался у самого Маздана спросить... Он ответил что предотвратить бан нельзя никак...
 
Сообщения
265
Реакции
315
Помог
10 раз(а)
Обратите внимание, если вы хотите заключить сделку с этим пользователем, он заблокирован
ArKaNeMaN,
попробуй такой костыль (ставить выше fresh_bans, чтобы блокнуть команду)
Код:
#include <amxmodx>
#include <amxmisc>

new g_Forward;

public plugin_init()
{
    register_concmd("fb_ban", "cmd_fbban");
    register_concmd("amx_ban", "cmd_fbban");
    g_Forward = CreateMultiForward("fbans_player_banned_pre", ET_STOP, FP_CELL, FP_CELL);
}

public cmd_fbban(id)
{
    // тут надо проверочки на доступ только намутить :D
    //
    // fb_ban <time in mins> <#userid> <reason>
    // amx_ban <time in mins> <steamID or nickname or #authid or IP> <reason>

    new szTime[10], szTarget[32], szReason[64];
    read_argv(1, szTime, charsmax(szTime));
    read_argv(2, szTarget, charsmax(szTarget));
    read_argv(3, szReason, charsmax(szReason));

    new p_index = cmd_target(id, szTarget);
    if(is_user_connected(p_index))
    {
        new ret;
        ExecuteForward(g_Forward, ret, id, get_user_userid(p_index));
        return ret;
    }

    return PLUGIN_CONTINUE;
}
  • не тестил
  • работает только при бане через консоль
  • не знаю как поведет себя AMXX, когда в двух плагинах зареганы одинаковые форварды
    • если норм регнет - то все будет работать ок, кроме повторного вызова в плагинах, если бан не блокнут(критично для скринов) :D
  • Пример:
    • Код:
      #include <amxmodx>
      
      forward fbans_player_banned_pre(id, userid);
      
      public fbans_player_banned_pre(id, userid)
          return (userid == 1 || userid == 11) ? PLUGIN_HANDLED : PLUGIN_CONTINUE;
 
Последнее редактирование:

ArKaNeMaN

Квалифицированный специалист по VipModular
Сообщения
434
Реакции
296
Помог
5 раз(а)
neygomon, Мне это не подойдёт... Надо ловить тот момент когда цель бана уже известна... Т.е. успех бана зависит не только от админа, а ещё и от того кого банят... Воот
 
Сообщения
2,491
Реакции
2,794
Помог
61 раз(а)
ArKaNeMaN, скажите что вам нужно. Возможно вам не нужно блокировать бан
 

ArKaNeMaN

Квалифицированный специалист по VipModular
Сообщения
434
Реакции
296
Помог
5 раз(а)
fantom, Надо сделать что-то вроде иерархии игроков... Типа иммунитета... Только немного лучше... Есть допустим 5 уровней... 1 - Игрок, 2- Вип, 3 - Админ(Покупной), 4 - Модер, 5 - Гл.Админ... В итоге должно быть так чтобы игроки не могли банить\мутить(Ну и всё в таком роде) тех кто выше их по уровню
 
Сообщения
333
Реакции
290
Помог
9 раз(а)
Он ответил что предотвратить бан нельзя никак...
Это странный ответ от автора, что функция PRE игнорирует возвращенный результат. Вы правильно поняли автора? М.б. он не понял вашу мысль.
 
Сообщения
265
Реакции
315
Помог
10 раз(а)
Обратите внимание, если вы хотите заключить сделку с этим пользователем, он заблокирован
ArKaNeMaN, тогда нужны сорцы фреша, а их нет - вывод прост: не сделать такое.
хотя... можно, только придется повторять функционал менюшка бана из fresh_bans
3 Июл 2018
zhorzh78, функция PRE вызывается там исключительно для скриншотеров
как и в моем lite bans и в amxbans
 

ArKaNeMaN

Квалифицированный специалист по VipModular
Сообщения
434
Реакции
296
Помог
5 раз(а)
Сообщения
1,420
Реакции
2,511
Помог
58 раз(а)
ArKaNeMaN, отловить команды бана и сделать своё меню бана, разве что с оффлайн баном скорее всего не получится.
 
Сообщения
333
Реакции
290
Помог
9 раз(а)
neygomon, Чтобы сделать скрины не обязательно писать PRE. Только запутали в назначении функции. ТС дал вам повод задуматься, нафига нужна pre, если по факту она post
Не знаю, как mazdan, а у Вас есть все карты на доработку. Причем, доработка совсем не бесполезная.
 
Сообщения
265
Реакции
315
Помог
10 раз(а)
Обратите внимание, если вы хотите заключить сделку с этим пользователем, он заблокирован
zhorzh78, у меня в коде именно PRE, но я не делал проверку return
 

Пользователи, просматривающие эту тему

Сейчас на форуме нет ни одного пользователя.
Сверху Снизу