Глава VII. Разное.
§ 7.6 Условие для активации (multisource)
В этой статье мы расскажем о принципе действия объекта
multisource, который активирует указанный в его свойствах объект, только после выполнения определенного условия. Для создания тестовой карты мы будем использовать следующие энтити-объекты:
Multisource в некотором роде противоположен
multi_manager'у, т.к. активирует объект, только когда несколько объектов активировали его самого. А мульти_мэнеджер сам активирует несколько объектов.
Давайте рассмотрим простейший пример использования
multisource.
Наша тестовая карта будет состоять из двух комнат, разделенных простой дверью
func_door. Присвоим этой двери имя
door1. Свойства в данном случае не так важны - выставьте их самостоятельно. Единственное, для удобства отметьте флаг "Toggle", чтобы дверь автоматически не закрывалась.
Рядом на стене расположим две кнопки
func_button (именно две - это важно) и в параметр "Targetted object" каждой из них впишем имя
door_master (это имя будущего объекта
multisource, см. рис. ниже).
Смысл опыта заключается в том, что дверь должна открываться только в том случае, если нажаты обе кнопки, т.е. при нажатии на одну кнопку дверь открываться не должна.
Вставим на карту объект
multisource и дадим ему имя
door_master и впишем в параметр "Target" имя двери, т.е.
door1.
Готово! Когда обе кнопки будут нажаты, дверь откроется. На тестовой карте у кнопок мы установили параметр "Delay before reset": 3 секунды, чтобы можно было успеть нажать обе кнопки. Если в течении
3-х секунд будет нажата только одна кнопка, то дверь не откроется. Состояние кнопки (вкл/выкл) контролируйте по смене текстуры на ней. В нажатом положении кнопка становится красной.
multisource.zip (!) [11Кб] - в архиве карта-пример в форматах BSP и RMF.
Глава VII. Разное.
К оглавлению Учебника
©
http://cs-mapper.by.ru/