====== Модуль Sound ======

^ Подключение          | require "sound"        |
^ Тип                  | игровой/расширение кода |
^ Зависимости          | нет                     |

===== Описание =====

Данный модуль существует в INSTEAD начиная с версии 1.4.0 и предоставляет расширенные возможности по работе со звуком. Эти возможности главным образом востребованы при разработке двухмерных игр.

''sound.load(filename)'' -- возвращает дескриптор звука (далее snd);

''sound.free(snd)'' -- освобождает звук (внимание! данная функция не останавливает проигрывание звука!);

''sound.play(snd, [channel], [loop])'' -- запуск звука на проигрывание, канал от 0 до 7, loop - количество проигрываний, 0 - вечно. Имейте в виду, что канал 0 практически всегда занят звуком клика.

''sound.stop([channel])'' -- остановить проигрывание выбранного канала или всех каналов;

''sound.playing([channel])'' -- узнать проигрывается ли звук на любом канале или на выбранном канале; если выбран конкретный канал, функция вернет хандл проигрываемого в данный момент звука или nil. Внимание! Звук клика не учитывается и обычно занимает 0 канал.

''sound.pan(chan, l, r)'' -- задание паннинга. Канал, громкость левого[0-255], громкость правого[0-255] каналов. Необходимо вызывать перед проигрыванием звука, чтобы имело эффект;

''sound.vol(vol)'' -- задание громкости звука (и музыки и эффектов) от 0 до 127.

===== Примеры использования =====
<code lua>
instead_version "1.4.0"
require "sound"

init = function()
   hello = sound.load "hello.ogg"
end

start = function()
   sound.play(hello)
end
</code>