Схема ph_sound

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


Прописывается у физического объекта какие звуки он выдает (изначально планировался как матюгальник).

[ph_sound]
snd         = имя темы из файла sound_theme.script из таблицы ph_snd_themes
looped      = true/false зацикленое воспроизведение звука (default - false)
min_idle    = минимальное время простоя перед включением звука (мс)
max_idle    = максимальное время простоя перед включением звука (мс)
random      = true/false (по умолчанию false). Если true, то из темы будет выбран рандомный звук и таким образом звуки будут играться до посинения

Если мы задаем random = true и looped = true, то версия сыпется.

Также поддерждивается кондлист.

Данная схема работает через задницу, поэтому зацикленный звук будет продолжать отыгрываться, даже если объект уходит в nil. В связи с этим надо создавать новую секцию, которая бы отыгрывала одиночный короткий звук, после которого (поскольку он будет точно также играться раз за разом) ставим on_signal = sound_end| nil

Пример подобной извращенной логики:

[logic]
active              = ph_sound

[ph_sound]
snd                 = gar_seryi_shooting
looped              = true
max_idle            = 5000
on_actor_in_zone    = gar_seryi_factory| ph_sound@end

[ph_sound@end]
snd                 = gar_seryi_shooting_2
looped              = false
on_signal           = sound_end| nil

Кроме того, специфическим образом создается звуковая схема.

В sound_theme.script в начале файла есть секция ph_themes, в которой и описываются темы для физ объектов.

Например:

ph_snd_themes["gar_seryi_shooting"]	= {[[characters_voice\human_01\scenario\garbage\distance_shooting]]}

Кроме того (незадекларированная фича) ph_sound можно вешать на рестрикторы. Но за правильность работы в таком случае никто ответственности не несет.

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