From dddb1206b3df70be61a12d3d4883808e452d5707 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Florian=20K=C3=BCpper?= Date: Sat, 3 Jan 2015 12:49:24 +0100 Subject: [PATCH] Fix nullpointer-exception and bg-music behaviour. --- Vocaluxe/Base/CBackgroundMusic.cs | 4 ++-- Vocaluxe/Screens/CScreenHighscore.cs | 5 +++++ Vocaluxe/Screens/CScreenNames.cs | 2 +- Vocaluxe/Screens/CScreenScore.cs | 5 +++++ 4 files changed, 13 insertions(+), 3 deletions(-) diff --git a/Vocaluxe/Base/CBackgroundMusic.cs b/Vocaluxe/Base/CBackgroundMusic.cs index c01a334d..19d3b198 100644 --- a/Vocaluxe/Base/CBackgroundMusic.cs +++ b/Vocaluxe/Base/CBackgroundMusic.cs @@ -155,12 +155,12 @@ namespace Vocaluxe.Base foreach (string path in soundFiles) _BGMusicFiles.Add(new CPlaylistElement(path)); + _CurPlayer = _BGPlayer; //Set a default to have a consistent starting point, use SetMusicSource afterwards _MusicSource = EBackgroundMusicSource.TR_CONFIG_NO_OWN_MUSIC; _AddBackgroundMusic(); SetMusicSource(CConfig.Config.Sound.BackgroundMusicSource); - _CurPlayer = _BGPlayer; _Initialized = true; } @@ -178,7 +178,7 @@ namespace Vocaluxe.Base public static void Play() { - if (!IsPlayingPreview && CConfig.Config.Sound.BackgroundMusic == EBackgroundMusicOffOn.TR_CONFIG_OFF) + if (!IsPlayingPreview && CConfig.Config.Sound.BackgroundMusic != EBackgroundMusicOffOn.TR_CONFIG_ON) return; if (IsPlayingPreview || _BGPlayer.SoundLoaded) diff --git a/Vocaluxe/Screens/CScreenHighscore.cs b/Vocaluxe/Screens/CScreenHighscore.cs index 6149c8bd..25bee192 100644 --- a/Vocaluxe/Screens/CScreenHighscore.cs +++ b/Vocaluxe/Screens/CScreenHighscore.cs @@ -50,6 +50,11 @@ namespace Vocaluxe.Screens private int _Pos; private bool _IsDuet; + public override EMusicType CurrentMusicType + { + get { return CConfig.Config.Sound.BackgroundMusic == EBackgroundMusicOffOn.TR_CONFIG_OFF ? EMusicType.None : EMusicType.Preview; } + } + public override void Init() { base.Init(); diff --git a/Vocaluxe/Screens/CScreenNames.cs b/Vocaluxe/Screens/CScreenNames.cs index f6d59be9..d6834113 100644 --- a/Vocaluxe/Screens/CScreenNames.cs +++ b/Vocaluxe/Screens/CScreenNames.cs @@ -67,7 +67,7 @@ namespace Vocaluxe.Screens public override EMusicType CurrentMusicType { - get { return EMusicType.Preview; } + get { return CConfig.Config.Sound.BackgroundMusic == EBackgroundMusicOffOn.TR_CONFIG_OFF ? EMusicType.None : EMusicType.Preview; } } #region public methods diff --git a/Vocaluxe/Screens/CScreenScore.cs b/Vocaluxe/Screens/CScreenScore.cs index ffb5cc86..3c08cf60 100644 --- a/Vocaluxe/Screens/CScreenScore.cs +++ b/Vocaluxe/Screens/CScreenScore.cs @@ -57,6 +57,11 @@ namespace Vocaluxe.Screens private CPoints _Points; private Stopwatch _Timer; + public override EMusicType CurrentMusicType + { + get { return CConfig.Config.Sound.BackgroundMusic == EBackgroundMusicOffOn.TR_CONFIG_OFF ? EMusicType.None : EMusicType.Preview; } + } + public override void Init() { base.Init();