diff --git a/Installer/setup.aip b/Installer/setup.aip index 80df4d8e..246b2193 100644 --- a/Installer/setup.aip +++ b/Installer/setup.aip @@ -19,7 +19,7 @@ - + @@ -265,11 +265,11 @@ - - - - - + + + + + @@ -348,7 +348,7 @@ - + @@ -378,7 +378,6 @@ - @@ -826,6 +825,7 @@ + diff --git a/Output/CreditsRessourcesDB.sqlite b/Output/CreditsRessourcesDB.sqlite index 5701709f..d5dbafb9 100644 Binary files a/Output/CreditsRessourcesDB.sqlite and b/Output/CreditsRessourcesDB.sqlite differ diff --git a/PartyModes/PartyModeChallenge/CPartyModeChallenge.cs b/PartyModes/PartyModeChallenge/CPartyModeChallenge.cs index 5d76b077..db882cd4 100644 --- a/PartyModes/PartyModeChallenge/CPartyModeChallenge.cs +++ b/PartyModes/PartyModeChallenge/CPartyModeChallenge.cs @@ -210,7 +210,7 @@ namespace VocaluxeLib.PartyModes.Challenge _Stage = EStage.Config; break; case EStage.Main: - _Stage = EStage.Config; + _Stage = EStage.Names; break; default: // Rest is not allowed throw new ArgumentException("Invalid stage: " + _Stage); diff --git a/PartyModes/PartyModeChallengeMedley/CPartyModeChallengeMedley.cs b/PartyModes/PartyModeChallengeMedley/CPartyModeChallengeMedley.cs index 78dacac6..ec9429f9 100644 --- a/PartyModes/PartyModeChallengeMedley/CPartyModeChallengeMedley.cs +++ b/PartyModes/PartyModeChallengeMedley/CPartyModeChallengeMedley.cs @@ -217,7 +217,7 @@ namespace VocaluxeLib.PartyModes.ChallengeMedley _Stage = EStage.Config; break; case EStage.Main: - _Stage = EStage.Config; + _Stage = EStage.Names; break; default: // Rest is not allowed throw new ArgumentException("Invalid stage: " + _Stage); diff --git a/PartyModes/PartyModeTicTacToe/CPartyModeTicTacToe.cs b/PartyModes/PartyModeTicTacToe/CPartyModeTicTacToe.cs index bfbde42a..5929e1ff 100644 --- a/PartyModes/PartyModeTicTacToe/CPartyModeTicTacToe.cs +++ b/PartyModes/PartyModeTicTacToe/CPartyModeTicTacToe.cs @@ -187,7 +187,7 @@ namespace VocaluxeLib.PartyModes.TicTacToe case EStage.Main: return _Screens["CPartyScreenTicTacToeMain"]; case EStage.Singing: - return CBase.Graphics.GetScreen(EScreen.Song); + return CBase.Graphics.GetScreen(EScreen.Sing); default: throw new ArgumentException("Invalid stage: " + _Stage); } @@ -195,7 +195,8 @@ namespace VocaluxeLib.PartyModes.TicTacToe private void _FadeToScreen() { - CBase.Graphics.FadeTo(_GetNextScreen()); + if(CBase.Graphics.GetNextScreen() != _GetNextScreen()) + CBase.Graphics.FadeTo(_GetNextScreen()); } public void Next() @@ -242,7 +243,7 @@ namespace VocaluxeLib.PartyModes.TicTacToe _Stage = EStage.Config; break; case EStage.Main: - _Stage = EStage.Config; + _Stage = EStage.Names; break; default: // Rest is not allowed throw new ArgumentException("Invalid stage: " + _Stage); diff --git a/Vocaluxe/Lib/Database/CResourceDB.cs b/Vocaluxe/Lib/Database/CResourceDB.cs index 77d9c455..0da33eb9 100644 --- a/Vocaluxe/Lib/Database/CResourceDB.cs +++ b/Vocaluxe/Lib/Database/CResourceDB.cs @@ -38,7 +38,7 @@ namespace Vocaluxe.Lib.Database private readonly string[] _FilesV1 = new string[] { "Logo_voc.png", "PerfectNoteStar.png", "redDot.png", "blueDot.png", "brunzel.png", "Darkice.png", "flokuep.png", "flamefire.png", "bohning.png", "mesand.png", - "babene03.png", "pantero.png", "Pinky007.png" + "babene03.png", "lukeIam.png" }; #endif public CResourceDB(string filePath) : base(filePath) {} diff --git a/Vocaluxe/Screens/CScreenCredits.cs b/Vocaluxe/Screens/CScreenCredits.cs index bf585e2f..7b9eb5cd 100644 --- a/Vocaluxe/Screens/CScreenCredits.cs +++ b/Vocaluxe/Screens/CScreenCredits.cs @@ -137,11 +137,10 @@ namespace Vocaluxe.Screens private CTextureRef _TexNameDarkice; private CTextureRef _TexNameFlokuep; private CTextureRef _TexNameFlamefire; + private CTextureRef _TexNameLukeIam; private CTextureRef _TexNameMesand; private CTextureRef _TexNameBohning; private CTextureRef _TexNameBabene03; - private CTextureRef _TexNamePantero; - private CTextureRef _TexNamePinky007; private SThemeBackground _BGTheme; @@ -208,11 +207,10 @@ namespace Vocaluxe.Screens ressourceOK &= CDataBase.GetCreditsRessource("Darkice.png", ref _TexNameDarkice); ressourceOK &= CDataBase.GetCreditsRessource("flokuep.png", ref _TexNameFlokuep); ressourceOK &= CDataBase.GetCreditsRessource("flamefire.png", ref _TexNameFlamefire); + ressourceOK &= CDataBase.GetCreditsRessource("lukeIam.png", ref _TexNameLukeIam); ressourceOK &= CDataBase.GetCreditsRessource("bohning.png", ref _TexNameBohning); ressourceOK &= CDataBase.GetCreditsRessource("mesand.png", ref _TexNameMesand); ressourceOK &= CDataBase.GetCreditsRessource("babene03.png", ref _TexNameBabene03); - ressourceOK &= CDataBase.GetCreditsRessource("pantero.png", ref _TexNamePantero); - ressourceOK &= CDataBase.GetCreditsRessource("Pinky007.png", ref _TexNamePinky007); if (!ressourceOK) CLog.LogError("Could not load all ressources!", true, true); @@ -228,6 +226,7 @@ namespace Vocaluxe.Screens continue; string newLine = " " + paragraph[e]; CText text = GetNewText(75, lastY, -2, 25, -1, EAlignment.Left, EStyle.Bold, "Outline", new SColorF(1, 1, 1, 1), line); + text.Visible = false; if (CFonts.GetTextBounds(text).Width < (CSettings.RenderW - 220)) { line += newLine; @@ -247,6 +246,7 @@ namespace Vocaluxe.Screens line = newLine; lastY += 27; } + _AddText(text); } } @@ -273,11 +273,10 @@ namespace Vocaluxe.Screens _AddNewCreditName(_TexNameDarkice, 360, 55, true); _AddNewCreditName(_TexNameFlokuep, 214, 14, true); _AddNewCreditName(_TexNameFlamefire, 496, 46, true); + _AddNewCreditName(_TexNameLukeIam, 411, 26, true); _AddNewCreditName(_TexNameBohning, 383, 54, false); _AddNewCreditName(_TexNameMesand, 525, 13, false); _AddNewCreditName(_TexNameBabene03, 33, 26, false); - _AddNewCreditName(_TexNamePantero, 311, 45, false); - _AddNewCreditName(_TexNamePinky007, 113, 50, false); } public override void ReloadTheme(string xmlPath) {} @@ -314,7 +313,7 @@ namespace Vocaluxe.Screens public override bool UpdateGame() { - if (!_Animation()) + if (!_Animation() && CGraphics.NextScreen != CGraphics.GetScreen(EScreen.Main)) CGraphics.FadeTo(EScreen.Main); return true; } @@ -465,7 +464,7 @@ namespace Vocaluxe.Screens } if (_TextTimer.IsRunning) - active = _TextTimer.ElapsedMilliseconds <= 60000; + active = _TextTimer.ElapsedMilliseconds <= 500; return active; } diff --git a/Vocaluxe/Screens/CScreenScore.cs b/Vocaluxe/Screens/CScreenScore.cs index e82fea39..4f8a7aff 100644 --- a/Vocaluxe/Screens/CScreenScore.cs +++ b/Vocaluxe/Screens/CScreenScore.cs @@ -78,6 +78,7 @@ namespace Vocaluxe.Screens _SlideShowBG = GetNewBackground(); _AddBackground(_SlideShowBG); + _SlideShowBG.Z--; } public override bool HandleInput(SKeyEvent keyEvent) diff --git a/VocaluxeLib/Menu/CBackground.cs b/VocaluxeLib/Menu/CBackground.cs index efbbccd9..c6892bf6 100644 --- a/VocaluxeLib/Menu/CBackground.cs +++ b/VocaluxeLib/Menu/CBackground.cs @@ -84,6 +84,8 @@ namespace VocaluxeLib.Menu _PartyModeID = partyModeID; ThemeLoaded = true; + + LoadSkin(); } #endregion Constructors @@ -163,7 +165,7 @@ namespace VocaluxeLib.Menu ok = _DrawVideo(); } } - else if (_Theme.Type == EBackgroundTypes.SlideShow && _Theme.SlideShowTextures.Count > 0) + else if (_Theme.Type == EBackgroundTypes.SlideShow && _SlideShowTextures.Count > 0) ok = _DrawSlideShow(); if (!String.IsNullOrEmpty(_Theme.Skin) && (_Theme.Type == EBackgroundTypes.Texture || !ok)) diff --git a/VocaluxeLib/Menu/CMenuPartyNameSelection.cs b/VocaluxeLib/Menu/CMenuPartyNameSelection.cs index db867fb3..698c5a99 100644 --- a/VocaluxeLib/Menu/CMenuPartyNameSelection.cs +++ b/VocaluxeLib/Menu/CMenuPartyNameSelection.cs @@ -24,6 +24,17 @@ namespace VocaluxeLib.Menu { public abstract class CMenuPartyNameSelection : CMenuParty { + private bool _AllPlayerSelected + { + get + { + for (int team = 0; team < _NumTeams; team++) + if (_TeamList[team].Count < _NumPlayerTeams[team]) + return false; + return true; + } + } + private bool _Teams; protected int _NumTeams = -1; protected int _NumPlayer = -1; @@ -99,12 +110,14 @@ namespace VocaluxeLib.Menu _LoadProfiles(); _UpdateButtonVisibility(); _UpdateButtonState(); + _UpdateNextButtonVisibility(); } public void SetPartyModeProfiles(List[] teamProfiles) { _TeamList = teamProfiles; _UpdateSlides(); + _UpdateNextButtonVisibility(); } public override bool HandleInput(SKeyEvent keyEvent) @@ -547,6 +560,7 @@ namespace VocaluxeLib.Menu _UpdateButtonVisibility(); _UpdateButtonState(); + _UpdateNextButtonVisibility(); } public abstract void Back(); @@ -715,6 +729,7 @@ namespace VocaluxeLib.Menu _TeamList[team].Add(profileID); _UpdatePlayerSlide(); + _UpdateNextButtonVisibility(); } private void _RemoveAllPlayer() @@ -736,12 +751,16 @@ namespace VocaluxeLib.Menu _TeamList[team].RemoveAt(index); _NameSelections[_NameSelection].RemoveUsedProfile(id); } + + _UpdateNextButtonVisibility(); } private void _RemovePlayer(int team, int profileID) { _TeamList[team].Remove(profileID); _NameSelections[_NameSelection].RemoveUsedProfile(profileID); + + _UpdateNextButtonVisibility(); } private void _SelectRandom() @@ -756,6 +775,11 @@ namespace VocaluxeLib.Menu } } } + + private void _UpdateNextButtonVisibility() + { + _Buttons[_ButtonNext].Visible = _AllPlayerSelected; + } #endregion } } \ No newline at end of file diff --git a/VocaluxeLib/Menu/CText.cs b/VocaluxeLib/Menu/CText.cs index 4f63e1e6..3a923a6d 100644 --- a/VocaluxeLib/Menu/CText.cs +++ b/VocaluxeLib/Menu/CText.cs @@ -261,7 +261,7 @@ namespace VocaluxeLib.Menu float rheight = 0, float rspace = 0) : this(partyModeID) { - _Theme = new SThemeText {FontFamily = fontFamily, FontStyle = style, FontHeight = h, Text = text}; + _Theme = new SThemeText { FontFamily = fontFamily, FontStyle = style, FontHeight = h, Text = text, Color = { A = col.A, B = col.B, G = col.G, R = col.R } }; ThemeLoaded = false; _ButtonText = false;