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

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

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

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

> Информационная доска

Данный раздел предназначен для обсуждения, а также решения технических проблем связанных с серверной частью. Обсуждения касательно игровых клиентов ведутся здесь.

1. Во время создания новой темы аккуратно оформляйте её, не допускайте грамматических ошибок.
2. Описывая проблему старайтесь, как можно больше рассказать о ней, а так же о действиях с сервером после которых она возникла, по возможности подкрепите информацию логами.
3. Если вопрос касается проблемы в работе сервера, то обязательно прикрепляйте список плагинов (введите в консоли сервера: meta list и amxx plugins), настройки server.cfg, логи. Так же указывайте операционную систему, версию HLDS (введите к консоли сервера: version) и где хостится сервер.

Длинную информацию скрывайте под спойлер.

Поочерёдная стрельба

Статус пользователя Marak
сообщение 8.9.2019, 11:56
Сообщение #1
Стаж: 6 лет 8 месяцев
Город: London

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

Здравствуйте!
Хочу сделать так, чтобы -10 HP отбирались не у всех игроков разом, а по очереди. То-есть в радиус попадает 3 игрока, и мне надо чтобы сначала у одного игрока начало отниматься по -10 HP до тех пор пока он не умрёт или не уйдёт из радиуса. Затем -10 HP будет отбираться уже у другого игрока, просто он снимает у всех разом, а мне надо чтобы снимал по очереди.

public FW_Think(Totem) {
if(!pev_valid(Totem)) return

new g_ClassName[32]; pev(Totem, pev_classname, g_ClassName, charsmax(g_ClassName))

if(equal(g_ClassName, TOTEM_CLASSNAME)) {
static g_Owner; g_Owner = pev(Totem, pev_iuser2)

if(!is_user_connected(g_Owner)) return

new id = pev(Totem, pev_iuser3)

for(id = 1; id <= MaxPlayers; id++) {
if(!is_user_connected(id)) continue

if(is_user_alive(id) && cs_get_user_team(id) == cs_get_user_team(g_Owner)) {
if(FW_IsVisible(id, Totem)) {
set_user_health(id, get_user_health(id) - 1)

new Float: e_Origin[3]; pev(Totem, pev_origin, e_Origin)
new Float: p_Origin[3]; pev(id, pev_origin, p_Origin)

engfunc(EngFunc_MessageBegin, MSG_PVS, SVC_TEMPENTITY, e_Origin, 0)
write_byte(TE_BEAMPOINTS)
engfunc(EngFunc_WriteCoord, p_Origin[0])
engfunc(EngFunc_WriteCoord, p_Origin[1])
engfunc(EngFunc_WriteCoord, p_Origin[2])
engfunc(EngFunc_WriteCoord, e_Origin[0])
engfunc(EngFunc_WriteCoord, e_Origin[1])
engfunc(EngFunc_WriteCoord, e_Origin[2] + 20.0)
write_short(ps_Line)
write_byte(0)
write_byte(0)
write_byte(1)
write_byte(15)
write_byte(1)
write_byte(255)
write_byte(0)
write_byte(0)
write_byte(255)
write_byte(10)
message_end()
}
}
}
}
set_pev(Totem, pev_nextthink, get_gametime() + 0.1)
}


https://matchnow.info
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
  Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: