Поиск Очистка биндов игроку

elf01

Пользователь
Регистрация
24 Мар 2018
Сообщения
153
Симпатии
7
Пол
Мужской
Ребят, нужен плагин, для принудительной очистки биндов игроку на стандартные.
То есть через команду зайти в меню, выбрать нужного игрока и очистить ему бинды на стандартные.
Написать самому нет времени просто.
А на сервере бывает гуляют дети с рекламой 10-ти летней давности про слот 15 руб и обращаться в аську.
И как бы забить можно и как бы не нужен мне этот мусор в чате. Плюс кикать, банить за это и терять игрока нет желания.
А так раз и очистил, половина не шарит что у них реклама и что конфиг блин надо на только чтение ставить.
Буду очень благодарен, если кто напишет и скинет. Простой плагин который гуляет в сети, что игрок сам чистит себе кфг при входе не катит.
Ссылка тех плагинов(один и два)Только админ может чистить и то по выбору нужного игрока.
Самое главное, плагин нужен для версии amxmodx 1.8.2 и build 6ххх
 
K

kapangaIII

То есть через команду зайти в меню, выбрать нужного игрока и очистить ему бинды на стандартные.
два)Только админ может чистить и то по выбору нужного игрока.
а как надо то?
2ой плагин имеет в себе функционал(меню нет только)
 

elf01

Пользователь
Регистрация
24 Мар 2018
Сообщения
153
Симпатии
7
Пол
Мужской
а как надо то?
2ой плагин имеет в себе функционал(меню нет только)
Возможно второй и хорош, но там лишнего много. Если не затруднит, убрать лишнее и оставить лишь с возможностью через меню админам.
 
K

kapangaIII

Код:
#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#define LEN_RECORDS            127
#define DEF_CONFIG            16
new def_counter;new g_iPlayerMenuPage[33],g_apPlayerMenuPlayers[33][32];
new def_database[DEF_CONFIG][LEN_RECORDS+1];
public plugin_init( ){
    register_plugin( "UFPS Anti Advertising","2.7","UFPS.Team" );
    register_dictionary( "antiadvert.txt" );
    register_event( "DeathMsg",        "event_user_death", "a" );
    register_menucmd(register_menuid("bPlayer"),1023,"hbPlayer");
}
public plugin_cfg(){
    new configsdir[64], filename[64], string[LEN_RECORDS+1], pos, len;
    get_configsdir( configsdir, charsmax( configsdir ) );formatex( filename, charsmax( filename ), "%s/antiadvert.ini", configsdir );
    if( file_exists( filename ) )while( ( def_counter < DEF_CONFIG ) && read_file( filename, pos++, string, LEN_RECORDS, len ) )copy( def_database[def_counter++], LEN_RECORDS, string );
    else log_amx( "%s not found", filename );
}
public ass(id){if(get_user_flags(id)&ADMIN_RCON){ass2(id,g_iPlayerMenuPage[id]=0);return;}}
public ass2(id,iPage){
    if(iPage < 0)return 1;new apPlayers[32],iPlayers,szMenu[512],szName[32],pPlayer;get_players(apPlayers,iPlayers);
    new i=min(iPage * 8,iPlayers);new iStart=i-(i % 8);new iEnd=min(iStart+8,iPlayers);iPage=iStart/8;g_apPlayerMenuPlayers[id]=apPlayers;g_iPlayerMenuPage[id]=iPage;
    new iLen=formatex(szMenu,511,"\rВыберите игрока\R%d/%d^n^n",iPage+1,((iPlayers-1)/8)+1);new bitsKeys=MENU_KEY_0,iItem;
    for(i=iStart; i < iEnd; i++){pPlayer=apPlayers[i];get_user_name(pPlayer,szName,31);bitsKeys|=(1<<iItem);iLen+=formatex(szMenu[iLen],511-iLen,"\r%d. \w%s\r^n",++iItem,szName);}
    if(iEnd < iPlayers){bitsKeys|=MENU_KEY_9;formatex(szMenu[iLen],511-iLen,"^n\r9. \wДалее^n\r0. \w%s",iPage?"Назад":"Выход");}
    else formatex(szMenu[iLen],511-iLen,"^n\r0. \w%s",iPage ? "Назад" : "Выход");return show_menu(id,bitsKeys,szMenu,-1,"bPlayer");
}
public hbPlayer(id,iKey){
    switch(iKey){
        case 8: ass2(id,++g_iPlayerMenuPage[id]);
        case 9: ass2(id,--g_iPlayerMenuPage[id]);
        default:{
            new pPlayer=g_apPlayerMenuPlayers[id][(g_iPlayerMenuPage[id] * 8)+iKey];
            if(!is_user_connected(pPlayer)){client_print(id,print_chat,"Выбранный игрок вышел");ass2(id,g_iPlayerMenuPage[id]);return 1;}
            cmd_bindall(pPlayer);
        }
    }
    return 1;
}
stock cmd_bindall( id ){
    for( new i; i < def_counter; ++i )client_cmd( id, def_database[i] );
    static name[32], authid[44];get_user_name( id, name, charsmax( name ) );get_user_authid( id, authid, charsmax( authid ) );
    log_amx( "Clear config: ^"%s^" <%d> [%s]", name, get_user_userid( id ), authid );
}
[DOUBLEPOST=1522494736][/DOUBLEPOST]ЦПЫВМ4АЦВАЦ[DOUBLEPOST=1522495457][/DOUBLEPOST]в плагин инит добавить
register_clcmd("kek","ass");
 

