Школа Counter-Strike - Часть 20.14 Курица на карте Cs_Italy

Мир Counter-Strike

Приветствую Вас Гость | RSSГлавная | Часть 20.14 Курица на карте Cs_Italy | Регистрация | Вход
Главное меню
Теория CS
Видео школа CS 1.6
Скачать
Магазин
Мастерская
Арт-Cs
Новые видео уроки CS 1.6Новые материалы и файлы


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

Часть 20.14 Курица на карте Cs_Italy

Из данного материала вы узнаете, как устроена курица на карте Cs_Italy.
От вас потребуется знание следующих энтити-объектов:

- ambient_generic
- cycler_sprite
- env_render
- env_shooter
- func_breakable
- trigger_multiple

Давайте поглядим на всем известную и всеми любимую курицу на Cs_Italy

Курица на 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, который делает курицу видимой


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

1. Cycler_sprite (вставляет на карту модель птицы)
Name: chicken1 (название курицы)
Angle: угол, который используется для поворота птицы в требуемом направлении
Sprite: models/chick.mdl (путь к файлу с моделью птицы)
Frames per second: 1 (скорость проигрывания анимации, то есть одно движение в секунду)
Render mode: Solid
FX Amount: 255 (при значении 0 — модель будет полностью прозрачной)


2. Func_breakable (прозрачный разбиваемый объект, находящийся на месте птицы)
Target on break: chicken1kill (названия 3 энтити-объектов, запускаемых при разрушении данного func_breakable)
Strenght: 1 (прочность, хватит 1-ого выстрела)
Material type: flesh (тип материала, куски мяса)
Gibs Direction: Relative to attack (куски мяса летят в направлении атаки)
Render mode: Texture
FX Amount: 0 (делает данный энтити-объект прозрачным)


3.1 Env_render (делает птицу прозрачной после выстрела по ней)
Name: chicken1kill (название объекта)
Target: chicken1
Render mode: Solid
FX Amount: 0 (делает птицу прозрачной)


3.2 Env_render (делает птицу вновь видимой в начале каждого раунда)
Name: chicken1respawn (название объекта)
Target: chicken1
Render mode: Solid
FX Amount: 255 (делает птицу вновь видимой)


4. Env_shooter (выбрасывает перья из «убитой» птицы)
Name: chicken1kill (название объекта)
Number of gibs: 15 (количество выбрасываемых моделей, то есть перьев)
Gib velocity: 100 (скорость падения перьев)
Cource variance: 5 (параметр указывает на сколько вылетающие перья будут отклоняться от прямой траектории)
Gib life: 4 (время «жизни» перьев в секундах, затем они исчезают)
Model: models/feather.mdl (путь к файлу с моделью перьев)

Флаги:

Repeatable — позволяет запускать env_shooter многократно


5. Ambient_generic (предсмертный звук птицы :-)
Name: chicken1kill (название объекта)
Path: misc/killChicken.wav (путь к звуку)
Volume: 10 (громкость, максимальная)

Флаги:

Medium Radius — средний радиус распространения звука
Not Toggled — играет один раз (затем его нужно запускать повторно)


6. Trigger_multiple (запускает env_render, который делает птицу вновь видимой)
Target: chicken1respawn
Delay before reset: 180 (в следующий раз сработает только через 180 секунд)


2. Недостатки метода

При некоторых условиях курица может не «воскреснуть» в начале раунда, или же она может стать неубиваемой!

Вся проблема в триггере trigger_multiple, у которого указано время обнуления в 180 сек.
Автор уровня расчитывал на то, что в среднем раунд длится три минуты или 180 секунд.
Но нам-то известно, что раунд может быть и 30-секундным, а может длиться и более трёх минут.

Если вы расстреляете птицу и раунд закончится быстрее трёх минут, то в следующем раунде курицы не будет! А всё потому что триггер не успеет обнулиться (не истекли 180 секунд). Если же вы убъете птицу, затем пройдет три минуты, и вы еще раз пробежите через триггер на базе контр-террористов, то курица станет бессмертной!

  • Игрок расстреливает птицу
  • Проходит три минуты, триггер снова может вызывать появление птицы
  • Игрок пробегает через триггер, птица вновь становится видимой
  • Но так как брашевый энтити-объект func_breakable уже был один раз разбит, то птица становится бессмертной до конца раунда!
Вот такие недостатки.




 
Форма входа
Гость

Здравствуйте Гость! Пожалуйста зарегестрируйтель или зайдите под своим ником.biggrin
Поиск по сайту
Облако тегов
Тактика в CS 1.6
Опрос
Что вы предпочитаете из списка ниже?
Всего ответов: 819
Материалы
Comments: 49
Forum: 12/45
News: 6
Downloads: 250
Guestbook: 56
Кто онлайн

Онлайн всего: 5
Гостей: 5
Пользователей: 0
uCoz
При копировании материалов активная ссылка на world-cs.net обязательна © 2016