|
Вниманию участников! Данный форум теперь является архивом и вскором времени здесь нельзя будет создавать новых тем! Просьба всем для общения и создания новых тем перейти на наш новый форум: http://amxmodx.su/
Топ каждый раунд
|
|
000000 | Дата: Понедельник, 20.07.2009, 13:59:20 | Сообщение # 1 |
Рядовой
Группа: Пользователи
Сообщений: 15
Статус: Не в сети
| Привет. Хочу сделать плагин, который в конце раунда высвечивал тройку лучших игроков за этот раунд. Например: Code 3 лучших: 1 первый - (кол-во фрагов) 2 второй - 2 3 третий - 1 Но не могу додуматься как это все сделать... Как я понял сначало делаем захват конца раунда Code public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) register_logevent("logevent_round_end", 2, "1=Round_End") } public logevent_round_end(id) { new name[32] get_user_name(id,name,31) new frags=get_user_frags(id) а дальше полный тупик..... а да и еще, чето не пойму вывел принт, провереть, а он вместо имени показывает имя сервера а не имя игрока, и фрагов всегда показывает 0, хотя проверял с ботами может он эти фраги не считает
Сообщение отредактировал 000000 - Понедельник, 20.07.2009, 23:22:22 |
|
| |
PAHANCS | Дата: Вторник, 21.07.2009, 22:31:12 | Сообщение # 2 |
Полковник
Группа: Пользователи
Сообщений: 183
Статус: Не в сети
| Quote (000000) вместо имени показывает имя сервера а не имя игрока Дело в том что, logevent_round_end глобальный случай,он происходит для всех, тебе в этом случае нужно будет делать примерно так: Code public logevent_round_end(i) { for(i=1; i<=get_maxplayers(); i++) { if(is_user_connected(i)) { new name[32], frags get_user_name(i, name,31) frags=get_user_frags(i) client_print(i, print_chat, "%s your frags is %i",name,frags) } } }
PAHANCS
|
|
| |
000000 | Дата: Вторник, 21.07.2009, 23:09:22 | Сообщение # 3 |
Рядовой
Группа: Пользователи
Сообщений: 15
Статус: Не в сети
| спб, работает) А какая сделать чтоб он показывал сообщение не сколько всего фрагов, а сколько набранно именно в этом раунде?
|
|
| |
PAHANCS | Дата: Среда, 22.07.2009, 18:23:48 | Сообщение # 4 |
Полковник
Группа: Пользователи
Сообщений: 183
Статус: Не в сети
| Quote (000000) А какая сделать чтоб он показывал сообщение не сколько всего фрагов, а сколько набранно именно в этом раунде? Вот код: Code
#include amxmodx
new FragsId[33] new bool:Restart = false
public plugin_init() { register_plugin("Show Frags", "1.0", "000000") register_event("DeathMsg","event_deathmsg","a") register_logevent("logevent_round_end", 2, "1=Round_End") register_event("HLTV", "event_round_start", "a", "1=0", "2=0") register_event("TextMsg", "restart_in_console", "a", "2=#Game_will_restart_in_console") }
public event_deathmsg(id) { id = read_data(2) if(is_user_connected(id)) { static name[32], frags get_user_name(id, name,31) if(get_user_frags(id) > FragsId[id]) frags = get_user_frags(id) - FragsId[id] else frags = 0 client_print(id, print_chat, "%s your frags in this round is %i",name,frags) } }
public logevent_round_end(i) { for(i=1; i<=get_maxplayers(); i++) { if(is_user_alive(i)) { static name[32], frags get_user_name(i, name,31) if(get_user_frags(i) > FragsId[i]) frags = get_user_frags(i) - FragsId[i] else frags = 0 client_print(i, print_chat, "%s your frags in this round is %i",name,frags) } } }
public event_round_start(i) { for(i=1; i<=get_maxplayers(); i++) { if(is_user_alive(i)) { if(Restart) FragsId[i] = 0 else FragsId[i] = get_user_frags(i) } } Restart = false }
public restart_in_console(i) { Restart = true for(i=1; i<=get_maxplayers(); i++) { if(is_user_alive(i)) { static name[32], frags get_user_name(i, name,31) if(get_user_frags(i) > FragsId[i]) frags = get_user_frags(i) - FragsId[i] else frags = 0 client_print(i, print_chat, "%s your frags in this round is %i",name,frags) } } }
Вот sma файл:
PAHANCS
|
|
| |
000000 | Дата: Среда, 22.07.2009, 18:37:18 | Сообщение # 5 |
Рядовой
Группа: Пользователи
Сообщений: 15
Статус: Не в сети
| спс огромное Не думал что так запутанно будет) Дальше попробую сам доделать)) Спасибо еще раз)
|
|
| |
| AMX Mod X Russian Community © 2006-2024 | |
|
| |