Глава XX. Продвинутый маппинг.
§ 20.4 Взрывы, мины и растяжки
В этой статье речь пойдет о создании различных взрывов. Для начала мы создадим мину, затем растяжку и закончим созданием цепочки взрывов. Мы будем использовать следующие энтити-объекты:
1. Создание мины
Начнем с самого простого создания мины. Мины у нас будут противопехотные, т.е. такие, которые взрываются от небольшого веса, например, веса игрока :) Игрок наступает на мину и раздается взрыв.
Мину мы изобразим в виде небольшого холмика, по ширине и длине равного 32 юнитам. Края прямоугольного браша мы сделаем наклонными при помощи инструмента
Vertex Tool (см. рис. ниже).
После того, как холмик будет готов, выделяем его и превращаем в
func_breakable.
Выставим для этого объекта такие свойства и флаги:
Func_breakable (мина) | Strenght: 1 (прочность) Material type: Rocks (тип материала, камушки) Explode magnitude: 25 (сила взрыва, небольшая)
Флаги:
Touch - взрывается от прикосновения Pressure - взрывается от давления
|
|
|
На нашей карте-примере мы создали 3 таких мины, таким образом, получилось небольшое минное поле.
2. Создание растяжкиРастяжка устроена немного посложнее. Для ее создания используется 3 энтити-объекта. На рисунке ниже показано, какие именно объекты мы использовали.
1. Первый объект func_illusionary, который изображает тонкую проволоку (веревку). Веревка натянута между мешками с песком, в сечении веревка имеет размеры 1х1 юнит. Покрашена текстурой rope.
2. Второй объект env_explosion, т.е. взрывчатка. Это точечный энтити-объект, в редакторе изображается фиолетовым кубиком. Взрывчатку размещаем рядом с веревкой.
|
Env_explosion (взрывчатка) | Name: exp1 Magnitude: 35 (сила взрыва, небольшая)
Флаги:
Repeatable - чтобы можно было взрывать много раз
|
|
|
3. Третий объект trigger_multiple. Данный триггер будет активировать взрывчатку. Триггер мы размещаем поверх веревки, как показано на рисунке.
|
Trigger_multiple (активирует взрывчатку) | Target: exp1 Delay before trigger: 2 (время до активации взрывчатки, в секундах)
|
|
|
Итак, игрок проходит через веревку, задевает trigger_multiple, тот через 2 секунды активирует env_explosion и ... следует взрыв.
Если необходимо, чтобы взрывчатка срабатывала только один раз за игру, то вместо trigger_multiple используйте trigger_once.
3. Создание цепочки взрывовИ на закуску, немного украсим обычный взрыв бомбы. А украсим мы его подрывом дополнительных боезарядов env_explosion и не только.
Суть в следующем: при взрыве бомбы разрывается ящик со взрывчаткой, а также 2 дополнительных боезаряда, расположенные рядом.
На картинке ниже показаны ящик со взрывчаткой, 2 объекта env_explosion, зона закладки бомбы (func_bomb_target) и multi_manager.
Схема работы данного <устройства> выглядит так:
- Игрок устанавливает бомбу в зону func_bomb_target
- Когда бомба взрывается, активируется multi_manager
- Multi_manager активирует по очереди 3 объекта (ящики + 2 взрыва)
Итак, что нужно записать в свойствах:
|
Func_bomb_target (зона для закладки бомбы) | Target when bomb blows: manager (имя объекта, который активируется при взрыве бомбы, т.е. имя multi_manager)
|
|
|
Multi_manager (объект, активирующий подрыв ящика и 2-ух взрывчаток) | В свойства multi_manger при отжатой кнопке Smart Edit мы записываем по очереди имена ящика и двух взрывчаток.
Name: manager (имя самого менеджера) exp2 - 0.2 (объект по имени exp2 активируется через 0.2 секунды) exp3 - 0.7 (объект по имени exp3 активируется через 0.7 секунды) exp4 - 1.2 (объект по имени exp4 активируется через 1.2 секунды)
|
|
|
Теперь остается присвоить имена ящику (exp2), первой взрывчатке (exp3) и второй взрывчатке (exp4).
env_explosion.zip [28Кб] в архиве карта-пример в форматах BSP и RMF.
Глава XX. Продвинутый маппинг.
К оглавлению Учебника
© http://cs-mapper.by.ru/
|