|
Вниманию участников! Данный форум теперь является архивом и вскором времени здесь нельзя будет создавать новых тем! Просьба всем для общения и создания новых тем перейти на наш новый форум: http://amxmodx.su/
|
Team balance
|
|
| many | Дата: Понедельник, 13.10.2008, 19:20:48 | Сообщение # 1 |
 Лейтенант
Группа: Пользователи
Сообщений: 49
Статус: Не в сети
| Вот попробовал написать простой тим бэленс плагин но почему то он не работает. Помогите исправить Code #include <amxmodx> #include <amxmisc> #include <cstrike>
#define PLUGIN "Team Balance" #define AUTHOR "many" #define VERSION "1.0"
public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) register_event("DeathMsg", "ev_DeathMsg", "a"); }
public ev_DeathMsg() { static players[32], CT_num, T_num get_players(players, CT_num, "ae", "CT") get_players(players, T_num, "ae", "T")
if(CT_num - T_num == 2) { new name_CT[32] new rand_CT = random(CT_num) get_user_name(players[rand_CT], name_CT, 31) cs_set_user_team(players[rand_CT], 1) client_print(0, print_chat, "[HNS Team Balance] %s have been transfered to Terrorist", name_CT) client_print(players[rand_CT], print_chat, "[HNS Team Balance] You have been transfered to Terrorist") } else if(T_num - CT_num == 2) { new name_T[32] new rand_T = random(T_num) cs_set_user_team(players[rand_T], 2) get_user_name(players[rand_T], name_T, 31) client_print(0, print_chat, "[HNS Team Balance] %s have been transfered to Terrorist", name_T) client_print(players[rand_T], print_chat, "[HNS Team Balance] You have been transfered to Counter-Terrorist") } }
|
| |
|
|
| PomanoB | Дата: Понедельник, 13.10.2008, 20:03:26 | Сообщение # 2 |
 Генералиссимус
Группа: Cупер-модеры
Сообщений: 1313
Статус: Не в сети
| Во-первых событие DeathMsg вызывается для смерти каждого игрока, логичнее было бы использовать событие начала раунда Во-вторых тебе надо использовать вычитание по модулю 2, т.к может быть 6 терроров и 2 контра
http://romanov4400.mybrute.com
Сообщение отредактировал PomanoB - Понедельник, 13.10.2008, 20:08:30 |
| |
|
|
| many | Дата: Понедельник, 13.10.2008, 21:42:44 | Сообщение # 3 |
 Лейтенант
Группа: Пользователи
Сообщений: 49
Статус: Не в сети
| DeathMsg - глобальное событие и использую его я потому что у меня DM и начало раунда бывает только в начале карте тк раунд незаканчиваеться. Плагин работает, но криво он постоянно пытаеться всех КТ перенести за Т
|
| |
|
|
| PomanoB | Дата: Понедельник, 13.10.2008, 21:54:42 | Сообщение # 4 |
 Генералиссимус
Группа: Cупер-модеры
Сообщений: 1313
Статус: Не в сети
| Тогда по смерти игрока смотри если игроков в команде умершего больше чем в противоположной перекидывай его
http://romanov4400.mybrute.com
|
| |
|
|
| many | Дата: Понедельник, 13.10.2008, 22:13:49 | Сообщение # 5 |
 Лейтенант
Группа: Пользователи
Сообщений: 49
Статус: Не в сети
| непонял, можешь написать пример как Добавлено (2008-10-13, 10:13 Pm) --------------------------------------------- у меня щас вот так Code include <amxmodx> #include <amxmisc> #include <cstrike>
#define PLUGIN "HNS Team Balance" #define AUTHOR "many" #define VERSION "1.0"
public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) register_event("DeathMsg", "ev_DeathMsg", "a"); }
public ev_DeathMsg() { static players[32], CT_num, T_num get_players(players, CT_num, "ae", "CT") get_players(players, T_num, "ae", "T")
if(CT_num - T_num >= 2) { new name_CT[32] new rand_CT = random(CT_num) get_user_name(players[rand_CT], name_CT, 31) client_print(0, print_chat, "[HNS Team Balance] %s have been transfered to Terrorist", name_CT) client_print(players[rand_CT], print_chat, "[HNS Team Balance] You have been transfered to Terrorist") cs_set_user_team(players[rand_CT], 1) return PLUGIN_CONTINUE } else if(T_num - CT_num >= 2) { new name_T[32] new rand_T = random(T_num) get_user_name(players[rand_T], name_T, 31) client_print(0, print_chat, "[HNS Team Balance] %s have been transfered to Terrorist", name_T) client_print(players[rand_T], print_chat, "[HNS Team Balance] You have been transfered to Counter-Terrorist") cs_set_user_team(players[rand_T], 2) return PLUGIN_CONTINUE } return PLUGIN_CONTINUE }
|
| |
|
|
| PomanoB | Дата: Понедельник, 13.10.2008, 22:45:48 | Сообщение # 6 |
 Генералиссимус
Группа: Cупер-модеры
Сообщений: 1313
Статус: Не в сети
| Вот держи Это только пример надо конечно серьёзно доработать) И в функции в get_players команды игроков обозначаются "CT" и "TERRORIST" 
http://romanov4400.mybrute.com
Сообщение отредактировал PomanoB - Вторник, 14.10.2008, 14:12:43 |
| |
|
|
 | AMX Mod X Russian Community © 2006-2026  |  |
|
| |