Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.06.29;
Скачать: CL | DM;

Вниз

Зацикливание в fmod.   Найти похожие ветки 

 
@!!ex_   (2007-06-22 13:34) [0]

Ситуация: нужно зациклить музыку. Делаю так:

if Menu then begin
 if (MenuMusic<>nil) then begin
   if (not FSOUND_IsPlaying(MenuMusicChannel)) then
     MenuMusicChannel:=SndLib.PlaySound(MenuMusic,Config.MusicVolume);
     SndLib.SetSoundVolume(MenuMusicChannel,Config.MusicVolume);
   end;
 if (GameMusic<>nil) and FSOUND_IsPlaying(GameMusicChannel) then
   SndLib.Stop(GameMusicChannel);
end
else begin
 if (MenuMusic<>nil) and FSOUND_IsPlaying(MenuMusicChannel) then
   SndLib.Stop(MenuMusicChannel);

 if (GameMusic<>nil) then begin
   if (not FSOUND_IsPlaying(GameMusicChannel)) then
     GameMusicChannel:=SndLib.PlaySound(GameMusic,Config.MusicVolume);
     SndLib.SetSoundVolume(GameMusicChannel,Config.MusicVolume);
 end;
end;

На моем компе все работает замечательно.
Приношу на работу, там проигрывается один раз и затихает.

При этом при переходе между состояниями(из меню в игру и наоборот) музыка опять начинает играть.
Тоесть:
Сидим в меню. Играет мызыка.
Музыка кончилась. Тишина.
Переходим в игру. Вклчюается игровая музыка.
Играем. Музыка кончилась. Тиишина.
Переходим в меню. Менюшная музыка включается.


 
Dib@zol   (2007-06-23 16:27) [1]

Добавь константы, пропиши в них время звучания каждой ХМ-ки в миллисекундах (время можно посмотреть в окне Винампа и умножить на 1000), заведи таймер, по событию таймера останавливаешь музыку и пускаешь снова.

ЗЫ: Как получать время в реалтайме не знаю, сам уже вторую неделю въехать не могу, так что для надёжности запихни ХМ-ки в ресурсы.


 
@!!ex_   (2007-06-23 17:49) [2]

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



Страницы: 1 вся ветка

Текущий архив: 2008.06.29;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.021 c
2-1212152946
Dmitry
2008-05-30 17:09
2008.06.29
Регулярные выражения


2-1212167580
VovKul
2008-05-30 21:13
2008.06.29
Проблема с BRCC32.EXE.


2-1212325071
LightRipple
2008-06-01 16:57
2008.06.29
Максимальное значение разности двух Pointer`ов.


15-1210798005
kaif
2008-05-15 00:46
2008.06.29
Зенит - чемпион !!!


2-1212566516
n_sch
2008-06-04 12:01
2008.06.29
Строковые функции