Школа Counter-Strike - Часть 20.12 Катапульта на карте de_rats3

Мир Counter-Strike

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


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

Часть 20.12 Катапульта на карте de_rats3

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

- ambient_generic
- env_beam
- info_target
- func_train
- path_corner
- trigger_auto
- trigger_multiple
- trigger_push
- trigger_relay

Вот как выглядит эта катапульта в игре:

Катапульта на De_Rats3


Для изготовленияданной катапульты нужно 23 энтити-объекта! Однако, успокоии вас, большая доля, а именно 18 из 23 энтити-объектов, используется для реализации эффектов с лучами. Если данные эффекты вам не нужны, просто не создавайте эти 18 объектов, а ограничьтесь пятью.

Мы сначала расскажем про изготовление катапульты без спецэффектов. А во 2-ой части статьи расскажем про устройство лучей.

1. Создание катапульты

Катапульта работает благодаря пяти энтити-объектам (смотрите схему ниже).

  • Игрок шагает в trigger_multiple
  • Trigger_multiple включает звук подъема игрока (ambient_generic), а также два триггера trigger_relay
  • Триггеры trigger_relay включают и через 1,5 секунды выключают «толкатель» (trigger_push)
  • Trigger_push толкает игрока вверх
Схема работы катапульты


Рассмотрим, как это сделано в редакторе.

У нас есть площадка, окрашенная чёрной текстурой (смотрите картинку ниже). На картинке она скрыта всякими энтити-объектами. Это обычный браш, который изображает место, откуда игрок будет отталкиваться.

Что же, сначала над данным брашем сделаем trigger_multiple (показан стрелкой).

Trigger_multiple и 2 trigger_relay


Теперь внутри trigger_multiple (то есть чуть выше толкательного браша) сделаем звук подъема игрока вверх (ambient_generic). На рисунке звук скрыт триггером, но, поверьте, он там есть :-)

Далее делаем 2 триггера trigger_relay (смотрите картинку выше, вверху). 1 из данных триггеров будет активировать толкатель, а другой через 1,5 секунды деактивировать.

Теперь посмотрим на картинку ниже. Там показан брашевый энтити-объект trigger_push.

Trigger_push и есть толкающий вверх энтити-объект. Форма данного триггера повторяет форму чёрного браша, то есть является восьмигранной призмой.

Trigger_push


Вот в сущности и всё, что касается напрямую катапульты. Она уже будет работать, естественно, после указания всех параметров энтити-объектов.

Параметры энтити-объектов, составляющих катапульту.

1. Trigger_multiple (запускает звук и два триггера)
Target: sponge_jump (это названия звука и 2-ух trigger_relay)
Delay before trigger: 0 (активирует объекты без задержки, то есть через ноль секунд)
Delay before reset: 2 (в следующий раз будет готов к работе через две секунды)


2. Ambient_generic (звук прыжка)
Name: sponge_jump (название объекта)
Path: weapons/electro5.wav (путь к звуку)
Volume: 5 (громкость, средняя)

Флаги:

Medium Radius — средний радиус, на который раздаётся звук
Start Silent — изначально (в начале раунда) звук не проигрывается
Not Toggled — играет один раз (затем его нужно запустить повторно)


3. Trigger_relay (включает толкатель)
Name: sponge_jump (название объекта)
Target: sponge_push (включает толкатель)
Delay before trigger: 0 (мгновенно активирует толкатель, то есть через ноль секунд)
Trigger state: On (здесь указывается, что триггер работает только на включение)


4. Trigger_relay (выключает толкатель через 1,5 секунды)
Name: sponge_jump (название объекта)
Target: sponge_push (выключает толкатель через 1,5 секунды)
Delay before trigger: 1.5 (время в секундах до выключения толкателя)
Trigger state: Off (здесь указывается, что триггер работает только на выключение)


