| Добавил: root 2013-01-07 16:16:28 309 views В этой статье речь пойдет о создании различных взрывов. Для начала мы создадим мину, затем растяжку и закончим созданием цепочки взрывов. Мы будем использовать следующие энтити-объекты:
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.
Keywords: | |