Система серверных команд, которые расширяют возможности UBB-мода.
[HIDE]
[/HIDE]
[HIDE]
C-подобный:
#include <amxmodx>
#include <UBB>
public plugin_init() {
register_clcmd("ubb_create", "cmd1");
register_clcmd("ubb_edit", "cmd2");
register_clcmd("ubb_getcn", "cmd3");
// rr cmds
register_clcmd("say /rr", "cmd4");
register_clcmd("say_team /rr", "cmd4");
register_clcmd("rr", "cmd5");
// UBB Release Zombie
register_clcmd("say /build", "cmd6");
register_clcmd("say_team /build", "cmd6");
register_clcmd("say /pre", "cmd8");
register_clcmd("say_team /pre", "cmd8");
register_clcmd("say /release", "cmd9");
register_clcmd("say_team /release", "cmd9");
// set team
register_clcmd("say /st", "cmd7");
register_clcmd("say_team /st", "cmd7");
// ignore team balance
register_clcmd("say /ignore", "cmd10");
register_clcmd("say_team /ignore", "cmd10");
}
public cmd1(userId) {
if(get_user_flags(userId) & ADMIN_RCON) {
ubb_bzg_open_creator_menu(userId);
return 1;
}
return 0;
}
public cmd2(userId) {
if(get_user_flags(userId) & ADMIN_RCON) {
ubb_bzg_open_editor_menu(userId);
return 1;
}
return 0;
}
public cmd3(userId) {
if(get_user_flags(userId) & ADMIN_RCON) {
new szClassName[32], szTargetName[32], iEnt;
get_user_aiming(userId, iEnt, _, 9999);
if(pev_valid(iEnt)) {
pev(iEnt, pev_classname, szClassName, charsmax(szClassName));
pev(iEnt, pev_targetname, szTargetName, charsmax(szTargetName));
ubb_send_chat(userId, "^1iEnt = ^4%d ^3| ^1ClassName = ^4%s ^3| ^1TargetName = ^4%s", iEnt, szClassName, szTargetName);
}
return 1;
}
return 0;
}
public cmd4(userId) {
if(get_user_flags(userId) & ADMIN_RCON) {
server_cmd("sv_restart 1");
return 1;
}
return 0;
}
public cmd5(userId) {
if(get_user_flags(userId) & ADMIN_RCON) {
server_cmd("restart");
return 1;
}
return 0;
}
public cmd6(userId) {
if(get_user_flags(userId) & ADMIN_RCON) {
ubb_set_round_phase(Build);
return 1;
}
return 0;
}
public cmd7(userId) {
if(get_user_flags(userId) & ADMIN_RCON) {
ubb_set_user_team(userId, (ubb_get_user_team(userId) == Zombie) ? Human : Zombie);
return 1;
}
return 0;
}
public cmd8(userId) {
if(get_user_flags(userId) & ADMIN_RCON) {
ubb_set_round_phase(Prephare);
return 1;
}
return 0;
}
public cmd9(userId) {
if(get_user_flags(userId) & ADMIN_RCON) {
ubb_set_round_phase(Release);
return 1;
}
return 0;
}
public cmd10(userId) {
if(get_user_flags(userId) & ADMIN_RCON) {
new bool:bIgnored = bool:ubb_set_user_ignore_team_balanced(userId, (bool:ubb_get_user_ignore_team_balanced(userId) == true) ? false : true);
ubb_send_chat(userId, "Автоматический баланс команды вами ^3%s", bIgnored ? "Игнорируется" : "Соблюдается");
return 1;
}
return 0;
}