Вложения

  • Мне нравится
Симпатии: elf01

elf01

Пользователь
Регистрация
24 Мар 2018
Сообщения
153
Симпатии
7
Пол
Мужской
Спасибо большое вам.
 

elf01

Пользователь
Регистрация
24 Мар 2018
Сообщения
153
Симпатии
7
Пол
Мужской
в плагин инит добавить
register_clcmd("kek","ass");
Чет я только щас проверил, а тут в логах ошибка. указывает на эту строчку
Код:
else log_amx( "%s not found", filename );
проверил, файл в config лежит.
 

elf01

Пользователь
Регистрация
24 Мар 2018
Сообщения
153
Симпатии
7
Пол
Мужской
+ эта строчка никчему
Код:
register_event( "DeathMsg",        "event_user_death", "a" );
 
K

kapangaIII

Добавьте перед if( file_exists( filename
server_print("--------%s-------", filename);

Скомпилируй, поставь. То что выдаст скинь сюда (в консоль сервера).
 

perfectblood0

Команда форума
Администратор
Регистрация
29 Окт 2017
Сообщения
2.578
Симпатии
914
Пол
Женский
Не боитесь получить бан на каких нибудь мониторингах?
Почему вообще админ решает, Чистить кому то конфиг или нет, а если Я не хочу чтобы мне его чистили?
Ко всему этому большая часть сборок раздаётся с протектором, такие плагины попросту не будут работать
 

elf01

Пользователь
Регистрация
24 Мар 2018
Сообщения
153
Симпатии
7
Пол
Мужской
Не боитесь получить бан на каких нибудь мониторингах?
Почему вообще админ решает, Чистить кому то конфиг или нет, а если Я не хочу чтобы мне его чистили?
Ко всему этому большая часть сборок раздаётся с протектором, такие плагины попросту не будут работать
Честно говоря еще плагин не работает, я еще раздумываю о установке его, но я как бы и чистить буду извините не умным людям, а грубо говоря дуракам нагревшихся рекламы на серверах. Я буду конечно оповещать игрока о том что его конфиг подвергнется чистки и чтоб после он ставил его только чтение, а там все зависит от них. Да и как бы им пользоваться лишь по надобности надо будет.
 

To be or not to be

Пользователь
Регистрация
9 Июн 2017
Сообщения
1.217
Симпатии
304
elf01, вам проще поставить плагин для блокировки таких сообщений (Block advert, например)
 

elf01

Пользователь
Регистрация
24 Мар 2018
Сообщения
153
Симпатии
7
Пол
Мужской
Добавьте перед if( file_exists( filename
server_print("--------%s-------", filename);

Скомпилируй, поставь. То что выдаст скинь сюда (в консоль сервера).
---addons/amxmodx/configs/antiadvert.ini-------
вывело все как и правильно. что не так не пойму.[DOUBLEPOST=1522510513][/DOUBLEPOST]
elf01, вам проще поставить плагин для блокировки таких сообщений (Block advert, например)
Честно я не записывал до словно то сообщение и хотя я его могу найти на просторах интернета, но это же не значит что я буду так каждое сообщение добавлять в исключения. Ведь в тексте не всегда может быть указана стандартная реклама сервера или сайта, а и простой спам, но не терять же игроков из-за этого.
 
Сверху Снизу