5. Trigger_push (толкатель)
Name: sponge_push (название объекта)
Angle: Up (направление толкания игрока, вверх)
Delay before trigger: 0 (толкает игрока без задержки по времени)
Speed of push: 3000 (скорость толкания игрока)

Флаги:

Start Off — изначально (в начале раунда) данный энтити-объект выключен


2. Создание эффектов из лучей

Теперь рассмотрим более сложную часть катапульты — эффект лазерных лучей (смотрите самую первую картинку).

Схема работы выглядит следующим образом:

  • В начале раунда три триггера (trigger_auto) запускают в движение три прозрачных поезда (func_train)
  • Данные три поезда (func_train) начинают ездить по кругу из восьми объектов path_corner
  • Когда игрок прыгает, происходит зупуск всех 3-х источников лучей (env_beam)
  • Лазерные лучи бьют из центральной точки-мишени (info_target) в ездящие по кругу поезда
Заумность этого эффекта заключается в том, что в нём задействованы три точечных энтити-объекта env_beam, которые испускают лазерные лучи. Для того, чтобы разобраться с лучами, нужно хорошо представлять работу этого энтити-объекта.

Принцип работы env_beam заключается в следующем: создается собственно объект env_beam, затем делается начальная точка для луча (какой-нибудь энтити-объект) и потом — конечная точка, куда будет бить луч (второй какой-нибудь энтити-объект).

Весь прикол заключается в том, что1-ая (начальная) точка неподвижна, а вот вторая (конечная) подвижна! Движение второй точки идёт по кругу, то есть лучи испускаются из стоящей центральной точки и бьют в движущиеся по кругу точки (невидимые поезда). Как это выглядит вы можете увидеть на самой первой картинке.

Теперь рассмотрим, как это сделано в редакторе.

На рисунке ниже обратите внимание на три фиолетовых кубика (вверху) — это три объекта env_beam (испускатели лазерных лучей). Однако, помните, что лучи будут испускаться не из данных объектов, а из начальных точек в конечные!

Создание эффекта лазерных лучей при прыжке игрока с катапульты (Рис.1)


Желтые восемь объектов — это path_corner, то есть точки, по которым движутся неуправляемые невидимые поезда — энтити-объектыfunc_train.

На картинке ниже уже создано три поезда (func_train), зеленого цвета. Эти три поезда поочерёдно движутся по всем восьми жёлтым точкам маршрута.

Создание эффекта лазерных лучей при прыжке игрока с катапульты (Рис.2)


Как вы, конечно, помните, для каждого энтити-объекта func_train нужен ORIGIN-браш, так как это крутящийся объект. Мы упростили поезда и сделали их из ORIGIN-брашей. То есть ORIGIN-браши превратили в func_train! Так тоже можно! :-)

А теперь о самом интересном. Эти три поезда (прозрачных и нематериальных) и будут конечными точками, в которые будут бить лазерные лучи! Это назвается применение поездов не по предзначению :-)

ВАЖНО! В центре, немного выше чёрного браша, сделаем начальную точку для всех лучей. Это будет точечный энтити-объект info_target(красная цель на картинке выше).

И последнее, невидимые поезда нужно автоматом заставить двигаться в начале каждого раунда. Сделаем это с помощью трёх триггеровtrigger_auto. Вернёмся к третьей картинке материала и посмотрим, где мы их расположили:

Trigger_multiple и 2 trigger_relay


Триггеры trigger_auto, как вы возможно знаете, автоматом запускают энтити-объект в начале раунда, и это как раз пригодится нам для запуска невидимых и нематериальных поездов.


Параметры объектов, создающих эффект лазерных лучей.

6.1 Trigger_auto (активирует 1-ый поезд)
Target: focus1 (запускается первый поезд func_train)
Delay before trigger: 0 (срабатывает без задержки, то есть через ноль секунд)
Delay before reset: 2 (в следующий раз сработает через две секунды)
Trigger state: On (здесь устанавливается, что триггер работает только на включение энтити-объекта)


