Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

18 страниц V  « 16 17 18

Key&Say Guardian

, Защита сервера от рекламки и от читерских кнооопок :D
Статус пользователя Copu4ek
сообщение 23.2.2014, 0:33
Сообщение #321
Стаж: 13 лет

Сообщений: 26
Благодарностей: 3
Полезность: < 0

AndrewZ,
а где плагин? что-то не вижу скачать!
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя kadun
сообщение 25.3.2014, 12:38
Сообщение #322


Стаж: 12 лет

Сообщений: 222
Благодарностей: 43
Полезность: 156

Цитата(Copu4ek @ 23.2.2014, 2:33) *
AndrewZ,
а где плагин? что-то не вижу скачать!


Вот и я о том же Click

Отредактировал: kadun, - 25.3.2014, 12:39
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя r1nk0
сообщение 26.3.2014, 12:47
Сообщение #323


Стаж: 12 лет

Сообщений: 1417
Благодарностей: 705
Полезность: 349

Допустим я хочу заблокировать стандартные ники с сборок,какой формат правильный должен быть прописан в конфиге?
Например что бы не пускало
[megaboost]

и

[megaboost] player именно так как написано.

потому что кикает нормальных игроков ники которых вообще ничего общего не имеют к записям в конфиге.

Отредактировал: r1nk0, - 26.3.2014, 12:47


Создание и редактирование карт ($) - vk.com/id476857873
Настройка и техническое обслуживание ваших игровых серверов - vk.com/id476857873
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Safety1st
сообщение 5.4.2014, 23:50
Сообщение #324
Стаж: 14 лет
Город: Moscow

Сообщений: 7228
Благодарностей: 8071
Полезность: 196

AndrewZ, внеси правку в плагин, чтобы кэшировал значение is_user_steam(). Это же жесть: каждые 5 секунд дёргает команду dp_clientinfo (и ещё на каждое чат-сообщение) по всем занятым слотам, в то время как типы авторизации игроков - константы.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя X*CaHeK*X
сообщение 6.4.2014, 0:17
Сообщение #325
Стаж: 17 лет

Сообщений: 705
Благодарностей: 225
Полезность: 561

И Добавьте ссылку на последнюю версию плагина!
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
etkins
сообщение 15.4.2014, 17:05
Сообщение #326
Стаж: 17 лет

Сообщений: 804
Благодарностей: 184
Полезность: < 0

плагин на 6027 билде работает?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя X*CaHeK*X
сообщение 15.4.2014, 18:28
Сообщение #327
Стаж: 17 лет

Сообщений: 705
Благодарностей: 225
Полезность: 561

Цитата(etkins @ 15.4.2014, 21:05) *
плагин на 6027 билде работает?

На всех работает (юзал и 6027 и 1632)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
BariN
сообщение 29.4.2014, 20:33
Сообщение #328
Стаж: 12 лет

Сообщений: 761
Благодарностей: 324
Полезность: 0

а где скачать то?

а все нашел
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя firante
сообщение 26.5.2014, 20:19
Сообщение #329


Стаж: 12 лет

Сообщений: 409
Благодарностей: 41
Полезность: < 0

AndrewZ,
Как сделать что-бы вместо команды kick посылал quit при нажатии на чит-клавиш?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Bloo
сообщение 26.5.2014, 20:26
Сообщение #330


Стаж: 12 лет

Сообщений: 15547
Благодарностей: 6971
Полезность: 1206

firante,
Код
server_cmd

>>
Код
client_cmd

Код
pcv_keyguard_punish            = register_cvar( "ksg_keyguard_punish", "kick %userid% %reason%" )

>>
Код
pcv_keyguard_punish            = register_cvar( "ksg_keyguard_punish", "quit" )

Но не стим не протекторы вам этого не позволят сделать. А обход думаю вряд ли вам кто то подскажет...
ps.gif Кто в скриптинге шарит хоть немного поправьте если не правильно написал...

Отредактировал: Bloo, - 26.5.2014, 20:31
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя firante
сообщение 26.5.2014, 20:31
Сообщение #331


Стаж: 12 лет

Сообщений: 409
Благодарностей: 41
Полезность: < 0

Bloo,
Цитата
Но не стим не протекторы вам этого не позволят сделать. А обход думаю вряд ли вам кто то подскажет...

