Trigger remove

Материал из CSM Wiki
Перейти к навигации Перейти к поиску

Оригинал Trigger_remove

Описание

Объект trigger_remove используется для удаления всех объектов, которые задевают его.

  Warning.png Внимание:  Использование этого объекта является потенциально опасным действием, потому что может привести к краху игры при удалении объектов, которые не могут быть удалены подобным образом, например: игроков.

Особенности использования

Ошибки

Не обнаружены.

Заметки

Гранаты, брошенные игроком, являются физическими объектами, поэтому могут контактировать с триггерами. Все виды оружия, которое можно подобрать, не контактируют с триггерами.


Углы "Pitch Yaw Roll" могут быть использованы для поворота триггера на нужный угол в начале каждого раунда. На этот угол автоматически поворачиваются Brush-объекты при своём появлении на карте, поэтому этот объект будет работать как задумано только при "Pitch Yaw Roll" = "0 0 0". Если же указать другой угол, например "30 -45 15", то придётся вручную поворачивать весь триггер на углы соответственно "30 -45 15". Выполнить это можно при помощи утилиты поворота, масштабирования и перемещения "Transform [Ctrl+M]". Правильность постановки этого объекта на карте можно проверить при помощи консольной команды "showtriggers_toggle", которая позволяет отображать триггеры в игре.

Консольная переменная "showtriggers 1" позволяет включить отображение материала tools/toolstrigger в игре, точно так же как он отображается в редакторе Hammer. Для переключения отображения этого материала (Показать/Скрыть) используется консольная команда "showtriggers_toggle".

Параметры

  • Pitch Yaw Roll (Y Z X) – ориентация объекта на карте (направление распространения);
  • Start Disabled – выключать объект в начале каждого раунда (Нет/Да);
  • Filter Name – имя объекта-фильтра для фильтрации объектов, которым будет разрешено активировать этот триггер;
  • Origin (X Y Z) – точка опоры объекта (указывается при помощи Helper’а).

Флаги

  • Clients – игроки могут активировать этот объект;
  • Pushables – объекты func_pushable могут активировать этот объект; не используется если установлен флажок "Physics Objects";
  • Physics Objects – физические объекты могут активировать этот объект;
  • Debris – физические объекты, отмеченные как "Debris" могут активировать этот объект; используется только если установлен флажок "Physics Objects"; для физических объектов не обязательно устанавливать флажок "Force Debris Touch Triggers";
  • Everything – абсолютно любой объект может активировать своим прикосновением этот триггер; если установлен этот флажок, все предыдущие флажки можно не устанавливать; установка этого флажка позволяет контролировать касание триггера заложниками (hostage_entity).

Inputs

  • Enable – включить объект;
  • Disable – выключить объект;
  • Toggle – переключить состояние объекта (Включен/Выключен);
  • StartTouch – сымитировать прикосновение к объекту другого объекта, который выполняет эту функцию (!caller); вызов этой функции позволяет выполнять только событие "OnStartTouch"; после вызова этой функции будет считаться что объект (!caller) продолжает контактировать с этим объектом; использование этой функции может привести к тому, что событие "OnEndTouchAll" может вообще не быть выполненным;
  • EndTouch – сымитировать прекращение прикосновений с объектом другого объекта, который выполняет эту функцию (!caller); вызов этой функции позволяет выполнять события "OnEndTouch" и "OnEndTouchAll".

Outputs

  • OnRemove – выполняется тогда, когда с помощью этого триггера удаляется какой-нибудь объект;
  • OnStartTouch – выполняется в момент, когда другой объект или игрок начинает контактировать с этим объектом;
  • OnEndTouch – выполняется в момент, когда другой объект или игрок прекращает контактировать с этим объектом; это событие может быть выполнено автоматически, если в течение раунда была выполнена функция "StartTouch" и не была после этого выполнена функция "EndTouch";
  • OnEndTouchAll - выполняется в момент, когда все другие объекты прекращают контактировать с этим объектом; если хотя бы один другой объект продолжает контактировать с этим объектом, то это событие не выполнится. это событие может быть выполнено автоматически, если в течение раунда была выполнена функция "StartTouch" и не была после этого выполнена функция "EndTouch".

Карта

csssdk_trigger_remove.vmf

Используются объекты

  • trigger_remove
  • func_detail
  • func_button
  • prop_physics
  • point_template
  • func_brush
  • func_wall
  • func_movelinear

Описание карты

На карте два пульта. На первом пульте размещено две кнопки, а на втором пульте - одна. Перед каждым из пультов размещён свой объект trigger_remove. Первый триггер trigger_remove удаляет только физические объекты, поэтому игрок может бегать по нему без опасений быть удалённым. Второй триггер trigger_remove удаляет абсолютно все объекты, которые он задевает, поэтому этот триггер изолирован от игрока CLIP-поверхностью, не позволяющей игроку проходить сквозь себя. Нажатие на кнопку первого пульта запускает процесс клонировании двух бочек. Одна из бочек появляется прямо над первым триггером trigger_remove, поэтому как только эта бочка при падении задевает этот триггер, она сразу же удаляется. Вторая бочка создаётся рядом с целью позволить игроку самому толкнуть её в сторону первого триггера trigger_remove. Если вы создадите слишком много бочек, то можете воспользоваться маленькой кнопкой на первом пульте, которая позволяет удалить все клонированные бочки с карты. Большая кнопка на втором пульте приводит в движение объект func_movelinear, к которому прикреплён второй триггер. На пути этого триггера установлено несколько объектов: prop_physics, func_brush, func_wall и func_detail. Первые три удаляются, а объект func_detail не удаляется. Это происходит из-за того, что объект func_detail обрабатывается на стороне клиента и сервер не "знает" о его существовании. Так же нужно заметить, что удаляемый объект func_brush не обновляется в каждом раунде, поэтому в начале следующего раунда он не появится на своём месте. Выполните в консоли команду "mp_restartgame 1", чтобы начать новый раунд и убедитесь в этом сами.

Смотрите также