четверг, 30 октября 2014 г.

Школа counter-strike - часть 20.14 курица на карте cs_italy


Учебник по созданию картЧасть 20. Продвинутый маппинг.Часть 20.14 Курица на карте Cs_Italy

Примечание: мы рассмотрим «устройство» курицы как есть, то есть так, как она сделана на Cs_Italy. Этот метод имеет некоторые недостатки, о которых мы расскажем в конце материала.


1. Создание курицы (как на Cs_Italy)

Курица на Cs_Italy — это модель (файл *.mdl). Модели в уровень вставляются с помощью энтити-объекта cycler. Раньше, когда не было этого энтити-объекта, модели вставлялись через энтити-объект cycler_sprite, который вобщем-то предназначен для вставки спрайтов. Мы решили создавать курицу «как есть», поэтому воспользуемся энтити-объектом cycler_sprite.

Трудность с курицей заключается в её убийстве :-) При отправлении птички в мир иной, она должна исчезнуть, издать предсмертный звук и выпустить пару пёрышек — всего этого модель делать не умеет. Модель просто вставлена в уровне, она не может быть застрелена, она не умеет выпускать пёрышки и издавать какие-либо звуки.


Вот, как устроено убийство курицы

В действительности игрок не убивает курицу (привет, GreenPeace :-). Он стреляет в прозрачный разбиваемый энтити-объектfunc_breakable. Этот энтити-объект находится в том же месте, где и птичка.

От разрушения прозрачного func_breakable запускаются сразу три энтити-объекта, так как все они имеют одинаковое название.

  • Запускается env_render, который делает курицу-модель полностью прозрачной
  • Запускается env_shooter, который выбрасывает перья (тоже модели)
  • Запускается ambient_generic (то есть раздается предсмертный крик птицы)

Рождение курицы заново

С началом каждого нового раунда птица не становится вновь видимой! Ее нужно сделать видмой при помощи другого объекта env_render. На Cs_Italy данный 2-ой env_render запускается триггером, расположенным на базе контр-террористов. При рождении в начале раунда контр-террористы проходят через триггер, и птичка вновь оживает, то есть становится видимой.


Расположение объектов

На картинке ниже видно расположение энтити-объектов.

Расположение объектов на карте Cs_Italy


Чёрный выделенный желтой рамкой кубик — это наша птица. Внутри птицы расположен разбиваемый прозрачный в игре объект (func_breakable).

Сверху птицы расположен env_shooter. Данный точечный энтити-объект выбрасывает перья, когда в курицу стреляют. Справа внизу расположен звук (ambient_generic), который проигрывается при попадании в птицу.

Слева от птицы расположены два точечных энтити-объекта env_render. Один из них делает курицу прозрачной, другой — в начале раунда, наоборот, видимой.

На нашем тестовом уровне также, как и на Cs_Italy, есть еще один объект — это trigger_multiple. Этот триггер, будучи активированным игроками, включает 2-ой env_render, который делает птицу вновь видимой.

Trigger_multiple активирует env_render, который делает курицу видимой


Параметры энтити-объектов:

Фото подсказки по нашей теме

Школа counter-strike - часть 20.14 курица на карте cs_italy
Школа counter-strike - часть 20.14 курица на карте cs_italy
Школа counter-strike - часть 20.14 курица на карте cs_italy