Trigger soundscape (Source)

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

Оригинал Soundscape, Trigger_soundscape.

Описание

Объект trigger_soundscape используется для воспроизведения звуков и музыки какого-либо объекта env_soundscape_triggerable для того игрока, который заденет этот триггер.

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

  • Этот объект НЕ обновляется в каждом раунде. Это означает что любые изменения объекта будут наследоваться в последующих раундах.. Удаление объекта в одном из раундов удаляет объект на все последующие раунды.
  • Объект должен быть установлен там, где будет использоваться.
  • На карте может быть установлено множество этих объектов
  • Объект для удобства может быть покрыт материалом tools/toolstrigger.

Ошибки

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

Заметки

В игре CS:S на любой из карт можно использовать стандартные soundscapes. Их список можно найти по этому адресу: http://developer.valvesoftware.com/wiki/List_of_CS:S_Soundscapes

Для прослушивания любого soundscape во время игры можно воспользоваться консольной командой "playsoundscape".

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


Углы "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 – выключать объект в начале каждого раунда (Нет/Да);
  • Soundscape Triggerable Name – имя объекта env_soundscape_triggerable, который будет воспроизводится для того игрока, который заденет этот триггер;
  • 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

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

Карта

csssdk_trigger_soundscape.vmf

Используются файлы

  • /scripts/soundscapes_csssdk_trigger_soundscape.txt

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

  • trigger_soundscape
  • env_soundscape_triggerable
  • prop_static
  • env_fire
  • env_steam
  • light

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

Карта не блещет оригинальностью, однако позволяет продемонстрировать то, как работает объект trigger_soundscape.

На карте всего два объекта env_soundscape_triggerable и оба используются в группе со своими объектами trigger_soundscape. На карте так же размещено несколько объектов trigger_soundscape, которые используют объекты env_soundscape_triggerable для переключения soundscapes.

На карте размещено небольшое помещение в которое можно попасть как через дверь, так и через окна или отверстия в крыше. Оба объекта env_soundscape_triggerable размещены на улице в недосягаемом для игрока месте. Появившись в точке появления игроков, игрок сразу задевает объект trigger_soundscape, который включает для этого игрока звуки, запланированные первым env_soundscape_triggerable. Если не заходить в дом, а побегать вокруг него по улице, то игрок постоянно будет слышать звуки первого env_soundscape_triggerable, даже не смотря на то, что игрок не будет находиться в области его действия и области действия первого trigger_soundscape. Когда игрок оказывается в доме начинает действовать второй env_soundscape_triggerable. Каким бы образом игрок не проник в дом: через дверь, окно или крышу – внутри дома он всегда будет слышать второй env_soundscape_triggerable. Это результат действия триггера trigger_soundscape, размещённого внутри всего помещения дома. Из дома есть два пути: через дверь и окна. Если игрок выйдет через дверь, то он обязательно заденет первый триггер trigger_soundscape и это активирует первый env_soundscape_triggerable. Если игрок выползет на улицу через окна, то он обязательно заденет один из триггеров trigger_soundscape, использующих первый env_soundscape_triggerable. Как и в случае с дверью, это активирует первый env_soundscape_triggerable. Таким образом, как бы игрок не двигался по карте, находясь на улице он всегда будет слышать первый env_soundscape_triggerable, а внутри дома всегда будет слышать второй env_soundscape_triggerable.

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