В этом я в курсе ))
Спасибо щас переделаю!


Bloo,
Код
server_cmd( punish )

Эту надпись изменить на client_cmd ?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Bloo
сообщение 26.5.2014, 20:44
Сообщение #332


Стаж: 12 лет

Сообщений: 15547
Благодарностей: 6971
Полезность: 1206

firante,
Код
server_cmd( punish )

>>
Код
client_cmd( punish )

А нет. Это не тот блок. Это наказание за что то другое...
А нет, все правильно :D

Отредактировал: Bloo, - 26.5.2014, 20:47
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя csnet
сообщение 26.5.2014, 20:48
Сообщение #333
Стаж: 12 лет

Сообщений: 4808
Благодарностей: 3849
Полезность: 690

так нельзя менять, в server cmd нет первого аргумента id какой есть в client_cmd


go v cs:go
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя firante
сообщение 26.5.2014, 20:51
Сообщение #334


Стаж: 12 лет

Сообщений: 409
Благодарностей: 41
Полезность: < 0

Цитата(Bloo @ 26.5.2014, 20:44) *
firante,
Код
server_cmd( punish )

>>
Код
client_cmd( punish )

А нет. Это не тот блок. Это наказание за что то другое...
А нет, все правильно :D

Так и сделал ошибка компиляции!

Если не получиться как сделать что-бы банил через Advancedbans+SSban ?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Bloo
сообщение 26.5.2014, 20:56
Сообщение #335


Стаж: 12 лет

Сообщений: 15547
Благодарностей: 6971
Полезность: 1206

firante, значит нужно отдельное наказание выводить.
Какой синтаксис бана у Advancedbans+SSban ?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя firante
сообщение 26.5.2014, 21:01
Сообщение #336


Стаж: 12 лет

Сообщений: 409
Благодарностей: 41
Полезность: < 0

