# Звук



# play

Воспроизводит различные звуки.

##### **Синтаксис**

```
play [channelName] [trackName] {fadeIn} {fadeOut} {skip} {pause} {forceloop} |crossfade|
```

##### **Параметры**

- `channelName` — название звукового канала, на котором должен воспроизводиться трек (звук). Подробнее о звуковых каналах написано ниже.  
    Обязательный параметр.
- `trackName` — название трека, который нужно проиграть.  
    Обязательный параметр.
- `fadeIn` — время подъема громкости в секундах.  
    Значение по умолчанию: `0`.
- `fadeOut` — время затухания текущего активного на канале трека в секундах.  
    Значение по умолчанию: `0`.
- `skip` — время в секундах, которое будет пропущено у активного трека (например, чтобы воспроизвести трек не с самого начала, а с середины).  
    Значение по умолчанию: `0`.
- `pause` — задержка в секундах перед началом воспроизведения трека.  
    Значение по умолчанию: `0`.
- `forceloop` — булевое значение (`true` или `false`). Позволяет переопределить настройки зацикливания на звуковом канале. Если указано `true` — после окончания проигрывания трек будет воспроизводиться заново, если `false` — то не будет.
- `crossfade` — флаг. Если указан, то при смене трека на канале (включая повторное воспроизведение) будет использоваться перекрестное затухание, т.е. плавный переход между двумя треками. Данная функция использует значения параметров `fadeIn` и `fadeOut` для создания перехода между треками.

##### **Звуковые каналы**

Всего существует 4 звуковых канала:

- `music` — музыка
- `ambience` — фоновые звуки, звуки окружения
- `sfx` — различные звуковые эффекты
- `loop` — дополнительный канал для всего остального

У следующих каналов по умолчанию включено зацикливание треков:

- `music`
- `ambience`
- `loop`

У канала `ambience` все треки по умолчанию зацикливаются с флагом `crossfade`.

##### **Производные каналы**

Если вам нужно больше звуковых каналов (например, чтобы воспроизвести одновременно несколько звуков), вы можете создать производный канал из любого из 4-х основных каналов.  
  
Для этого достаточно просто использовать любое название, которое начинается с имени нужного вам канала:

```
# воспроизводит трек summertime на канале music_2. 
# music_2 - копия канала music
play music_2 summertime

# воспроизводит звук door_bell_bar на канале sfx_2
# sfx_2 - копия канала sfx
play sfx_2 door_bell_bar
```

# stop

Останавливает воспроизведение звука.

##### **Синтаксис** 

```
stop [channelName] {fadeout} |all|
```

##### **Параметры**

- `channelName` — название канала.  
    Обязательный параметр.
- `fadeOut` — время затухания в секундах.  
    Значение по умолчанию: `0`.
- `all` — флаг. Если указан, то будут остановлены все звуки на производных каналах.  
      
    <p class="callout warning">При указании этого флага, значением `channelName` должно быть имя [одного из 4-х основных каналов](https://docs.lmr.su/link/67#bkmrk-%D0%97%D0%B2%D1%83%D0%BA%D0%BE%D0%B2%D1%8B%D0%B5-%D0%BA%D0%B0%D0%BD%D0%B0%D0%BB%D1%8B "sound channels").</p>

##### **Пример использования**

```
# останавливает воспроизведение на канале music
stop music fadeout 1

# останавливает воспроизведение на канале ambience и на всех производных от него каналах
stop ambience fadeout 1 all
```

# volume

Устанавливает значение громкости звука на канале.

##### **Синтаксис** 

```
volume [channelName] [volume] {fade}
```

##### **Параметры**

- `channelName` — название канала.
- `volume` — громкость в диапазоне от `0` до `1`.
- `fade` — продолжительность плавного изменения громкости в секундах.   
    Значение по умолчанию: `0`.

##### **Пример использования** 

```
# плавно в течение 1 секунды уменьшает громкость канала music на половину
volume music 0.5 fade 1
```