#endif
}
-void InitSound()
+static void ReloadCustomSounds()
{
int i;
- OpenAudio();
+ printf("DEBUG: reloading sounds '%s' [%d] ...\n",
+ artwork.sounds_set_current, audio.soundserver_pid);
+#if 1
+ FreeAllSounds();
+
+ InitSoundList(NUM_SOUNDS);
for(i=0; i<NUM_SOUNDS; i++)
- {
- if (!LoadCustomSound(sound_name[i]))
- {
- Error(ERR_WARN, "sounds deactivated");
+ LoadSoundToList(sound_name[i], i);
+#endif
+}
- audio.sound_available = FALSE;
- audio.loops_available = FALSE;
- audio.sound_enabled = FALSE;
+static void ReloadCustomMusic()
+{
+ printf("DEBUG: reloading music '%s' [%d] ...\n",
+ artwork.music_set_current, audio.soundserver_pid);
- return;
- }
- }
+#if 1
+ FreeAllMusic();
- num_bg_loops = LoadMusic();
+ LoadCustomMusic();
+#endif
+}
+
+void InitSound()
+{
+ int i;
+
+ OpenAudio();
+ SetAudioReloadFunctions(ReloadCustomSounds, ReloadCustomMusic);
+
+#if 1
+ InitSoundList(NUM_SOUNDS);
+
+ for(i=0; i<NUM_SOUNDS; i++)
+ LoadSoundToList(sound_name[i], i);
+
+ LoadCustomMusic();
+#endif
StartSoundserver();
+
+#if 0
+ InitReloadSounds(artwork.snd_current->name);
+ InitReloadMusic(artwork.mus_current->name);
+#endif
}
void InitTileClipmasks()
int i;
StopSounds();
- FreeSounds(NUM_SOUNDS);
CloseAudio();
+ FreeAllSounds();
+ FreeAllMusic();
FreeTileClipmasks();
for(i=0; i<NUM_BITMAPS; i++)