-fixed possible codedump

-updated german.ini
This commit is contained in:
fix94.1 2012-09-16 09:55:32 +00:00
parent f527735c54
commit 6e9b705ce2
6 changed files with 36 additions and 21 deletions

View File

@ -2339,8 +2339,6 @@ void CMenu::_stopSounds(void)
} }
m_btnMgr.stopSounds(); m_btnMgr.stopSounds();
m_cf.stopSound(); m_cf.stopSound();
m_music.Stop();
m_gameSound.Stop(); m_gameSound.Stop();
} }

View File

@ -449,6 +449,7 @@ void CMenu::_game(bool launch)
FILE *file = fopen(videoPath.c_str(), "rb"); FILE *file = fopen(videoPath.c_str(), "rb");
if(file) if(file)
{ {
m_music.StopAndSetPos();
m_gameSound.Stop(); m_gameSound.Stop();
m_banner->SetShowBanner(false); m_banner->SetShowBanner(false);
fclose(file); fclose(file);
@ -470,7 +471,6 @@ void CMenu::_game(bool launch)
} }
movie.Stop(); movie.Stop();
_showGame(); _showGame();
m_music.Play();
m_video_playing = false; m_video_playing = false;
m_banner->SetShowBanner(true); m_banner->SetShowBanner(true);
if(!m_gameSound.IsPlaying()) if(!m_gameSound.IsPlaying())

View File

@ -248,28 +248,26 @@ int CMenu::main(void)
if (m_cfg.getBool("GENERAL", "async_network", false) || has_enabled_providers()) if (m_cfg.getBool("GENERAL", "async_network", false) || has_enabled_providers())
_initAsyncNetwork(); _initAsyncNetwork();
SetupInput(true); SetupInput(true);
m_music.Play();
GameTDB m_gametdb; GameTDB m_gametdb;
m_gametdb.OpenFile(fmt("%s/wiitdb.xml", m_settingsDir.c_str())); m_gametdb.OpenFile(fmt("%s/wiitdb.xml", m_settingsDir.c_str()));
m_GameTDBLoaded=false; m_GameTDBLoaded = false;
if(m_gametdb.IsLoaded()) if(m_gametdb.IsLoaded())
{ {
m_GameTDBLoaded=true; m_GameTDBLoaded = true;
m_gametdb.CloseFile(); m_gametdb.CloseFile();
} }
if(m_Emulator_boot) if(m_Emulator_boot)
m_current_view = COVERFLOW_EMU; m_current_view = COVERFLOW_EMU;
if (m_cfg.getBool("GENERAL", "update_cache", false)) if(m_cfg.getBool("GENERAL", "update_cache", false))
{ {
UpdateCache(); UpdateCache();
m_gameList.Update(); m_gameList.Update();
} }
LoadView(); LoadView();
if (m_cfg.getBool("GENERAL", "startup_menu", false)) if(m_cfg.getBool("GENERAL", "startup_menu", false))
{ {
_hideMain(); _hideMain();
if(!_Source()) if(!_Source())

View File

@ -11,7 +11,13 @@ MusicPlayer m_music;
void MusicPlayer::cleanup() void MusicPlayer::cleanup()
{ {
if(m_music_files.empty())
return;
MusicFile.Pause();
MusicFile.Stop();
MusicFile.FreeMemory(); MusicFile.FreeMemory();
m_music_files.clear();
m_stopped = true;
} }
void MusicPlayer::Init(Config &cfg, string musicDir, string themeMusicDir) void MusicPlayer::Init(Config &cfg, string musicDir, string themeMusicDir)
@ -68,6 +74,8 @@ void MusicPlayer::Previous()
{ {
if(m_music_files.empty()) if(m_music_files.empty())
return; return;
if(PosFromPrevFile())
return;
if(m_current_music == m_music_files.begin()) if(m_current_music == m_music_files.begin())
m_current_music = m_music_files.end(); m_current_music = m_music_files.end();
@ -80,15 +88,8 @@ void MusicPlayer::Next()
{ {
if(m_music_files.empty()) if(m_music_files.empty())
return; return;
if(CurrentPosition) if(PosFromPrevFile())
{
LoadCurrentFile();
MusicFile.Pause();
SoundHandler::Instance()->Decoder(MusicFile.GetVoice())->Seek(CurrentPosition);
CurrentPosition = 0;
MusicFile.Resume();
return; return;
}
m_current_music++; m_current_music++;
if (m_current_music == m_music_files.end()) if (m_current_music == m_music_files.end())
m_current_music = m_music_files.begin(); m_current_music = m_music_files.begin();
@ -98,10 +99,24 @@ void MusicPlayer::Next()
void MusicPlayer::StopAndSetPos() void MusicPlayer::StopAndSetPos()
{ {
if(m_music_files.empty())
return;
CurrentPosition = SoundHandler::Instance()->Decoder(MusicFile.GetVoice())->Tell(); CurrentPosition = SoundHandler::Instance()->Decoder(MusicFile.GetVoice())->Tell();
Stop(); Stop();
} }
bool MusicPlayer::PosFromPrevFile()
{
if(!CurrentPosition)
return false;
LoadCurrentFile();
MusicFile.Pause();
SoundHandler::Instance()->Decoder(MusicFile.GetVoice())->Seek(CurrentPosition);
CurrentPosition = 0;
MusicFile.Resume();
return true;
}
void MusicPlayer::Play() void MusicPlayer::Play()
{ {
SetVolume(m_music_current_volume); SetVolume(m_music_current_volume);

View File

@ -21,13 +21,14 @@ public:
void Previous(); void Previous();
void Next(); void Next();
void Play();
void Stop();
void StopAndSetPos(); void StopAndSetPos();
bool IsStopped() { return m_stopped; }; bool IsStopped() { return m_stopped; };
protected: protected:
void Play();
void Stop();
bool PosFromPrevFile();
void LoadCurrentFile(); void LoadCurrentFile();
void ScanDirectories(const char *directory); void ScanDirectories(const char *directory);

View File

@ -191,6 +191,9 @@ DMLprogP=PAL 480p
errboot1=Kein cIOS gefunden!\ncIOS d2x 249 Basis 56 und 250 Basis 57 genügen für die meisten Spiele. errboot1=Kein cIOS gefunden!\ncIOS d2x 249 Basis 56 und 250 Basis 57 genügen für die meisten Spiele.
errboot2=Kein Speichermedium zum Speichern der Konfiguration gefunden! errboot2=Kein Speichermedium zum Speichern der Konfiguration gefunden!
errboot3=Konnte DIP Modul nicht initialisieren! errboot3=Konnte DIP Modul nicht initialisieren!
errboot4=Keine verwendbare Partition gefunden!
errboot5=data_on_usb=yes aber keine verwendbare USB Partition!\nSD wird verwendet.
errboot6=Kein Speichermedium zum Speichern der Konfiguration gefunden!\Beende.
errgame1=Konnte folgendes Spiel mit dieser ID nicht finden: %s errgame1=Konnte folgendes Spiel mit dieser ID nicht finden: %s
errgame2=Kein cIOS gefunden! errgame2=Kein cIOS gefunden!
errgame4=Konnte IOS %i nicht laden! errgame4=Konnte IOS %i nicht laden!