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

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

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

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

teamlocker изменения команды вызова

Статус пользователя Zylex
сообщение 22.8.2015, 22:34
Сообщение #1


Стаж: 10 лет

Сообщений: 128
Благодарностей: 6
Полезность: 40

Помогите как сделать чтоб команды можно было закрывать/открывать через чат. пример: /lock ct, /lock t
пробовал register_clcmd("say /lock",
не получилось( Надеюсь на вашу помощь

Код:
/* AMX Mod script. 
*
* © Copyright 2003
* This file is provided as is (no warranties).
*
* Big thanks to Doombringer/Deviance for helping.
*/

new const PLUGIN[] = "Team Locker";
new const VERSION[] = "1.5"
new const AUTHOR[] = "Bmann_420";

#include <amxmodx>
#include <amxmisc>
#include <colorchat>

#define TE 0
#define CT 1
#define AUTO 4
#define SPEC 5

new const Teamnames[6][] = {
"Terrorists",
"Counter-Terrorists",
"",
"",
"Auto",
"Spectator"
}

new bool:blockjoining[6]

new amx_show_activity

public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR);
register_dictionary("teamlocker.txt")

register_cvar("teamlocker",VERSION,FCVAR_SERVER|FCVAR_EXTDLL|FCVAR_UNLOGGED|FCVAR_SPONLY);
register_menucmd(register_menuid("Team_Select",1), (1<<0)|(1<<1)|(1<<4)|(1<<5), "team_select");

register_clcmd("jointeam", "join_team");

register_concmd("amx_lock", "admin_lock", ADMIN_SLAY,"- <CT/T/Auto/Spec> Locks a team");
register_concmd("amx_unlock", "admin_unlock", ADMIN_SLAY,"- <CT/T/Auto/Spec> Unlocks a team");
}
public plugin_cfg()
{
amx_show_activity = get_cvar_pointer("amx_show_activity");
}

public admin_unlock(id, level, cid)
{
if(!cmd_access(id, level, cid, 2))
return PLUGIN_HANDLED

new Arg1[6]

read_argv(1, Arg1, 5)

if(!equali(Arg1, "T") && !equali(Arg1, "CT") && !equali(Arg1, "Auto") && !equali(Arg1, "Spec"))
{
client_print(id, print_console, "%L", LANG_PLAYER, "TEAM_INVALID")
return PLUGIN_HANDLED
}

new team

if(equali(Arg1, "T"))
team = TE
else if(equali(Arg1, "CT"))
team = CT
else if(equali(Arg1, "Auto"))
team = AUTO
else if(equali(Arg1, "Spec"))
team = SPEC

blockjoining[team] = false

new name[32], steamid[38]

get_user_name(id, name, 31)
get_user_authid(id, steamid, 37)

switch(get_pcvar_num(amx_show_activity)) {
case 2: client_print(0,print_chat,"%L", LANG_PLAYER, "TEAM_UNLOCK_CASE2",name,Teamnames[team])
case 1: client_print(0,print_chat,"%L", LANG_PLAYER, "TEAM_UNLOCK_CASE1",Teamnames[team])
}

console_print(id,"%L", LANG_PLAYER, "TEAM_UNLOCK_CONSOLE",Teamnames[team])
log_amx("%L", LANG_SERVER, "UNLOCK_TEAMS_LOG", name,steamid,Teamnames[team])

return PLUGIN_HANDLED
}

public admin_lock(id, level, cid)
{
if(!cmd_access(id, level, cid, 2))
return PLUGIN_HANDLED

new Arg1[6]

read_argv(1, Arg1, 5)

if(!equali(Arg1, "T") && !equali(Arg1, "CT") && !equali(Arg1, "Auto") && !equali(Arg1, "Spec"))
{
client_print(id, print_console, "%L", LANG_PLAYER, "TEAM_INVALID")
return PLUGIN_HANDLED
}

new team

if(equali(Arg1, "T"))
team = TE
else if(equali(Arg1, "CT"))
team = CT
else if(equali(Arg1, "Auto"))
team = AUTO
else if(equali(Arg1, "Spec"))
team = SPEC

blockjoining[team] = true

new name[32], steamid[38]

get_user_name(id, name, 31)
get_user_authid(id, steamid, 37)

switch(get_pcvar_num(amx_show_activity)) {
case 2: client_print(0,print_chat,"%L", LANG_PLAYER, "TEAM_LOCK_CASE2",name,Teamnames[team])
case 1: client_print(0,print_chat,"%L", LANG_PLAYER, "TEAM_LOCK_CASE1",Teamnames[team])
}

console_print(id,"%L", LANG_PLAYER, "TEAM_LOCK_CONSOLE",Teamnames[team])
log_amx("%L", LANG_SERVER, "LOCK_TEAMS_LOG", name,steamid,Teamnames[team])

return PLUGIN_HANDLED
}

public team_select(id, key)
{
if ( blockjoining[key] == true )
{
engclient_cmd(id, "chooseteam")
return PLUGIN_HANDLED
}

return PLUGIN_CONTINUE
}

public join_team(id)
{
if (get_user_flags(id) & ( ADMIN_KICK | ADMIN_LEVEL_A ))
{
remove_task(id)
return PLUGIN_CONTINUE
}

new arg[2]
read_argv(1, arg, 1)

if (blockjoining[str_to_num(arg)-1] == true)
{
engclient_cmd(id, "chooseteam")
return PLUGIN_HANDLED
}

return PLUGIN_CONTINUE
}


Отредактировал: Bloo, - 25.8.2015, 18:18
Причина: Выдано устное предупреждение!
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
  Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: