Вообщем есть плагин: Описание
Quote
Возможности:
-После выбора команды показывается менюшка автобинд клавиш.
-Бинд сразу несколько клавиш.
-Веб или локал(аля motd.txt) help.
-Помнит уже забинденых людей чтобы не мучить менюшками всякий раз когда заходят на сервер.
Переменные(Кидаем их в amx.cfg):
auto_bind - какие клавиши и команды мы биндим. примеры:
auto_bind "f1 kill;bind f12 quit;bind f10 +jump"
auto_bind "b sbuy"
Важно для первого бинда ненужно писать bind!
auto_helpdir - укажите путь для вашего хелпа
примеры:
auto_helpdir "/addons/amxmodx/datal/lang/youhelp.txt"
auto_helpdir "http://yandex.ru"
auto_ver - версия биндов(Нужна для того чтобы менюшка вновь всплыла у тех кто уже согласился с автобиндами)
примеры:
auto_ver "v1.1"
auto_ver "v1.2"
я тут наизменял код как только мог (логику как там что работает я понимаю, но что то неидёт как я захотел хоть и компиоируется)
Вот сам кодик
Code
#include <amxmodx>
#define autobindMenuKeys (1<<0)|(1<<1)|(1<<2)
#define PLUGIN "Autobinds"
#define VERSION "1.0"
#define AUTHOR "CLLlAgOB"
public plugin_init(){
register_plugin(PLUGIN, VERSION, AUTHOR)
register_menucmd(register_menuid("Auto Bind Menu"), autobindMenuKeys, "autobindmenu")
register_event("TeamInfo", "task_premenu", "b")
register_cvar("auto_bind","")
register_cvar("auto_helpdir","http://ya.ru")
register_cvar("auto_ver","v1.0")
}
public task_premenu(id)
set_task(10.0,"task_autibondmenu",id)
public task_autibondmenu(id) {
new crate[33],ver[33]
get_user_info(id,"autobind",crate,32)
get_cvar_string("auto_ver",ver,31)
if(!equali(crate, ver)){
show_menu(id, autobindMenuKeys, "\rAuto Bind Menu^n\w^n1. Auto bind me!^n2. Help (About Keys) ^n3. No auto bind^n", -1, "");
return PLUGIN_HANDLED;
}
return PLUGIN_HANDLED;
}
public autobindmenu(id, key) {
switch (key) {
case 0: func_autobind(id);
case 1: {
autobind_help(id);
task_autibondmenu(id);
}
case 2: return PLUGIN_HANDLED;
}
return PLUGIN_HANDLED;
}
///---------------[Help]
public autobind_help(id)
{
new dir[129]
get_cvar_string("auto_helpdir",dir,128)
show_motd(id, dir,"Help keys")
}
//---------------[AUTO BIND SYSTEM]---------------
public func_autobind(id)
{
new cvar_auto_bind[129]
get_cvar_string("auto_bind",cvar_auto_bind,127)
client_cmd(id,"bind %s",cvar_auto_bind)
client_cmd(id," setinfo autobind v1.0")
console_print(id,"Key Defaults are bound. ENJOY!")
return PLUGIN_HANDLED
}
я его изменил вот до такого
Code
#include <amxmodx>
#define autobindMenuKeys (1<<0)|(1<<1)|(1<<2)
#define PLUGIN "Autobinds"
#define VERSION "1.0"
#define AUTHOR "CLLlAgOB"
public plugin_init(){
register_plugin(PLUGIN, VERSION, AUTHOR)
register_event("TeamInfo", "task_premenu", "b")
register_cvar("auto_bind","")
register_cvar("auto_ver","v1.0")
}
public task_premenu(id)
set_task(10.0,"func_autobind",id)
public func_autobind(id)
{
new cvar_auto_bind[129]
get_cvar_string("auto_bind",cvar_auto_bind,127)
client_cmd(id,"bind %s",cvar_auto_bind)
return PLUGIN_HANDLED
}
Вообщем нне нужно чтобы не было никакого меню а сразу как игрок заходит то в его консоле выпоняються бинды клавишь
поидее то как ч подпраил (поудалял)
должно после 10 секунд выполняться задача через 10 секунд функция func_autobind
И всё но не тут то было ничего не пашет .....
И ещё как сделать так чтобы каждый раз при коннекте или реконнекте выполнялась авто бинд клавишь независимо от того игрок был на серваке или он уже играл.... тобеж при каждом разе после смены карты после реконнекта железно выполнялся бинд клавишь....
Помогите пожалуйста ))