From 632206c317c548cb593868709e3030a99e0b6fcb Mon Sep 17 00:00:00 2001 From: Alexander Eckart Date: Sat, 15 Dec 2012 16:35:48 +0100 Subject: [PATCH] fixed party screen translations --- .../Code/PartyScreenChallengeMain.cs | 12 ---- .../Challenge/Languages/Deutsch.xml | 2 + .../Challenge/Languages/English.xml | 4 +- .../PartyModes/Challenge/Languages/French.xml | 2 + .../Challenge/Languages/Spanish.xml | 2 + .../Screens/PartyScreenChallengeMain.xml | 2 +- Output/Themes/Ambient/Screens/ScreenParty.xml | 59 ++++++++++++++++++- Vocaluxe/Base/CParty.cs | 10 +++- Vocaluxe/Screens/CScreenParty.cs | 32 ++++++++-- VocaluxeLib/Menu/CMenu.cs | 5 ++ VocaluxeLib/Menu/CMenuParty.cs | 10 ++++ VocaluxeLib/Menu/IMenu.cs | 6 ++ 12 files changed, 123 insertions(+), 23 deletions(-) diff --git a/Output/PartyModes/Challenge/Code/PartyScreenChallengeMain.cs b/Output/PartyModes/Challenge/Code/PartyScreenChallengeMain.cs index df92d940..d44c1d95 100644 --- a/Output/PartyModes/Challenge/Code/PartyScreenChallengeMain.cs +++ b/Output/PartyModes/Challenge/Code/PartyScreenChallengeMain.cs @@ -11,7 +11,6 @@ namespace Vocaluxe.PartyModes { // Version number for theme files. Increment it, if you've changed something on the theme files! const int ScreenVersion = 1; - private CText Warning; public PartyScreenChallengeMain() { @@ -28,17 +27,6 @@ namespace Vocaluxe.PartyModes public override void LoadTheme(string XmlPath) { base.LoadTheme(XmlPath); - - Warning = GetNewText(); - Warning.Height = 100f; - Warning.X = 150; - Warning.Y = 300; - Warning.Fon = "Outline"; - Warning.Style = EStyle.Normal; - Warning.Color = new SColorF(1f, 0f, 0f, 1f); - Warning.SColor = new SColorF(1f, 0f, 0f, 1f); - Warning.Text = "CHALLENGE!"; - AddText(Warning); } public override void ReloadTheme() diff --git a/Output/PartyModes/Challenge/Languages/Deutsch.xml b/Output/PartyModes/Challenge/Languages/Deutsch.xml index 5fead057..86964f20 100644 --- a/Output/PartyModes/Challenge/Languages/Deutsch.xml +++ b/Output/PartyModes/Challenge/Languages/Deutsch.xml @@ -7,5 +7,7 @@ Challenge Modus Spiele mit bis zu X Spielern einem Wettkampfmodus + + Challenge Modus: Übersicht diff --git a/Output/PartyModes/Challenge/Languages/English.xml b/Output/PartyModes/Challenge/Languages/English.xml index 1b659960..fbdd85d9 100644 --- a/Output/PartyModes/Challenge/Languages/English.xml +++ b/Output/PartyModes/Challenge/Languages/English.xml @@ -6,6 +6,8 @@ Challenge Mode - Challenge with zp to X Players + Challenge with zp to X Players + + Challenge Mode: Overview diff --git a/Output/PartyModes/Challenge/Languages/French.xml b/Output/PartyModes/Challenge/Languages/French.xml index 642fae0f..4f85dd90 100644 --- a/Output/PartyModes/Challenge/Languages/French.xml +++ b/Output/PartyModes/Challenge/Languages/French.xml @@ -7,5 +7,7 @@ TODO: Challenge Mode TODO: Challenge with zp to X Players + + Challenge Mode: Overview diff --git a/Output/PartyModes/Challenge/Languages/Spanish.xml b/Output/PartyModes/Challenge/Languages/Spanish.xml index 80fead48..9f3584f8 100644 --- a/Output/PartyModes/Challenge/Languages/Spanish.xml +++ b/Output/PartyModes/Challenge/Languages/Spanish.xml @@ -7,5 +7,7 @@ TODO: Challenge Mode TODO: Challenge with zp to X Players + + Challenge Mode: Overview diff --git a/Output/PartyModes/Challenge/Screens/PartyScreenChallengeMain.xml b/Output/PartyModes/Challenge/Screens/PartyScreenChallengeMain.xml index 9f4208c6..d31241bf 100644 --- a/Output/PartyModes/Challenge/Screens/PartyScreenChallengeMain.xml +++ b/Output/PartyModes/Challenge/Screens/PartyScreenChallengeMain.xml @@ -53,7 +53,7 @@ Outline - TR_SCREEN_PARTY_CHALLENGE_MAIN + TR_SCREENMAIN_TITLE diff --git a/Output/Themes/Ambient/Screens/ScreenParty.xml b/Output/Themes/Ambient/Screens/ScreenParty.xml index 0ee71709..2575bdb2 100644 --- a/Output/Themes/Ambient/Screens/ScreenParty.xml +++ b/Output/Themes/Ambient/Screens/ScreenParty.xml @@ -211,7 +211,7 @@ 1 - + Button @@ -228,6 +228,63 @@ ButtonSColor + + + 75 + 10 + + 32 + + 142 + + + ButtonTextColor + + + ButtonTextSColor + + Center + + Center + + + + Outline + + TR_BUTTON_START + + + + + + 10 + 26 + + + + + + 10 + 26 + + + + + Button + + Button + + 145 + 600 + 0,00 + 150 + 50 + + + ButtonColor + + + ButtonSColor 75 diff --git a/Vocaluxe/Base/CParty.cs b/Vocaluxe/Base/CParty.cs index 5b70b654..191f3072 100644 --- a/Vocaluxe/Base/CParty.cs +++ b/Vocaluxe/Base/CParty.cs @@ -266,7 +266,12 @@ namespace Vocaluxe.Base foreach (string screenfile in pm.ScreenFiles) { - CMenuParty Screen = GetPartyScreenInstance(Output, screenfile, Path.Combine(Path.Combine(CSettings.sFolderPartyModes, pm.Folder), CSettings.sFolderPartyModeScreens)); + CMenuParty Screen = GetPartyScreenInstance( + Output, + screenfile, + Path.Combine(Path.Combine(CSettings.sFolderPartyModes, pm.Folder), CSettings.sFolderPartyModeScreens), + pm.PartyModeID); + if (Screen != null) pm.PartyMode.AddScreen(Screen, screenfile); else @@ -323,7 +328,7 @@ namespace Vocaluxe.Base return CompileResult.CompiledAssembly; } - private static CMenuParty GetPartyScreenInstance(Assembly Assembly, string ScreenName, string XmlPath) + private static CMenuParty GetPartyScreenInstance(Assembly Assembly, string ScreenName, string XmlPath, int PartyModeID) { if (Assembly == null) return null; @@ -346,6 +351,7 @@ namespace Vocaluxe.Base return null; } Screen.Initialize(CMain.Base); + Screen.SetPartyModeID(PartyModeID); Screen.LoadTheme(XmlPath); return Screen; } diff --git a/Vocaluxe/Screens/CScreenParty.cs b/Vocaluxe/Screens/CScreenParty.cs index e3242a4a..8973478c 100644 --- a/Vocaluxe/Screens/CScreenParty.cs +++ b/Vocaluxe/Screens/CScreenParty.cs @@ -14,6 +14,7 @@ namespace Vocaluxe.Screens const int ScreenVersion = 1; const string TextDescription = "TextDescription"; + const string ButtonStart = "ButtonStart"; const string ButtonExit = "ButtonExit"; const string SelectSlideModes = "SelectSlideModes"; @@ -30,7 +31,7 @@ namespace Vocaluxe.Screens _ThemeName = "ScreenParty"; _ScreenVersion = ScreenVersion; _ThemeTexts = new string[] { TextDescription }; - _ThemeButtons = new string[] { ButtonExit }; + _ThemeButtons = new string[] { ButtonStart, ButtonExit }; _ThemeSelectSlides = new string[] { SelectSlideModes }; } @@ -55,16 +56,20 @@ namespace Vocaluxe.Screens case Keys.Escape: CGraphics.FadeTo(EScreens.ScreenMain); break; - - case Keys.C: - CParty.SetPartyMode(1); - CGraphics.FadeTo(EScreens.ScreenPartyDummy); - break; case Keys.Enter: + if (Buttons[htButtons(ButtonStart)].Selected) + StartPartyMode(); + if (Buttons[htButtons(ButtonExit)].Selected) CGraphics.FadeTo(EScreens.ScreenMain); break; + + case Keys.Left: + case Keys.Right: + if (SelectSlides[htSelectSlides(SelectSlideModes)].Selected) + UpdateSelection(); + break; } } return true; @@ -76,6 +81,8 @@ namespace Vocaluxe.Screens if (MouseEvent.LB && IsMouseOver(MouseEvent)) { + if (Buttons[htButtons(ButtonStart)].Selected) + StartPartyMode(); if (Buttons[htButtons(ButtonExit)].Selected) CGraphics.FadeTo(EScreens.ScreenMain); @@ -136,5 +143,18 @@ namespace Vocaluxe.Screens Texts[htTexts(TextDescription)].PartyModeID = _PartyModeInfos[index].PartyModeID; Texts[htTexts(TextDescription)].Text = _PartyModeInfos[index].Description; } + + private void StartPartyMode() + { + if (_PartyModeInfos.Count == 0) + return; + + int index = SelectSlides[htSelectSlides(SelectSlideModes)].Selection; + if (index >= _PartyModeInfos.Count) + return; + + CParty.SetPartyMode(_PartyModeInfos[index].PartyModeID); + CGraphics.FadeTo(EScreens.ScreenPartyDummy); + } } } diff --git a/VocaluxeLib/Menu/CMenu.cs b/VocaluxeLib/Menu/CMenu.cs index 76637118..a72abf1e 100644 --- a/VocaluxeLib/Menu/CMenu.cs +++ b/VocaluxeLib/Menu/CMenu.cs @@ -25,6 +25,7 @@ namespace Vocaluxe.Menu private List _Interactions; private int _Selection = 0; private string _ThemePath = String.Empty; + protected int _PartyModeID = -1; private List _Backgrounds; private List _Buttons; @@ -233,6 +234,7 @@ namespace Vocaluxe.Menu for (int i = 0; i < _ThemeTexts.Length; i++) { CText text = new CText(_Base); + text.PartyModeID = _PartyModeID; if (text.LoadTheme("//root/" + _ThemeName, _ThemeTexts[i], navigator, SkinIndex)) { _htTexts.Add(_ThemeTexts[i], AddText(text)); @@ -1300,6 +1302,7 @@ namespace Vocaluxe.Menu public int AddText(CText text) { + text.PartyModeID = _PartyModeID; _Texts.Add(text); _AddInteraction(_Texts.Count - 1, EType.TText); return _Texts.Count - 1; @@ -2311,11 +2314,13 @@ namespace Vocaluxe.Menu // Texts CText text = new CText(_Base); + text.PartyModeID = _PartyModeID; i = 1; while (text.LoadTheme("//root/" + _ThemeName, "Text" + i.ToString(), navigator, SkinIndex)) { AddText(text); text = new CText(_Base); + text.PartyModeID = _PartyModeID; i++; } } diff --git a/VocaluxeLib/Menu/CMenuParty.cs b/VocaluxeLib/Menu/CMenuParty.cs index 951503ff..e726e707 100644 --- a/VocaluxeLib/Menu/CMenuParty.cs +++ b/VocaluxeLib/Menu/CMenuParty.cs @@ -10,6 +10,16 @@ namespace Vocaluxe.Menu { } + public void SetPartyModeID(int PartyModeID) + { + _PartyModeID = PartyModeID; + } + + public int GetPartyModeID() + { + return _PartyModeID; + } + /* public sealed override void LoadTheme() { diff --git a/VocaluxeLib/Menu/IMenu.cs b/VocaluxeLib/Menu/IMenu.cs index 779efcee..a50a085c 100644 --- a/VocaluxeLib/Menu/IMenu.cs +++ b/VocaluxeLib/Menu/IMenu.cs @@ -43,6 +43,12 @@ namespace Vocaluxe.Menu void ProcessMouseMove(int x, int y); } + public interface IMenuParty + { + void SetPartyModeID(int PartyModeID); + int GetPartyModeID(); + } + public interface IConfig { void SetBackgroundMusicVolume(int NewVolume);