В этом уроке я расскажу вам как сделать эффект пробуждения в Hammer Editor для Half-Life 2
Для начала создаём небольшое помещение и разместите в нём entity info_player_start.
Создаём браш с высотой 1 юнит на поверхности пола и покрываем его текстурой ools/toolstrigger. Дальше выделяем этот браш, жмём на toEntity, в списке выбираем trigger_teleport и в свойствах прописываем это:
Name: trigger_knockout_teleport
Remote Destination: destination_knockout_1
Во флагах оставляем отмеченным только Сlients. Применяем и закрываем окно.
Дальше выбираем инструмент Entity Tool и entity info_teleport_destination. Ставим её в центр помещения. Эта entity определяет место нахождения игрока после пробуждения. В свойствах этой entity в Name пропишите destination_knockout_1.
Опять жмём на инструмент Enty Tool и выбираем prop_dynamic. В свойствах прописываем:
World Model: models/blackout.mdl
Важно, чтобы один её конец был в середине info_teleport_destination.
Снова выбираем инструмент Entity Tool, в нём выбираем entity logic_auto и устанавливаем туда, куда понравится. Расположение этой entity непринципиально. Дальше в её флагах ставим галочку у Remove on Fire.
Теперь создаём entity point_viewcontrol. Расположение также непринципиально. Вид игрока переключится на неё. Свойства этой entity:
Name: blackout_viewcontroller
Во флагах у point_viewcontrol ставим галочку у Freeze Player, Infinite Hold time и Snap to Goal angles.
Создаём entity env_fade. Расположение непринципиально. Данная entity отвечает за затемнение экрана у игрока. В её свойствах прописываем:
Во флагах ставим галочку у Fade From.
Итак, вроде всё на своих местах. Теперь нужно всё это заставить работать.
Выбираем уже созданную ранее entity logic_autо. Переходим во вкладку Outputs и жмём на кнопку Add. Сделайте точно также, как на скриншоте ниже.
-
При старте прикрепляет камеру к модели blackout.
-
При старте включает камеру.
-
При старте игрок появляется в темноте, следом вы как бы открываете глаза.
-
Установка анимации Exit_1 для prop_dynamic. Exit_1 - это анимация для выхода игрока из машины, но здесь она тоже подойдет. Задержку я поставил из ходя из времени работы env_fade + одна секунда
Теперь идём во вкладку Outputs у entity prop_dynamiс и добавляем следующее.
Как только завершится выполнение анимации активируется телепорт, который перенесёт игрока в info_teleport_destination. Важность в правильной установке prop_dynamiс и nfo_teleport_destination заключается в том, что бы после выполнения анимации экран у игрока не дёрнулся.
Теперь открываем вкладку Outputs у entity trigger_teleport и добавляем следующее.
-
Убиваем ненужную модель blackout.
-
Выключаем entity point_viewcontrol и восстанавливаем вид из глаз.
-
Убиваем entity point_viewcontrol.
-
Убиваем entity trigger_teleport.