|
|
@ -116,7 +116,8 @@ void
|
|
|
|
snd_load (char *tilesetname)
|
|
|
|
snd_load (char *tilesetname)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
#if HAVE_SDL_MIXER
|
|
|
|
#if HAVE_SDL_MIXER
|
|
|
|
char fullname[LEN_PATHFILENAME];
|
|
|
|
#define FULLNAMELEN (LEN_PATHFILENAME+2*LEN_FILENAME)
|
|
|
|
|
|
|
|
char fullname[FULLNAMELEN];
|
|
|
|
char filename[LEN_FILENAME];
|
|
|
|
char filename[LEN_FILENAME];
|
|
|
|
_direntry *destart, *de, *desel;
|
|
|
|
_direntry *destart, *de, *desel;
|
|
|
|
int i, max, sel;
|
|
|
|
int i, max, sel;
|
|
|
@ -138,9 +139,9 @@ snd_load (char *tilesetname)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/* try loading the sample from the tileset or the default */
|
|
|
|
/* try loading the sample from the tileset or the default */
|
|
|
|
sprintf (fullname, "%s/tileset/%s/%s", bman.datapath, tilesetname, filename);
|
|
|
|
snprintf (fullname, FULLNAMELEN, "%s/tileset/%s/%s", bman.datapath, tilesetname, filename);
|
|
|
|
if ((snd.sample[i] = Mix_LoadWAV (fullname)) == NULL) {
|
|
|
|
if ((snd.sample[i] = Mix_LoadWAV (fullname)) == NULL) {
|
|
|
|
sprintf (fullname, "%s/tileset/default/%s", bman.datapath, filename);
|
|
|
|
snprintf (fullname, FULLNAMELEN, "%s/tileset/default/%s", bman.datapath, filename);
|
|
|
|
if ((snd.sample[i] = Mix_LoadWAV (fullname)) == NULL)
|
|
|
|
if ((snd.sample[i] = Mix_LoadWAV (fullname)) == NULL)
|
|
|
|
d_printf ("Couldn't load %s: %s\n", fullname, SDL_GetError ());
|
|
|
|
d_printf ("Couldn't load %s: %s\n", fullname, SDL_GetError ());
|
|
|
|
}
|
|
|
|
}
|
|
|
@ -148,7 +149,7 @@ snd_load (char *tilesetname)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/* random selection of an sound file */
|
|
|
|
/* random selection of an sound file */
|
|
|
|
sprintf (fullname, "%s/music", bman.datapath);
|
|
|
|
snprintf (fullname, FULLNAMELEN, "%s/music", bman.datapath);
|
|
|
|
desel = destart = s_getdir (fullname);
|
|
|
|
desel = destart = s_getdir (fullname);
|
|
|
|
|
|
|
|
|
|
|
|
for (max = 0, de = destart; de != NULL; de = de->next)
|
|
|
|
for (max = 0, de = destart; de != NULL; de = de->next)
|
|
|
@ -164,7 +165,7 @@ snd_load (char *tilesetname)
|
|
|
|
|
|
|
|
|
|
|
|
/* try loading the music from the tileset or the default */
|
|
|
|
/* try loading the music from the tileset or the default */
|
|
|
|
if (desel != NULL) {
|
|
|
|
if (desel != NULL) {
|
|
|
|
sprintf (fullname, "%s/music/%s", bman.datapath, desel->name);
|
|
|
|
snprintf (fullname, FULLNAMELEN, "%s/music/%s", bman.datapath, desel->name);
|
|
|
|
if ((snd.music = Mix_LoadMUS (fullname)) == NULL)
|
|
|
|
if ((snd.music = Mix_LoadMUS (fullname)) == NULL)
|
|
|
|
d_printf ("Couldn't load %s: %s\n", fullname, SDL_GetError ());
|
|
|
|
d_printf ("Couldn't load %s: %s\n", fullname, SDL_GetError ());
|
|
|
|
}
|
|
|
|
}
|
|
|
|