Half-Life и Adrenaline Gamer форум

Всё об игре в Халф-Лайф и АГ
Текущее время: 16 июн 2024, 11:00

Часовой пояс: UTC + 5 часов [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 10 ] 
Автор Сообщение
СообщениеДобавлено: 09 мар 2014, 18:32 
Не в сети
Аватара пользователя
Зарегистрирован:
01 июн 2010, 23:25
Последнее посещение:
05 июл 2018, 16:02
Сообщения: 1035
Подскажите, как сделать чтоб в момент попадания выстрела модель игрока замерла в той позе, в которой находилась?

Сейчас имею вот что:

Код:
get_user_origin(victim, origin)
set_pev(victim, pev_flags, pev(victim, pev_flags) | FL_FROZEN)
set_user_origin(victim, origin)


set_user_origin() нужна для борьбы с предиктом. Иначе, игроки будут видеть модель остановленной в разных местах, в зависимости от пинга.
Бегущий игрок после применения фриза выглядит стоящим.
А вопрос в том, как сохранить положение конечностей, которое было в момент попадания.

_________________
Изображение


Вернуться к началу
 Профиль 
  
СообщениеДобавлено: 10 мар 2014, 19:17 
Не в сети
Site Admin
Зарегистрирован:
01 июн 2010, 01:27
Последнее посещение:
11 июн 2024, 20:00
Сообщения: 6871
Мы тут с Кордом посовещались и решили что надо pev->framerate = 0; попробовать. Вьюуглы тоже не сложно заморозить, если надо.
Если не выйдет, то надо много пробовать разных вариантов установки анимы, фпсов и начальных кадров.
unnamed писал(а):
set_user_origin() нужна для борьбы с предиктом. Иначе, игроки будут видеть модель остановленной в разных местах, в зависимости от пинга.
Может и пусть видят в разных местах?


Вернуться к началу
 Профиль 
  
СообщениеДобавлено: 10 мар 2014, 19:29 
Не в сети
Аватара пользователя
Зарегистрирован:
01 июн 2010, 23:25
Последнее посещение:
05 июл 2018, 16:02
Сообщения: 1035
Lev писал(а):
Мы тут с Кордом посовещались и решили что надо pev->framerate = 0; попробовать. Вьюуглы тоже не сложно заморозить, если надо.
Если не выйдет, то надо много пробовать разных вариантов установки анимы, фпсов и начальных кадров.

Попробую. Вью углы модели тоже фризятся. Игрок мышкой крутить может, но модель не крутится.

Lev писал(а):
Может и пусть видят в разных местах?

Нет, мне надо под прицелом остановить в момент попадания.
А а с установкой координат, поскольку стреляющий игрок из-за рега видит попадание позади модели, в момент попадания игрока отдернет назад под прицел. В моем случае это допустимо.

Добавлено спустя 2 часа 59 минут 40 секунд:
Когда игрок в полете, анимация замораживается. А если по земле бежит, то просто останавливается и стоит.
Пытался принудительно выставить определенную анимацию. Похоже, где-то она переустанавливается. Видимо в его think. Все-равно чел стоит. Еще и сальто крутить иногда начинает

_________________
Изображение


Вернуться к началу
 Профиль 
  
СообщениеДобавлено: 10 мар 2014, 23:15 
Не в сети
Site Admin
Зарегистрирован:
01 июн 2010, 01:27
Последнее посещение:
11 июн 2024, 20:00
Сообщения: 6871
Код:
void CBasePlayer::SetAnimation( PLAYER_ANIM playerAnim )
{
   if (pev->flags & FL_FROZEN)
   {
      speed = 0;
      playerAnim = PLAYER_IDLE;
   }
попробуй хамом перехватить и заблочить.


Вернуться к началу
 Профиль 
  
СообщениеДобавлено: 11 мар 2014, 15:20 
Не в сети
Аватара пользователя
Зарегистрирован:
01 июн 2010, 23:25
Последнее посещение:
05 июл 2018, 16:02
Сообщения: 1035
А чего перехватывать?
SetAnimation я так понимаю, хамом не зацепить.

_________________
Изображение


Вернуться к началу
 Профиль 
  
СообщениеДобавлено: 11 мар 2014, 16:53 
Не в сети
Site Admin
Зарегистрирован:
01 июн 2010, 01:27
Последнее посещение:
11 июн 2024, 20:00
Сообщения: 6871
А, ну да, она не виртуальная.
Попробуй в постпостсинке восстановить
Цитата:
pev->gaitsequence
pev->sequence
pev->frame
pev->framerate


Вернуться к началу
 Профиль 
  
СообщениеДобавлено: 15 мар 2014, 03:39 
Не в сети
Аватара пользователя
Зарегистрирован:
01 июн 2010, 23:25
Последнее посещение:
05 июл 2018, 16:02
Сообщения: 1035
сделал. Движение на земле получилось остановить. А вот в воздухе теперь все плохо. Модель дергается. Как если убить игрока с которым пропала связь.
Временами игрок крутит сальто назад после остановки:)

_________________
Изображение


Вернуться к началу
 Профиль 
  
СообщениеДобавлено: 15 мар 2014, 07:27 
Не в сети
Site Admin
Зарегистрирован:
01 июн 2010, 01:27
Последнее посещение:
11 июн 2024, 20:00
Сообщения: 6871
Если до этого в воздухе было норм, то можно разделить обработку по OnGround.
А какие параметры восстанавливаешь?


Вернуться к началу
 Профиль 
  
СообщениеДобавлено: 15 мар 2014, 16:17 
Не в сети
Аватара пользователя
Зарегистрирован:
01 июн 2010, 23:25
Последнее посещение:
05 июл 2018, 16:02
Сообщения: 1035
Lev писал(а):
А какие параметры восстанавливаешь?

pev->gaitsequence
pev->sequence
pev->frame
pev->framerate

в постсинке

и координаты один раз - после попадания выстрела.

Если framerate ставить в ноль, то в воздухе анимация все-равно на одном и том же кадре останавливается. Я первый раз не обратил внимания на это.

Добавлено спустя 22 минуты 45 секунд:
Записал демо этого дела. А демка не играется.


Host_EndGame: Demo message > MAX_POSSIBLE_MSG

_________________
Изображение


Вернуться к началу
 Профиль 
  
СообщениеДобавлено: 15 мар 2014, 22:58 
Не в сети
Site Admin
Зарегистрирован:
01 июн 2010, 01:27
Последнее посещение:
11 июн 2024, 20:00
Сообщения: 6871
Можно попробовать какие-то не трогать из этих.
Ошибка даже не знаю с чем связана.
В инетах вроде пишут что на каких-то старых клиентах бывали баги.
Попробуй в стиме записать или ещё каким-нибудь, для теста.
А ещё попробуй через viewdemo.


Вернуться к началу
 Профиль 
  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 10 ] 

Часовой пояс: UTC + 5 часов [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB