|
Вниманию участников! Данный форум теперь является архивом и вскором времени здесь нельзя будет создавать новых тем! Просьба всем для общения и создания новых тем перейти на наш новый форум: http://amxmodx.su/
high ping kicker
|
|
amJke | Дата: Пятница, 04.12.2009, 01:10:25 | Сообщение # 1 |
Сержант
Группа: Пользователи
Сообщений: 20
Статус: Не в сети
| Доброго времени суток! Решил отредактировать плагин на несколько языков, все вроде правильно сделал, захожу на сервер - на англ. есть на русском не читает *многие плагины на сервере русские (читает все норм) Вот код: Code #include <amxmodx> #include <amxmisc>
new g_Ping[33] new g_Samples[33]
public plugin_init() { register_plugin("High Ping Kicker (Steam)","0.16.2","OLO/shadow") register_concmd("amx_hpk","cmdHpk",ADMIN_KICK,"- configures high_ping_kicker plugin") register_cvar("amx_hpk_ping","200") register_cvar("amx_hpk_check","12") register_cvar("amx_hpk_tests","5") register_cvar("amx_hpk_delay","60") register_dictionary("high_ping_kicker.txt") if ( get_cvar_num( "amx_hpk_check" ) < 5 ) set_cvar_num( "amx_hpk_check" , 5 ) if ( get_cvar_num( "amx_hpk_tests" ) < 3 ) set_cvar_num( "amx_hpk_tests" , 3 ) }
public client_disconnect(id) remove_task( id )
public client_putinserver(id) { g_Ping[id] = 0 g_Samples[id] = 0
if ( !is_user_bot(id) ) { new param[1] param[0] = id set_task( 10.0 , "showWarn" , id , param , 1 ) if (get_cvar_num("amx_hpk_tests") != 0) { set_task( float(get_cvar_num("amx_hpk_delay")), "taskSetting", id, param , 1) } else { set_task( float(get_cvar_num( "amx_hpk_tests" )) , "checkPing" , id , param , 1 , "b" ) } } }
public showWarn(param[]) client_print( param[0] ,print_chat, "%L", LANG_PLAYER, "WITH_PING_KICKER", get_cvar_num( "amx_hpk_ping" ) )
public taskSetting(param[]) { new name[32] get_user_name(param[0],name,31) set_task( float(get_cvar_num( "amx_hpk_tests" )) , "checkPing" , param[0] , param , 1 , "b" ) }
kickPlayer( id ) { new name[32],authid[32] get_user_name(id,name,31) get_user_authid(id,authid,31) client_print(0, print_chat, "%L", LANG_PLAYER, "DISCONNECTED", name) server_cmd("kick #%d ^"Sorry but you have too high ping, try later...^"",get_user_userid(id)) log_amx("Highpingkick: ^"%s<%d><%s>^" was kicked due highping (Average Ping ^"%d^")", name,get_user_userid(id),authid,(g_Ping[id] / g_Samples[id])) }
public checkPing(param[]) { new id = param[ 0 ]
if ( get_user_flags(id) & ADMIN_IMMUNITY ) return
new p, l
get_user_ping( id , p , l )
g_Ping[ id ] += p ++g_Samples[ id ]
if ( (g_Samples[ id ] > get_cvar_num( "amx_hpk_tests" )) && (g_Ping[id] / g_Samples[id] > get_cvar_num( "amx_hpk_ping" )) ) kickPlayer(id) }
public cmdHpk(id,level,cid){ if (!cmd_access(id,level,cid,1)) return PLUGIN_HANDLED new ping[5] new check_arr[5] new tests_arr[5] new delay_arr[5] read_argv(1,ping,4) read_argv(2,check_arr,4) read_argv(3,tests_arr,4) read_argv(4,delay_arr,4) new check = str_to_num(check_arr) new tests = str_to_num(tests_arr) new delay = str_to_num(delay_arr) if ( check < 5 ) check = 5 if ( tests < 3 ) tests = 3
if (read_argc() > 1){ set_cvar_string("amx_hpk_ping",ping) } if (read_argc() > 2) { set_cvar_num("amx_hpk_check",check) } if (read_argc() > 3) { set_cvar_num("amx_hpk_tests",tests) } if (read_argc() > 4) { set_cvar_num("amx_hpk_delay",delay) }
console_print(id,"Syntax: amx_hpk <ping to get kicked> <checks before kicks> <time between checks> <delay before first check in sec.>") console_print(id,"Current High_Ping_Kicker Settings:") console_print(id,"Maxping: %d Time between checks: %d Checkcount: %d Delay: %d",get_cvar_num("amx_hpk_ping"),get_cvar_num("amx_hpk_check"),get_cvar_num("amx_hpk_tests"),get_cvar_num("amx_hpk_delay")) return PLUGIN_HANDLED } К плагину есть текстовый документ с переводом, который добавил в data/lang/ : Code [en] WITH_PING_KICKER = * Players with ping higher than %d will be kicked! DISCONNECTED = ** Player %s disconnected due to high ping.
[ru] WITH_PING_KICKER = * Игроки с пингом выше %d - будут кикнуты! DISCONNECTED = ** Игрок %s был кикнут из-за высокого пинга. Люди помогите, что не так?
|
|
| |
pike | Дата: Воскресенье, 06.12.2009, 15:17:11 | Сообщение # 2 |
Полковник
Группа: Пользователи
Сообщений: 207
Статус: Не в сети
| В чат должно по русски писать, при кике не будет. Здесь еще изменить надо. Code server_cmd("kick #%d ^"Sorry but you have too high ping, try later...^"",get_user_userid(id))
|
|
| |
amJke | Дата: Воскресенье, 06.12.2009, 20:05:35 | Сообщение # 3 |
Сержант
Группа: Пользователи
Сообщений: 20
Статус: Не в сети
| Code server_cmd("kick #%d ^"Sorry but you have too high ping, try later...^"",get_user_userid(id)) Сделал так: Code server_cmd("%L", LANG_SERVER, "kick #%d ^"SORRY_BUT^"",get_user_userid(id)) В high_ping_kicker.txt добавил: Code [en] SORRY_BUT = Sorry but you have too high ping, try later...
[ru] SORRY_BUT = Извините, но вы были кикнуты из-за высокого пинга... Все равно не переводит в чате.... вот скрин как это выглядит (выделил красным): И еще, ппочему - то и на английском теперь не читает...
Сообщение отредактировал amJke - Воскресенье, 06.12.2009, 20:07:40 |
|
| |
pike | Дата: Понедельник, 07.12.2009, 01:51:30 | Сообщение # 4 |
Полковник
Группа: Пользователи
Сообщений: 207
Статус: Не в сети
| Где то так: Code server_cmd("kick #%d ^"%L^"", get_user_userid(id), "SORRY_BUT") Code [ru] WITH_PING_KICKER = * Игроки с пингом выше '%d' - будут кикнуты!
Сообщение отредактировал pike - Понедельник, 07.12.2009, 02:02:02 |
|
| |
amJke | Дата: Пятница, 11.12.2009, 14:58:07 | Сообщение # 5 |
Сержант
Группа: Пользователи
Сообщений: 20
Статус: Не в сети
| В данный момент мне важнее сделать язык чтобы выводилось в главном чате (сообщение 3 - скрин). Добавлено (11.12.2009, 14:58:07) --------------------------------------------- Помогите пожалуйста кто - нибудь с переводом. Очень нужно. Да я думаю он не только мне понадобится...
|
|
| |
pike | Дата: Пятница, 11.12.2009, 16:21:04 | Сообщение # 6 |
Полковник
Группа: Пользователи
Сообщений: 207
Статус: Не в сети
| И так не хочет ? Code [ru] WITH_PING_KICKER = * Игроки с пингом выше "%d" - будут кикнуты!
|
|
| |
amJke | Дата: Пятница, 11.12.2009, 17:00:04 | Сообщение # 7 |
Сержант
Группа: Пользователи
Сообщений: 20
Статус: Не в сети
| Так и не будет! я сразу понял - но хотя попробовал))) Посмсотри как ты написал Quote (pike) Где то так: Code server_cmd("kick #%d ^"%L^"", get_user_userid(id), "SORRY_BUT") Code [ru] WITH_PING_KICKER = * Игроки с пингом выше '%d' - будут кикнуты! КАк может работать WITH_PING_KICKER если стоит SORRY_BUT... Добавлено (11.12.2009, 16:54:32) --------------------------------------------- Да и дело вообще не в том, эта строка отвечает за кик, т.е когд кто то будет кикнут ему выводится сообщение почему его кикнули... Если я ее даже переведу это не изменит чат... У меня в чате проблема скрин есть в 3 сообщении.. там дажа на англ не переводит почему-то А твое Code server_cmd("kick #%d ^"%L^"", get_user_userid(id), "SORRY_BUT") Вообще как бы не правильно там нету "LANG_SERVER" или "LANG_PLAYER" Добавлено (11.12.2009, 17:00:04) --------------------------------------------- А то что я писал в 3 сообщении эти коды вообще к скрину не относятся К скрину идет вот этот код: Code public showWarn(param[]) client_print( param[0] ,print_chat, "%L", LANG_PLAYER, "WITH_PING_KICKER", get_cvar_num( "amx_hpk_ping" ) ) Code [en] WITH_PING_KICKER = * Players with ping higher than %d will be kicked!
[ru] WITH_PING_KICKER = * Игроки с пингом выше %d - будут кикнуты! Тут что не так?
Сообщение отредактировал amJke - Пятница, 11.12.2009, 16:57:39 |
|
| |
tavot | Дата: Пятница, 11.12.2009, 19:00:32 | Сообщение # 8 |
Генерал-майор
Группа: Пользователи
Сообщений: 256
Статус: Не в сети
| amJke, Извиняюсь конечно за тупое предположение, не сочтите что я кого то держу за кого то: А файл в какой кодировке сохраняешь?
|
|
| |
predator | Дата: Пятница, 11.12.2009, 19:15:11 | Сообщение # 9 |
Лейтенант
Группа: Пользователи
Сообщений: 54
Статус: Не в сети
| Посмотрел плагин... у меня глюки или там действительно логических ошибок куча и бреда хватает? Такое ощущение, что писали за 5 минут на коленке и без тестирования.
|
|
| |
predator | Дата: Пятница, 11.12.2009, 19:43:55 | Сообщение # 10 |
Лейтенант
Группа: Пользователи
Сообщений: 54
Статус: Не в сети
| Можно попробовать такой вариант: В прикрепленном ниже плагине необходимо зменить строчку server_cmd ( "kick #%d ^"%L^"", id, "HPK_REASON", get_user_userid ( id ) ) на server_cmd ( "kick #%d ^"%L^"", get_user_userid ( id ), id, "HPK_REASON" ) иначе кикать не будет.
Сообщение отредактировал predator - Воскресенье, 13.12.2009, 14:01:04 |
|
| |
amJke | Дата: Суббота, 12.12.2009, 02:27:30 | Сообщение # 11 |
Сержант
Группа: Пользователи
Сообщений: 20
Статус: Не в сети
| >>Извиняюсь конечно за тупое предположение, не сочтите что я кого то держу за кого то: >А файл в какой кодировке сохраняешь? Да по твоим разговорам я и в пря тупой если сохраняю файлы через амxstudio >>Посмотрел плагин... у меня глюки или там действительно логических ошибок куча и бреда хватает? >Такое ощущение, что писали за 5 минут на коленке и без тестирования. Извините я не знаю за сколько этот плагин делался, но я его редактирую под язык и у меня не получается Можно попробовать такой вариант: Прикрепления: hpk.zip(2Kb) Cпасибо, посмотрю отпишу Добавлено (12.12.2009, 02:27:30) --------------------------------------------- человек спасибо те огромное за плаг + те)))) все найс пашет, тему можно закрывать!)
|
|
| |
tavot | Дата: Суббота, 12.12.2009, 10:10:37 | Сообщение # 12 |
Генерал-майор
Группа: Пользователи
Сообщений: 256
Статус: Не в сети
| amJke, Провел эксперимент - в свой плагин добавил русский текст и сохранил через амх студио - и нифига не работало. Открыл бокнотом и поменял кодировку - все сразу заработало. Так что не надо обижаться. Если бы хотелось кого то обидеть - прямым текстом написал бы. А тут на чужих ошибках учусь не делать свои.
|
|
| |
amJke | Дата: Суббота, 12.12.2009, 13:39:19 | Сообщение # 13 |
Сержант
Группа: Пользователи
Сообщений: 20
Статус: Не в сети
| Какую ты кодировку ставил
|
|
| |
tavot | Дата: Суббота, 12.12.2009, 23:57:31 | Сообщение # 14 |
Генерал-майор
Группа: Пользователи
Сообщений: 256
Статус: Не в сети
| amJke, Quote (amJke) Да по твоим разговорам я и в пря тупой если сохраняю файлы через амxstudio Учитывая эту фразу - я сохранил по умолчанию, ради чистоты эксперимента мысли - не работало Потом сохрани в кодировке: UTF-8 - работает. Добавлено (12.12.2009, 23:57:31) --------------------------------------------- P/s/ эта мысль пришла после просмотра скрина - так как данные отображаются, а текст нет - это я встречал или если не правильно поставлены %s или %d или из за неправильной кодировки , когда используется русский язык. Еще раз повторяю - я ни кого не хочу обидеть. я тут в 90% случаев сам прошу помощи.
Сообщение отредактировал tavot - Суббота, 12.12.2009, 23:57:45 |
|
| |
amJke | Дата: Воскресенье, 13.12.2009, 00:29:13 | Сообщение # 15 |
Сержант
Группа: Пользователи
Сообщений: 20
Статус: Не в сети
| Спасибо
|
|
| |
| AMX Mod X Russian Community © 2006-2025 | |
|
| |