diff options
| author | oroborus <oroborus@0ee4d065-81f0-4d1e-b06c-ff20ad07cc3e> | 2008-06-28 16:38:35 +0000 |
|---|---|---|
| committer | oroborus <oroborus@0ee4d065-81f0-4d1e-b06c-ff20ad07cc3e> | 2008-06-28 16:38:35 +0000 |
| commit | 2d776fcd61be168e1ff0ff2e4a5e71835e7cea19 (patch) | |
| tree | 7cf274897bf540d5332d446f583ffd066e4e2e1d /src/music.c | |
| parent | b877ae23ac5d380ab3aa48d7724045cf4883b186 (diff) | |
- prekopanie adresarovej struktury, prva cast
git-svn-id: http://opensvn.csie.org/tuxanci_ng@77 0ee4d065-81f0-4d1e-b06c-ff20ad07cc3e
Diffstat (limited to 'src/music.c')
| -rw-r--r-- | src/music.c | 210 |
1 files changed, 0 insertions, 210 deletions
diff --git a/src/music.c b/src/music.c deleted file mode 100644 index e4fb812..0000000 --- a/src/music.c +++ /dev/null @@ -1,210 +0,0 @@ - -#include <stdio.h> -#include <stdlib.h> -#include <assert.h> - -#include "main.h" -#include "interface.h" -#include "list.h" -#include "path.h" -#include "string_length.h" -#include "audio.h" -#include "music.h" -#include "storage.h" - -static list_t *listStorage; - -static bool_t isMusicInit = FALSE; -static bool_t var_isMusicActive = TRUE; -static Mix_Music *currentMusic; - -bool_t isMusicInicialized() -{ - return isMusicInit; -} - -void initMusic() -{ - if( isAudioInicialized() == FALSE ) - { - isMusicInit = FALSE; - return; - } - - listStorage = newStorage(); - currentMusic = NULL; - - isMusicInit = TRUE; - var_isMusicActive = TRUE; - - if( isParamFlag("--nomusic") ) - { - setMusicActive(FALSE); - } - - if( isParamFlag("--music") ) - { - setMusicActive(TRUE); - } - - printf("init music..\n"); -} - -static Mix_Music* loadMixMusic(char *file) -{ - Mix_Music *new; - char str[STR_PATH_SIZE]; - - - printf("load music %s..\n", file); - sprintf(str, PATH_MUSIC "%s", file); - - accessExistFile(str); - - new = Mix_LoadMUS(str); - - if( new == NULL ) - { - fprintf(stderr, "Nepodarilo sa nacitat hudbu %s\n", file); - return NULL; - } - - return new; -} - -static void playMixMusic() -{ - if( currentMusic != NULL ) - { - Mix_PlayMusic(currentMusic, 1000); - } -} - -static void destroyMusic(void *p) -{ - Mix_FreeMusic((Mix_Music *)p); -} - -void addMusic(char *file, char *name, char *group) -{ - Mix_Music *new; - - if( isMusicInit == FALSE ) - { - return; - } - - assert( file != NULL ); - assert( name != NULL ); - assert( group != NULL ); - - new = loadMixMusic(file); - - addItemToStorage(listStorage, group, name, new ); -} - -void stopMusic() -{ - if( isMusicInit == FALSE || - var_isMusicActive == FALSE ) - { - return; - } - - if( currentMusic != NULL ) - { - printf("stop music..\n"); - Mix_HaltMusic(); - currentMusic = NULL; - } -} - -void playMusic(char *name, char *group) -{ - static char currentMusic_group[STR_SIZE]; - static char currentMusic_name[STR_SIZE]; - static int isStrInit = 0; - - if( isStrInit == 0 ) - { - strcpy(currentMusic_group, "none"); - strcpy(currentMusic_name, "none"); - isStrInit = 1; - } - - if( isMusicInit == FALSE || - var_isMusicActive == FALSE ) - { - return; - } - - if( currentMusic != NULL && - strcmp(currentMusic_group, group) == 0 && - strcmp(currentMusic_name, name) == 0 ) - { - return; - } - - if( currentMusic != NULL ) - { - stopMusic(); - } - - currentMusic = getItemFromStorage(listStorage, group, name); - strcpy(currentMusic_group, group); - strcpy(currentMusic_name, name); - - if( currentMusic != NULL ) - { - printf("play music %s\n", name); - playMixMusic(); - } -} - -void setMusicActive(bool_t n) -{ - static Mix_Music *music = NULL; - - if( n == FALSE ) - { - music = currentMusic; - stopMusic(); - } - - if( n == TRUE ) - { - currentMusic = music; - playMixMusic(); - } - - var_isMusicActive = n; -} - -bool_t isMusicActive() -{ - return var_isMusicActive; -} - -char* getCurrentMusic() -{ - return "unknown"; -} - -void delAllMusicInGroup(char *group) -{ - delAllItemFromStorage(listStorage, group, destroyMusic); -} - -void quitMusic() -{ - if( isMusicInit == FALSE ) - { - return; - } - - stopMusic(); - destroyStorage(listStorage, destroyMusic); - isMusicInit = FALSE; - - printf("quit music..\n"); -} |