В: Как проиграть звук один раз?
О: Легко! Достаточно создать переменную звука и переменную для звукового канала и присвоить каналу нужный для проигрывания звук. Делается это так:
sound=LoadSound("s.wav");Загружаем в переменную звук
Local channel_sound; Создаем канал для звука
If ChannelPlaying(channel_sound)=0 Then channel_sound=PlaySound(sound)
Поясняю как все это работает:
1) Создается переменная в которую загружается звук.
2) Затем объявляется переменная для звукового канала, переменная может быть и Local и Global в зависимости от того как и где вы хотите использовать канал.
3) Далее конструкцией If мы проверяем действительно ли канал находится вне проигрывания звука, если это так то присваиваем каналу проигранный звук.
Тем самым мы можем добится того что звук не будет проигрыватся раньше чем канал закончит его проигрывать, и не будет эффекта эхо за проигранным звуком.
Надеюсь все понятно.
Если что НЕ понятно то напишите сдесь, разъясню.
Надеюсь чем-то кому нибудь помог.