Схема sr_sound

Материал из xrWiki
Перейти к: навигация, поиск

Предназначение данной схемы: отыграть звук при входе актёра в рестриктор. Поддерживается sound_end.

Параметры[править]

  • snd =

Перечень имён звуков, разделенных запятыми.

  • type =

Типы звуков через запятые. Для удобства введены типы наборов звуков. Т.е., например, чтобы не перечислять каждый раз весь набор звуков скрипа деревянного пола, можно указать тип floor_wooden.

  • delay =

Задержка перед проигрыванием звука в секундах реального времени, по умолчанию 0.

  • idle =

Длина периода игнорирования входа в зону после начала последнего проигранного звука. Чтоб, например, завывание было не чаще, чем раз в несколько минут. В секундах игрового времени. По умолчанию 0.

  • rnd =

Вероятность (в процентах) того, что звук отыграется. По умолчанию 100.

  • position =

Задает имя пути, в вершинах которого может отыграться звук. Есть зарезервированное значение random. Оно означает случайное место в радиусе 15…50 метров от игрока. Если этот параметр не задан, то подразумевается позиция игрока.

  • slide_velocity =

Скорость (м/с) передвижения звука по точкам патрульного пути. По умолчанию - 3

  • slide_sound_once = true\false
    • true - проиграть звук один раз, даже если он не дошел до последней точки пути.
    • false – если звук закончился, а до последней точки пути не дошел, запустить его ещё раз. По умолчанию false.
  • play_at_actor = true/false

Заставляет звук играться от позиции актера постоянно. Если он будет равен true и будет задан путь перемещения звука (или рандом), то мы тупо вылетим.

Обязательно нужно задать либо snd, либо type. Можно их задать вместе. На базе этих параметров составляется список звуков. При входе актёра в рестриктор отыгрывается случайный звук из этого списка.

Место, из которого может отыграться звук, задаётся одним из трёх:

  • случайное;
  • случайная вершина заданного пути;
  • позиция игрока.

Пример настроек рестриктора[править]

[logic]
active      = sr_sound

[sr_sound]
type        = floor_wooden
snd         = ambient\wind1, ambient\sparks1
rnd         = 50
position    = random
idle        = 120
delay       = 3

Есть возможность сделать «скользящий звук». Необходим патрульный путь. Звук начинает отыгрываться с начала пути и перемещается от одной точки пути к другой (по мере их установки на патрульном пути) со скоростью slide_velocity.

[logic]
active              = sr_sound

[sr_sound]
type                = random
position            = way
slide_velocity      = 8
slide_sound_once    = true

Файл: gamedata\scripts\sr_sound.script