diff --git a/Vocaluxe/Base/CParty.cs b/Vocaluxe/Base/CParty.cs index f3d38752..02b65164 100644 --- a/Vocaluxe/Base/CParty.cs +++ b/Vocaluxe/Base/CParty.cs @@ -124,6 +124,7 @@ namespace Vocaluxe.Base public static void SetNormalGameMode() { + CSongs.ResetPartySongSung(); SetPartyMode(_NormalGameModeID); } diff --git a/Vocaluxe/Base/CSongs.cs b/Vocaluxe/Base/CSongs.cs index a4b1a3b4..c095081d 100644 --- a/Vocaluxe/Base/CSongs.cs +++ b/Vocaluxe/Base/CSongs.cs @@ -127,7 +127,7 @@ namespace Vocaluxe.Base get { return _CatIndex; } set { - if ((_Categories.Count > value) && (value >= -1)) + if ((_Categories.Count > value) && (value >= -1) && _CatIndex != value) { _CatIndex = value; @@ -265,6 +265,7 @@ namespace Vocaluxe.Base for (int i = 0; i < _SongsSortList.Length; i++) { _SongsSortList[i].PartyHidden = false; + _SongsSortList[i].Visible = (_SongsSortList[i].CatIndex == _CatIndex && !_SongsSortList[i].PartyHidden); } } @@ -273,7 +274,10 @@ namespace Vocaluxe.Base for (int i = 0; i < _SongsSortList.Length; i++) { if (_SongsSortList[i].CatIndex == CatIndex) + { _SongsSortList[i].PartyHidden = false; + _SongsSortList[i].Visible = (_SongsSortList[i].CatIndex == _CatIndex && !_SongsSortList[i].PartyHidden); + } } }