6.2 Trigger_auto (активирует 2-ой поезд)
Target: focus2 (запускается второй поезд func_train)
Delay before trigger: 0
Delay before reset: 2
Trigger state: On


6.3 Trigger_auto (активирует 3-ий поезд)
Target: focus3 (запускается третий поезд func_train)
Delay before trigger: 0
Delay before reset: 2
Trigger state: On


7.1 Func_train (1-ый поезд)
Name: focus1 (название поезда)
Render mode: Texture (данный режим отображения делает поезд прозрачным)
FX Amount: 0 (данный режим отображения делает поезд прозрачным)
First stop target: focus_pc1 (название начальной точки маршрута для 1-ого поезда)
Speed: 128 (скорость поезда)

Флаги:

Not Solid — нематериальный в игре, то есть через него можно свободно проходить


Другие два энтити-объекта func_train отличаются лишь несколькими параметрами. Только их мы и рассмотрим. Другие же параметры — такие же, как и у первого поезда, их мы опустим.

7.2 Func_train (2-ой поезд)
Name: focus2 (название поезда)
First stop target: focus_pc3 (название начальной точки маршрута для 2-ого поезда)


7.3 Func_train (3-ий поезд)
Name: focus3 (название поезда)
First stop target: focus_pc6 (название начальной точки маршрута для 3-его поезда)


Дальше идут восемь точечных энтити-объектов path_corner со похожими параметрами. Мы приводим свойства первых двух и последнего объекта.

8.1-8.8 Path_corner (восемь точек маршрута для всех трёх поездов)
Name: focus_pc1 (название 1-ой точки маршрута)
Next stop target: focus_pc2 (название следующей точки маршрута поезда)

Name: focus_pc2 (название 2-ой точки маршрута)
Next stop target: focus_pc3 (название следующей точки маршрута поезда)

...........
...........
...........

Name: focus_pc8 (название 8-ой точки маршрута)
Next stop target: focus_pc1 (название следующей точки маршрута поезда)


9. Info_target (начальная точка, из которой бьют лазерные лучи)
Name: arc_centre (название объекта)


10.1 Env_beam (объект, испускающий первый лазерный луч)
Name: sponge_push (название объекта)
Start entity: arc_centre (название начальной точки, из которой испускаются все три луча, энтити-объект info_target)
Ending entity: focus1 (название конечной точки, в которую будет попадать первый луч, первый поезд func_train)
Brightness: 192 (яркость луча, достаточно высокая)
Beam color: 128 255 255 (цвет луча в формате RGB — красный, зеленый, синий; в нашем случае — бирюзовый)
Radius: 256 (радиус)
Life: 1 (время в секундах, в течении которого рисуется луч; 0 — чтобы луч не исчезал)
Width of beam: 64 (ширина луча от 0 до 255)
Ammount of noise: 255 (изогнутость луча, значения от 0 до 255)
Sprite name: sprites/zbeam1.spr (путь к спрайту, который будет лучем)
Texture scroll rate: 35 (скорость движения текстуры спрайта)
Frames per 10 seconds: 0 (скорость анимации луча)
Strike again time: 1 (частота появления луча, работает если Life > 0)
Damage: 0 (повреждения при поподании игрока под луч, 0 — нет повреждений)

Флаги:

Toggle — луч можно включать и выключать
Start Sparks — из места появления луча будут сыпать искры
End Sparks — из места, где заканчивается луч, будут сыпать искры
Shade Start — начало луча будет затененным
Shade End — окончание луча будет затененным


Другие два объекта env_beam отличаются лишь 1 параметром — названием конечной точки.

10.2 Env_beam (объект, испускающий второй лазерный луч)
Ending entity: focus2 (название конечной точки, в которую будет попадать второй луч)


10.3 Env_beam (объект, испускающий третий лазерный луч)
Ending entity: focus3 (название конечной точки, в которую будет попадать третий луч)



Вот и все нехитрое устройство катапульты.




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

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

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