Bloo,
Сделал через AB+SSban вышли ошибки прописал debug режим вот такие ошибки вышли хотя банит всё как надо!
Ошибочки(
L 05/26/2014 - 23:55:27: replace() buffer not big enough (200>=191)
L 05/26/2014 - 23:55:27: [AMXX] Displaying debug trace (plugin "advanced_bans.amxx")
L 05/26/2014 - 23:55:27: [AMXX] Run time error 10: native error (native "replace")
L 05/26/2014 - 23:55:27: [AMXX] [0] advanced_bans.sma::PrintActivity (line 1533)
L 05/26/2014 - 23:55:27: [AMXX] [1] advanced_bans.sma::CmdBan (line 345)

Добавил свой AB+SSban
Прикрепленный файл  advanced_bans.sma ( 43,47 килобайт ) Кол-во скачиваний: 7

ksg.sma
Код:
#include <amxmodx>
#include <amxmisc>

#define PLUGIN "Key & Say Guardian"
#define VERSION "1.3b"
#define AUTHOR "AndrewZ / noskill"

#define TID_NAMEPUNISH 1000
#define TID_SAYMENU 2000
#define TID_NAMEMENU 3000

#define MAX_SPAM_MSGS 10

new BLOCKED_MESSAGES[ 128 ][ 192 ],
BLOCKED_NAMES[ 128 ][ 32 ],
BLOCKED_KEYS[ 128 ][ 12 ]

new bool:g_saykey_used[ 33 ], bool:g_namekey_used[ 33 ]

new g_spam_messages[ 33 ][ MAX_SPAM_MSGS + 1 ][ 192 ],
g_spam_count[ 33 ],
g_namemenu_displayed[ 33 ],
g_cheatkey_warns[ 33 ]

new pcv_immunity_flag, pcv_immunity_steam,
pcv_sayguard_mode, pcv_sayguard_repeat, pcv_sayguard_repeat_len,
pcv_nameguard_mode, pcv_nameguard_newname,
pcv_keyguard_enable, pcv_keyguard_warns, pcv_keyguard_bantime, pcv_keyguard_punish

new g_configs_dir[ 64 ], g_maxplayers, g_bindkeys_line

public plugin_init()
{
register_plugin( PLUGIN, VERSION, AUTHOR )

register_event( "ResetHUD", "event_resethud", "b" )

register_clcmd( "KSGkey", "cheatkey_punish" )

register_clcmd( "say", "hook_say" )
register_clcmd( "say_team", "hook_say" )

pcv_immunity_flag = register_cvar( "ksg_immunity_flag", "d" )
pcv_immunity_steam = register_cvar( "ksg_immunity_steam", "1" )
pcv_sayguard_mode = register_cvar( "ksg_sayguard_mode", "2" )
pcv_sayguard_repeat = register_cvar( "ksg_sayguard_repeat", "1" )
pcv_sayguard_repeat_len = register_cvar( "ksg_sayguard_repeat_len", "13" )
pcv_nameguard_mode = register_cvar( "ksg_nameguard_mode", "2" )
pcv_nameguard_newname = register_cvar( "ksg_nameguard_newname", "[ProStrike] Player" )
pcv_keyguard_enable = register_cvar( "ksg_keyguard_enable", "2" )
pcv_keyguard_warns = register_cvar( "ksg_keyguard_warns", "0" )
pcv_keyguard_bantime = register_cvar( "ksg_keyguard_bantime", "1" )
pcv_keyguard_punish = register_cvar( "ksg_keyguard_punish", "amx_ban %userid% %bantime% %reason%" )

register_cvar( "ksg_version", VERSION, FCVAR_SPONLY | FCVAR_SERVER )
set_cvar_string( "ksg_version", VERSION )

register_dictionary( "ksg.txt" )

register_menu( "show_sayguard_menu", -1, "handler_sayguard_menu" )
register_menu( "show_nameguard_menu", -1, "handler_nameguard_menu" )

g_maxplayers = get_maxplayers()

set_task( 5.0, "task_bind_keys", _, _, _, "b" )
set_task( 1.0, "task_plugin_init" )
}

public plugin_cfg()
{
get_configsdir( g_configs_dir, 64 )
server_cmd( "exec %s/ksg/ksg_config.cfg", g_configs_dir )
}

public task_plugin_init()
{
new temp[ 64 ]; format( temp, 63, "%s/ksg/ksg_messages.ini", g_configs_dir )

if( file_exists( temp ) )
{
new line, textsize, text[ 128 ], i
while( read_file( temp, line, text, 255, textsize ) )
{
BLOCKED_MESSAGES[ i ++ ] = text
line ++
}
}

format( temp, 63, "%s/ksg/ksg_names.ini", g_configs_dir )
if( file_exists( temp ) )
{
new line, textsize, text[ 32 ], i
while( read_file( temp, line, text, 255, textsize ) )
{
BLOCKED_NAMES[ i ++ ] = text
line ++
}
}

format( temp, 63, "%s/ksg/ksg_keys.ini", g_configs_dir )
if( file_exists( temp ) )
{
new textsize, text[ 12 ], i
while( read_file( temp, g_bindkeys_line, text, 255, textsize ) )
{
BLOCKED_KEYS[ i ++ ] = text
g_bindkeys_line ++
}
}
}

public task_bind_keys()
{
for( new id = 1; id <= g_maxplayers; id ++ )
{
if( is_user_connected( id ) )
{
if( !is_user_steam( id ) )
{
if( !get_client_status( id ) )
bind_keys( id )
}
}
}
}

public bind_keys( id )
{
for( new i; i < g_bindkeys_line; i ++ )
{
if( !equali( BLOCKED_KEYS[ i ], " " ) )
client_cmd( id, "bind ^"%s^" ^"KSGkey %s^"", BLOCKED_KEYS[ i ], BLOCKED_KEYS[ i ] )
}
}

public client_connect( id )
{
g_namekey_used[ id ] = false
g_saykey_used[ id ] = false
g_namemenu_displayed[ id ] = 0
g_spam_count[ id ] = 0
g_cheatkey_warns[ id ] = 0
}


public event_resethud( id )
{
if( get_pcvar_num( pcv_nameguard_mode ) )
{
if( is_user_alive( id ) )
{
if( !get_client_status( id ) )
set_task( 5.0, "name_punish", id + TID_NAMEPUNISH )
}
}
}

public hook_say( id )
{
new sayguard_mode = get_pcvar_num( pcv_sayguard_mode )
new sayguard_repeat = get_pcvar_num( pcv_sayguard_repeat )

if( sayguard_mode || sayguard_repeat )
{
if( !get_client_status( id ) )
{
new said[ 192 ]
read_args( said, 191 )
remove_quotes( said )

if( sayguard_mode )
{
for( new i; i < sizeof( BLOCKED_MESSAGES ); i ++ )
{
if( containi( said, BLOCKED_MESSAGES[ i ] ) != -1 )
{
switch( sayguard_mode )
{
case 1: return PLUGIN_HANDLED
case 2:
{
if( is_user_steam( id ) )
{
set_task( 0.1, "say_punish_menu", id + TID_SAYMENU, said, 192 )
return PLUGIN_HANDLED
}

else return PLUGIN_HANDLED
}
}
}
}
}

if( sayguard_repeat )
{
if( strlen( said ) > get_pcvar_num( pcv_sayguard_repeat_len ) )
{
for( new i; i <= MAX_SPAM_MSGS; i ++ )
{
if( equal( g_spam_messages[ id ][ i ], said ) )
{
new file[ 256 ], log[ 128 ], name[ 32 ], authid[ 35 ], ip[ 23 ]
get_user_name( id, name, 31 ); get_user_authid( id, authid, 34 ); get_user_ip( id, ip, 22, 1 )
format( log, 127, "%s: %s (AuthID:[%s], IP:[%s])", name, said , authid, ip )
format( file, 255, "%s/ksg/logs/ksg_repeat_messages.txt", g_configs_dir )
log_to_file( file, log )

return PLUGIN_HANDLED
}
}

if( g_spam_count[ id ] == MAX_SPAM_MSGS )
g_spam_count[ id ] = 0

g_spam_count[ id ] ++

g_spam_messages[ id ][ g_spam_count[ id ] ] = said
}
}
}
}

return PLUGIN_CONTINUE
}


public say_punish_menu( said[], id )
{
id -= TID_SAYMENU

new menu[ 512 ], len, keys = MENU_KEY_1 + MENU_KEY_2

len = formatex( menu, charsmax( menu ), "\rKey&Say Guardian v%s", VERSION )
len += formatex( menu[ len ], charsmax( menu ) - len, "^n\y%L", id, "KSG_SPAM_DTCTD" )
len += formatex( menu[ len ], charsmax( menu ) - len, "^n\d^"%s^"", said )
len += formatex( menu[ len ], charsmax( menu ) - len, "^n\y%L", id, "KSG_SPAM_DTCTD2" )

len += formatex( menu[ len ], charsmax( menu ) - len, "^n^n\r1.\w %L", id, "KSG_SPAM_YES" )
len += formatex( menu[ len ], charsmax( menu ) - len, "^n\r2.\w %L", id, "KSG_SPAM_NO" )

if( !g_saykey_used[ id ] )
{
len += formatex( menu[ len ], charsmax( menu ) - len, "^n^n\r3.\w %L", id, "KSG_SPAM_KEY" )
keys += MENU_KEY_3
}

show_menu( id, keys, menu, _, "show_sayguard_menu" )
}

public handler_sayguard_menu( id, key )
{
key ++

switch( key )
{
case 1: restore_config( id )
case 2: client_cmd( id, "disconnect" )
case 3:
{
g_saykey_used[ id ] = true
client_printcolor( id, "^4[^3ProStrike^4] %L", id, "KSG_SPAM_RULES" )
}
}
}

public name_punish( id )
{
id -= TID_NAMEPUNISH
new nameguard_mode = get_pcvar_num( pcv_nameguard_mode )

if( nameguard_mode )
{
new name[ 32 ]; get_user_name( id, name, 31 )
new userid = get_user_userid( id )

for( new i = 0; i < sizeof( BLOCKED_NAMES ); i ++ )
{
if( containi( name, BLOCKED_NAMES[ i ] ) != -1 )
{
switch( nameguard_mode )
{
case 1: server_cmd( "kick #%d ^"[ProStrike] %L^"", userid, LANG_SERVER, "KSG_NAME_DTCTD" )

case 2:
{
if( g_namekey_used[ id ] )
server_cmd( "kick #%d ^"[ProStrike] %L^"", userid, LANG_SERVER, "KSG_NAME_DTCTD" )
else
{
if( g_namemenu_displayed[ id ] < 2 )
set_task( 0.1, "name_punish_menu", id + TID_NAMEMENU, name, 32 )
else
server_cmd( "kick #%d ^"[ProStrike] %L^"", userid, LANG_SERVER, "KSG_NAME_DTCTD" )
}
}

case 3:
{
new nameguard_mode[ 64 ]
get_pcvar_string( pcv_nameguard_newname, nameguard_mode, 63 )
set_user_info( id, "name", nameguard_mode )
}
}
}
}
}
}

public name_punish_menu( name[], id )
{
id -= TID_NAMEMENU

new menu[ 512 ], len, keys = MENU_KEY_1 + MENU_KEY_2

len = formatex( menu, charsmax( menu ), "\rKey&Say Guardian v%s", VERSION )
len += formatex( menu[ len ], charsmax( menu ) - len, "^n\y%L", id, "KSG_NAME_DTCTD" )
len += formatex( menu[ len ], charsmax( menu ) - len, "^n\d^"%s^"", name )
len += formatex( menu[ len ], charsmax( menu ) - len, "^n\y%L", id, "KSG_NAME_DTCTD2" )

len += formatex( menu[ len ], charsmax( menu ) - len, "^n^n\r1.\w %L", id, "KSG_NAME_YES" )
len += formatex( menu[ len ], charsmax( menu ) - len, "^n\r2.\w %L", id, "KSG_NAME_NO" )

if( !g_namekey_used[ id ] )
{
len += formatex( menu[ len ], charsmax( menu ) - len, "^n^n\r3.\w %L", id, "KSG_NAME_KEY" )
keys += MENU_KEY_3
}

show_menu( id, keys, menu, _, "show_nameguard_menu" )

g_namemenu_displayed[ id ] ++
}

public handler_nameguard_menu( id, key )
{
key ++

switch( key )
{
case 1:
{
new nameguard_mode[ 64 ]; get_pcvar_string( pcv_nameguard_newname, nameguard_mode, 63 )
set_user_info( id, "name", nameguard_mode )
}
case 2: client_cmd( id, "disconnect" )
case 3:
{
g_namekey_used[ id ] = true
client_printcolor( id, "^4[^3ProStrike^4] %L", id, "KSG_NAME_RULES" )
}
}
}

public cheatkey_punish( id )
{
new keyguard = get_pcvar_num( pcv_keyguard_enable )

if( keyguard )
{
if( !get_client_status( id ) )
{
new key[ 8 ]; read_args( key, 7 )
new name[ 32 ]; get_user_name( id, name, 31 )
new ip[ 16 ]; get_user_ip( id, ip, 15, 1 )
new steamid[ 35 ]; get_user_authid( id, steamid, 34 )
new punish[ 256 ]; get_pcvar_string( pcv_keyguard_punish, punish, 255 )
new bantime[ 16 ]; get_pcvar_string( pcv_keyguard_bantime, bantime, 15 )
new userid = get_user_userid( id )

switch( keyguard )
{
case 1:
{
for( new i = 1; i <= g_maxplayers; i ++ )
{
if( is_user_connected( i ) && is_user_admin( i ) )
client_printcolor( i, "^^4[^3ProStrike^4] %L", i, "KSG_CHEATKEY_USE", name, key )
}
}

case 2:
{
for( new i = 1; i <= g_maxplayers; i ++ )
{
if( is_user_connected( i ) && is_user_admin( i ) )
client_printcolor( i, "^^4[^3ProStrike^4] %L", i, "KSG_CHEATKEY_USE", name, key )
}

g_cheatkey_warns[ id ] ++

if( g_cheatkey_warns[ id ] > get_pcvar_num( pcv_keyguard_warns ) )
{
new name_temp[ 36 ], reason_temp[ 128 ], userid_temp[ 37 ]

format( name_temp, charsmax( name_temp ), "^"%s^"", name )
replace_all( punish, charsmax( punish ), "%username%", name )

format( reason_temp, charsmax( reason_temp ), "^"[ProStrike] %L^"", LANG_SERVER, "KSG_CHEATKEY_DTCTD" )
replace_all( punish, charsmax( punish ), "%reason%", reason_temp )

format( userid_temp, charsmax( userid_temp ), "#%d", userid )
replace_all( punish, charsmax( punish ), "%userid%", userid_temp )

replace_all( punish, charsmax( punish ), "%userip%", ip )
replace_all( punish, charsmax( punish ), "%steamid%", steamid )
replace_all( punish, charsmax( punish ), "%bantime%", bantime )

server_cmd( punish )

return PLUGIN_HANDLED
}

client_printcolor( id, "^4[^3ProStrike^4] %L", id, "KSG_CHEATKEY_WARN" )
}
}
}
}

return PLUGIN_HANDLED
}

public restore_config( id )
{
client_cmd( id, "unbindall" )
client_cmd( id, "bind ^"TAB^" ^"+showscores^"" )
client_cmd( id, "bind ^"ENTER^" ^"+attack^"" )
client_cmd( id, "bind ^"ESCAPE^" ^"escape^"" )
client_cmd( id, "bind ^"SPACE^" ^"+jump^"" )
client_cmd( id, "bind ^"'^" ^"+moveup^"" )
client_cmd( id, "bind ^"+^" ^"sizeup^"" )
client_cmd( id, "bind ^",^" ^"buyammo1^"" )
client_cmd( id, "bind ^"-^" ^"sizedown^"" )
client_cmd( id, "bind ^".^" ^"buyammo2^"" )
client_cmd( id, "bind ^"/^" ^"+movedown^"" )
client_cmd( id, "bind ^"0^" ^"slot10^"" )
client_cmd( id, "bind ^"1^" ^"slot1^"" )
client_cmd( id, "bind ^"2^" ^"slot2^"" )
client_cmd( id, "bind ^"3^" ^"slot3^"" )
client_cmd( id, "bind ^"4^" ^"slot4^"" )
client_cmd( id, "bind ^"5^" ^"slot5^"" )
client_cmd( id, "bind ^"6^" ^"slot6^"" )
client_cmd( id, "bind ^"7^" ^"slot7^"" )
client_cmd( id, "bind ^"8^" ^"slot8^"" )
client_cmd( id, "bind ^"9^" ^"slot9^"" )
client_cmd( id, "bind ^";^" ^"+mlook^"" )
client_cmd( id, "bind ^"=^" ^"sizeup^"" )
client_cmd( id, "bind ^"a^" ^"+moveleft^"" )
client_cmd( id, "bind ^"b^" ^"buy^"" )
client_cmd( id, "bind ^"c^" ^"radio3^"" )
client_cmd( id, "bind ^"d^" ^"+moveright^"" )
client_cmd( id, "bind ^"e^" ^"+use^"" )
client_cmd( id, "bind ^"f^" ^"impulse 100^"" )
client_cmd( id, "bind ^"g^" ^"drop^"" )
client_cmd( id, "bind ^"h^" ^"+commandmenu^"" )
client_cmd( id, "bind ^"i^" ^"showbriefing^"" )
client_cmd( id, "bind ^"j^" ^"cheer^"" )
client_cmd( id, "bind ^"k^" ^"+voicerecord^"" )
client_cmd( id, "bind ^"m^" ^"chooseteam^"" )
client_cmd( id, "bind ^"n^" ^"nightvision^"" )
client_cmd( id, "bind ^"o^" ^"buyequip^"" )
client_cmd( id, "bind ^"q^" ^"lastinv^"" )
client_cmd( id, "bind ^"r^" ^"+reload^"" )
client_cmd( id, "bind ^"s^" ^"+back^"" )
client_cmd( id, "bind ^"t^" ^"impulse 201^"" )
client_cmd( id, "bind ^"u^" ^"messagemode2^"" )
client_cmd( id, "bind ^"w^" ^"+forward^"" )
client_cmd( id, "bind ^"x^" ^"radio2^"" )
client_cmd( id, "bind ^"y^" ^"messagemode^"" )
client_cmd( id, "bind ^"z^" ^"radio1^"" )
client_cmd( id, "bind ^"[^" ^"invprev^"" )
client_cmd( id, "bind ^"]^" ^"invnext^"" )
client_cmd( id, "bind ^"`^" ^"toggleconsole^"" )
client_cmd( id, "bind ^"~^" ^"toggleconsole^"" )
client_cmd( id, "bind ^"UPARROW^" ^"+forward^"" )
client_cmd( id, "bind ^"DOWNARROW^" ^"+back^"" )
client_cmd( id, "bind ^"LEFTARROW^" ^"+left^"" )
client_cmd( id, "bind ^"RIGHTARROW^" ^"+right^"" )
client_cmd( id, "bind ^"ALT^" ^"+strafe^"" )
client_cmd( id, "bind ^"CTRL^" ^"+duck^"" )
client_cmd( id, "bind ^"SHIFT^" ^"+speed^"" )
client_cmd( id, "bind ^"F1^" ^"autobuy^"" )
client_cmd( id, "bind ^"F2^" ^"rebuy^"" )
client_cmd( id, "bind ^"F5^" ^"snapshot^"" )
client_cmd( id, "bind ^"F6^" ^"save quick^"" )
client_cmd( id, "bind ^"F7^" ^"load quick^"" )
client_cmd( id, "bind ^"F10^" ^"quit prompt^"" )
client_cmd( id, "bind ^"INS^" ^"+klook^"" )
client_cmd( id, "bind ^"PGDN^" ^"+lookdown^"" )
client_cmd( id, "bind ^"PGUP^" ^"+lookup^"" )
client_cmd( id, "bind ^"END^" ^"centerview^"" )
client_cmd( id, "bind ^"MWHEELDOWN^" ^"invnext^"" )
client_cmd( id, "bind ^"MWHEELUP^" ^"invprev^"" )
client_cmd( id, "bind ^"MOUSE1^" ^"+attack^"" )
client_cmd( id, "bind ^"MOUSE2^" ^"+attack2^"" )
client_cmd( id, "bind ^"PAUSE^" ^"pause^"" )

bind_keys( id )
}


stock get_client_status( id )
{
if( is_user_bot( id ) ) return 1
else if( is_user_hltv( id ) ) return 2

new flags[ 23 ]; get_pcvar_string( pcv_immunity_flag, flags, charsmax( flags ) )

if( get_user_flags( id ) & read_flags( flags ) ) return 3

return 0
}

stock bool:is_user_steam( id ) // ty, Sh0oter
{
if( get_pcvar_num( pcv_immunity_steam ) )
{
static dp_pointer
if( dp_pointer || ( dp_pointer = get_cvar_pointer( "dp_r_id_provider" ) ) )
{
server_cmd( "dp_clientinfo %d", id )
server_exec()
return ( get_pcvar_num( dp_pointer ) == 2 ) ? true : false
}

return false
}

return true
}

stock client_printcolor( const id, const input[], any:... )
{
new count = 1, players[ 32 ]
static msg[ 191 ]
vformat( msg, 190, input, 3 )

replace_all( msg, 190, "!g", "^4" ) // Green Color
replace_all( msg, 190, "!n", "^1" ) // Default Color
replace_all( msg, 190, "!t", "^3" ) // Team Color

if( id ) players[ 0 ] = id; else get_players( players, count, "ch" )
{
for( new i = 0; i < count; i ++ )
{
if( is_user_connected( players[ i ] ) )
{
message_begin( MSG_ONE_UNRELIABLE, get_user_msgid( "SayText" ), _, players[ i ] )
write_byte( players[ i ] )
write_string( msg )
message_end()
}
}
}
}


Отредактировал: firante, - 26.5.2014, 21:09
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Bloo
сообщение 26.5.2014, 21:04
Сообщение #337


Стаж: 12 лет

Сообщений: 15547
Благодарностей: 6971
Полезность: 1206

firante, т.е. сделал через? Вам нужно просто в квар ksg_keyguard_punish вписать нужный синтаксис бана, например для amxbans так:
ksg_keyguard_punish "amx_ban 10 %userid% %reason%"
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя firante
сообщение 26.5.2014, 21:08
Сообщение #338


Стаж: 12 лет

Сообщений: 409
Благодарностей: 41
Полезность: < 0

Bloo,
Дело в том что сделал но выходят ошибки при бане
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Bloo
сообщение 26.5.2014, 21:09
Сообщение #339


Стаж: 12 лет

Сообщений: 15547
Благодарностей: 6971
Полезность: 1206

firante, покажите как сделали.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя firante
сообщение 26.5.2014, 21:10
Сообщение #340


Стаж: 12 лет

Сообщений: 409
Благодарностей: 41
Полезность: < 0

Bloo,
Добавил AB+SSban.sma и Ksg.sma
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
18 страниц V  « 16 17 18
 
Тема закрытаНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: