some preparations for party mode screens
This commit is contained in:
1 parent
e9f9ecc5f4
commit
bc7aa797fa
8 files changed
+399
-32
No files matched your search
+104
-1
@@ -298,6 +298,7 @@ namespace Vocaluxe.Base
|
||||
public string Name;
|
||||
|
||||
public bool IsThemeFont;
|
||||
public int PartyModeID;
|
||||
public string ThemeName;
|
||||
|
||||
public string Folder;
|
||||
@@ -323,6 +324,9 @@ namespace Vocaluxe.Base
|
||||
private static int _CurrentFont;
|
||||
private static float _Height = 1f;
|
||||
|
||||
public static int PartyModeID
|
||||
{ get; set; }
|
||||
|
||||
public static EStyle Style = EStyle.Normal;
|
||||
|
||||
public static int CurrentFont
|
||||
@@ -377,6 +381,7 @@ namespace Vocaluxe.Base
|
||||
_settings.ConformanceLevel = ConformanceLevel.Document;
|
||||
|
||||
_CurrentFont = 0;
|
||||
PartyModeID = -1;
|
||||
BuildFonts();
|
||||
}
|
||||
|
||||
@@ -586,7 +591,20 @@ namespace Vocaluxe.Base
|
||||
|
||||
public static void SetFont(string FontName)
|
||||
{
|
||||
int Index = GetFontIndex(CConfig.Theme, FontName);
|
||||
int Index = -1;
|
||||
|
||||
if (PartyModeID != -1)
|
||||
{
|
||||
Index = GetFontIndexParty(PartyModeID, FontName);
|
||||
|
||||
if (Index >= 0 && Index < _Fonts.Count)
|
||||
{
|
||||
_CurrentFont = Index;
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
Index = GetFontIndex(CConfig.Theme, FontName);
|
||||
|
||||
if (Index >= 0 && Index < _Fonts.Count)
|
||||
{
|
||||
@@ -720,6 +738,7 @@ namespace Vocaluxe.Base
|
||||
sf.Name = name;
|
||||
sf.IsThemeFont = false;
|
||||
sf.ThemeName = String.Empty;
|
||||
sf.PartyModeID = -1;
|
||||
|
||||
CHelper.GetValueFromXML("//root/Font" + i.ToString() + "/FileItalic", navigator, ref value, value);
|
||||
value = Path.Combine(Directory.GetCurrentDirectory(),
|
||||
@@ -769,6 +788,7 @@ namespace Vocaluxe.Base
|
||||
|
||||
sf.IsThemeFont = true;
|
||||
sf.ThemeName = ThemeName;
|
||||
sf.PartyModeID = -1;
|
||||
|
||||
bool ok = true;
|
||||
|
||||
@@ -889,6 +909,75 @@ namespace Vocaluxe.Base
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Loads party mode fonts from skin file
|
||||
/// </summary>
|
||||
public static void LoadPartyModeFonts(int PartyModeID, string FontFolder, XPathNavigator navigator)
|
||||
{
|
||||
string value = string.Empty;
|
||||
int i = 1;
|
||||
while (CHelper.GetValueFromXML("//root/Fonts/Font" + i.ToString() + "/Folder", navigator, ref value, value))
|
||||
{
|
||||
SFont sf = new SFont();
|
||||
sf.Folder = value;
|
||||
|
||||
sf.IsThemeFont = false;
|
||||
sf.ThemeName = String.Empty;
|
||||
sf.PartyModeID = PartyModeID;
|
||||
|
||||
bool ok = true;
|
||||
|
||||
ok &= CHelper.GetValueFromXML("//root/Fonts/Font" + i.ToString() + "/FileNormal", navigator, ref value, value);
|
||||
sf.FileNormal = value;
|
||||
value = Path.Combine(FontFolder, Path.Combine(sf.Folder, value));
|
||||
CFont f = new CFont(value);
|
||||
sf.Normal = f;
|
||||
|
||||
string name = String.Empty;
|
||||
ok &= CHelper.GetValueFromXML("//root/Fonts/Font" + i.ToString() + "/Name", navigator, ref name, value);
|
||||
sf.Name = name;
|
||||
|
||||
ok &= CHelper.GetValueFromXML("//root/Fonts/Font" + i.ToString() + "/FileItalic", navigator, ref value, value);
|
||||
sf.FileItalic = value;
|
||||
value = Path.Combine(FontFolder, Path.Combine(sf.Folder, value));
|
||||
f = new CFont(value);
|
||||
sf.Italic = f;
|
||||
|
||||
ok &= CHelper.GetValueFromXML("//root/Fonts/Font" + i.ToString() + "/FileBold", navigator, ref value, value);
|
||||
sf.FileBold = value;
|
||||
value = Path.Combine(FontFolder, Path.Combine(sf.Folder, value));
|
||||
f = new CFont(value);
|
||||
sf.Bold = f;
|
||||
|
||||
ok &= CHelper.GetValueFromXML("//root/Fonts/Font" + i.ToString() + "/FileBoldItalic", navigator, ref value, value);
|
||||
sf.FileBoldItalic = value;
|
||||
value = Path.Combine(FontFolder, Path.Combine(sf.Folder, value));
|
||||
f = new CFont(value);
|
||||
sf.BoldItalic = f;
|
||||
|
||||
sf.Outline = 0f;
|
||||
ok &= CHelper.TryGetFloatValueFromXML("//root/Fonts/Font" + i.ToString() + "/Outline", navigator, ref sf.Outline);
|
||||
|
||||
sf.OutlineColor = new SColorF(0f, 0f, 0f, 1f);
|
||||
ok &= CHelper.TryGetFloatValueFromXML("//root/Fonts/Font" + i.ToString() + "/OutlineColorR", navigator, ref sf.OutlineColor.R);
|
||||
ok &= CHelper.TryGetFloatValueFromXML("//root/Fonts/Font" + i.ToString() + "/OutlineColorG", navigator, ref sf.OutlineColor.G);
|
||||
ok &= CHelper.TryGetFloatValueFromXML("//root/Fonts/Font" + i.ToString() + "/OutlineColorB", navigator, ref sf.OutlineColor.B);
|
||||
ok &= CHelper.TryGetFloatValueFromXML("//root/Fonts/Font" + i.ToString() + "/OutlineColorA", navigator, ref sf.OutlineColor.A);
|
||||
|
||||
if (ok)
|
||||
_Fonts.Add(sf);
|
||||
else
|
||||
{
|
||||
CLog.LogError("Error loading theme fonts for party mode from Folder \"" + FontFolder + "\": Error in Font" + i.ToString());
|
||||
}
|
||||
i++;
|
||||
}
|
||||
|
||||
CLog.StartBenchmark(1, "BuildGlyphs");
|
||||
BuildGlyphs();
|
||||
CLog.StopBenchmark(1, "BuildGlyphs");
|
||||
}
|
||||
|
||||
private static int GetFontIndex(string ThemeName, string FontName)
|
||||
{
|
||||
if (ThemeName == String.Empty || FontName == String.Empty)
|
||||
@@ -903,6 +992,20 @@ namespace Vocaluxe.Base
|
||||
return -1;
|
||||
}
|
||||
|
||||
private static int GetFontIndexParty(int PartyModeID, string FontName)
|
||||
{
|
||||
if (PartyModeID == -1 || FontName == String.Empty)
|
||||
return -1;
|
||||
|
||||
for (int i = 0; i < _Fonts.Count; i++)
|
||||
{
|
||||
if (!_Fonts[i].IsThemeFont && _Fonts[i].Name == FontName && _Fonts[i].PartyModeID == PartyModeID)
|
||||
return i;
|
||||
}
|
||||
|
||||
return -1;
|
||||
}
|
||||
|
||||
private static void BuildGlyphs()
|
||||
{
|
||||
string Text = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPGRSTUVWGXZ1234567890";
|
||||
|
||||
+136
-13
@@ -14,6 +14,13 @@ namespace Vocaluxe.Base
|
||||
public string LanguageFilePath;
|
||||
|
||||
public Hashtable Texts;
|
||||
public List<SPartyLanguage> PartyModeTexts;
|
||||
}
|
||||
|
||||
struct SPartyLanguage
|
||||
{
|
||||
public int PartyModeID;
|
||||
public Hashtable Texts;
|
||||
}
|
||||
|
||||
static class CLanguage
|
||||
@@ -63,16 +70,24 @@ namespace Vocaluxe.Base
|
||||
}
|
||||
|
||||
public static bool SetLanguage(string Language)
|
||||
{
|
||||
int nr = GetLanguageNr(Language);
|
||||
if (nr != -1)
|
||||
{
|
||||
_CurrentLanguage = nr;
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
public static int GetLanguageNr(string Language)
|
||||
{
|
||||
for (int i = 0; i < _Languages.Count; i++)
|
||||
{
|
||||
if (_Languages[i].Name == Language)
|
||||
{
|
||||
_CurrentLanguage = i;
|
||||
return true;
|
||||
}
|
||||
return i;
|
||||
}
|
||||
return false;
|
||||
return -1;
|
||||
}
|
||||
|
||||
public static string Translate(string KeyWord)
|
||||
@@ -126,13 +141,37 @@ namespace Vocaluxe.Base
|
||||
return false;
|
||||
|
||||
string result = String.Empty;
|
||||
try
|
||||
|
||||
int PartyModeNr = GetPartyModeNr(CFonts.PartyModeID, _CurrentLanguage);
|
||||
if (CFonts.PartyModeID != -1)
|
||||
{
|
||||
result = (string)_Languages[_CurrentLanguage].Texts[KeyWord];
|
||||
if (PartyModeNr != -1)
|
||||
{
|
||||
try
|
||||
{
|
||||
result = (string)_Languages[_CurrentLanguage].PartyModeTexts[CFonts.PartyModeID].Texts[KeyWord];
|
||||
}
|
||||
catch { }
|
||||
}
|
||||
|
||||
if (result == null && (PartyModeNr = GetPartyModeNr(CFonts.PartyModeID, _FallbackLanguage)) != -1)
|
||||
{
|
||||
try
|
||||
{
|
||||
result = (string)_Languages[_FallbackLanguage].PartyModeTexts[CFonts.PartyModeID].Texts[KeyWord];
|
||||
}
|
||||
catch { }
|
||||
}
|
||||
}
|
||||
catch (Exception)
|
||||
|
||||
|
||||
if (result == null)
|
||||
{
|
||||
;
|
||||
try
|
||||
{
|
||||
result = (string)_Languages[_CurrentLanguage].Texts[KeyWord];
|
||||
}
|
||||
catch { }
|
||||
}
|
||||
|
||||
if (result == null)
|
||||
@@ -142,10 +181,7 @@ namespace Vocaluxe.Base
|
||||
{
|
||||
result = (string)_Languages[_FallbackLanguage].Texts[KeyWord];
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
;
|
||||
}
|
||||
catch { }
|
||||
|
||||
if (result == null)
|
||||
return false;
|
||||
@@ -154,6 +190,82 @@ namespace Vocaluxe.Base
|
||||
return true;
|
||||
}
|
||||
|
||||
public static bool LoadPartyLanguageFiles(int PartyModeID, string Path)
|
||||
{
|
||||
List<string> files = new List<string>();
|
||||
files.AddRange(Helper.ListFiles(CSettings.sFolderLanguages, "*.xml", true, true));
|
||||
|
||||
foreach (string file in files)
|
||||
{
|
||||
if (!LoadPartyLanguageFile(PartyModeID, file))
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
private static bool LoadPartyLanguageFile(int PartyModeID, string file)
|
||||
{
|
||||
bool loaded = false;
|
||||
XPathDocument xPathDoc = null;
|
||||
XPathNavigator navigator = null;
|
||||
|
||||
try
|
||||
{
|
||||
xPathDoc = new XPathDocument(file);
|
||||
navigator = xPathDoc.CreateNavigator();
|
||||
loaded = true;
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
loaded = false;
|
||||
if (navigator != null)
|
||||
navigator = null;
|
||||
|
||||
if (xPathDoc != null)
|
||||
xPathDoc = null;
|
||||
|
||||
CLog.LogError("Error opening Party Language File " + file + ": " + e.Message);
|
||||
}
|
||||
|
||||
if (loaded)
|
||||
{
|
||||
string value = string.Empty;
|
||||
if (loaded == CHelper.GetValueFromXML("//root/Info/Name", navigator, ref value, value))
|
||||
{
|
||||
int nr = GetLanguageNr(value);
|
||||
|
||||
if (nr == -1)
|
||||
return true;
|
||||
|
||||
SPartyLanguage lang = new SPartyLanguage();
|
||||
lang.PartyModeID = PartyModeID;
|
||||
lang.Texts = new Hashtable();
|
||||
|
||||
List<string> texts = CHelper.GetValuesFromXML("Texts", navigator);
|
||||
for (int i = 0; i < texts.Count; i++)
|
||||
{
|
||||
if (CHelper.GetValueFromXML("//root/Texts/" + texts[i], navigator, ref value, value))
|
||||
{
|
||||
try
|
||||
{
|
||||
lang.Texts.Add(texts[i], value);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
CLog.LogError("Error reading Party Language File " + file + ": " + e.Message);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
_Languages[nr].PartyModeTexts.Add(lang);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
CLog.LogError("Error reading Party Language File " + file);
|
||||
return false;
|
||||
}
|
||||
|
||||
private static void LoadLanguageFile(string FileName)
|
||||
{
|
||||
bool loaded = false;
|
||||
@@ -191,6 +303,7 @@ namespace Vocaluxe.Base
|
||||
_FallbackLanguage = _Languages.Count;
|
||||
|
||||
lang.Texts = new Hashtable();
|
||||
lang.PartyModeTexts = new List<SPartyLanguage>();
|
||||
|
||||
List<string> texts = CHelper.GetValuesFromXML("Texts", navigator);
|
||||
for (int i = 0; i < texts.Count; i++)
|
||||
@@ -213,5 +326,15 @@ namespace Vocaluxe.Base
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private static int GetPartyModeNr(int PartyModeID, int Language)
|
||||
{
|
||||
for (int i = 0; i < _Languages[Language].PartyModeTexts.Count; i++)
|
||||
{
|
||||
if (_Languages[Language].PartyModeTexts[i].PartyModeID == PartyModeID)
|
||||
return i;
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
}
|
||||
+104
-9
@@ -1,16 +1,47 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
using System.Xml;
|
||||
using System.Xml.XPath;
|
||||
|
||||
using Vocaluxe.Menu;
|
||||
using Vocaluxe.PartyModes;
|
||||
|
||||
namespace Vocaluxe.Base
|
||||
{
|
||||
#region Structs
|
||||
struct SPartyMode
|
||||
{
|
||||
public int PartyModeSystemVersion;
|
||||
public string Name;
|
||||
public string Author;
|
||||
public string Folder;
|
||||
public int PartyModeVersionMajor;
|
||||
public int PartyModeVersionMinor;
|
||||
public bool NoErrors;
|
||||
public IPartyMode PartyMode;
|
||||
}
|
||||
#endregion Structs
|
||||
|
||||
|
||||
static class CParty
|
||||
{
|
||||
private static List<IPartyMode> _PartyModes;
|
||||
const int PartyModeSystemVersion = 1;
|
||||
|
||||
private static CHelper Helper;
|
||||
private static List<SPartyMode> _PartyModes;
|
||||
|
||||
private static int _CurrentModeNr;
|
||||
public static int CurrentPartyModeID
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_CurrentModeNr == 0)
|
||||
return -1;
|
||||
|
||||
return _CurrentModeNr - 1;
|
||||
}
|
||||
}
|
||||
|
||||
#region public stuff
|
||||
public static int NumModes
|
||||
@@ -20,10 +51,13 @@ namespace Vocaluxe.Base
|
||||
|
||||
public static void Init()
|
||||
{
|
||||
_PartyModes = new List<IPartyMode>();
|
||||
Helper = new CHelper();
|
||||
_PartyModes = new List<SPartyMode>();
|
||||
|
||||
//add dummy normal game mode and set it as default
|
||||
_PartyModes.Add(new CPartyModeNone());
|
||||
SPartyMode pm = new SPartyMode();
|
||||
pm.PartyMode = new CPartyModeNone();
|
||||
_PartyModes.Add(pm);
|
||||
_CurrentModeNr = 0;
|
||||
|
||||
//load other party modes
|
||||
@@ -37,40 +71,101 @@ namespace Vocaluxe.Base
|
||||
|
||||
public static CMenu GetNextPartyScreen()
|
||||
{
|
||||
return _PartyModes[_CurrentModeNr].GetNextPartyScreen();
|
||||
return _PartyModes[_CurrentModeNr].PartyMode.GetNextPartyScreen();
|
||||
}
|
||||
#endregion public stuff
|
||||
|
||||
#region Interface
|
||||
public static EScreens GetStartScreen()
|
||||
{
|
||||
return _PartyModes[_CurrentModeNr].GetStartScreen();
|
||||
return _PartyModes[_CurrentModeNr].PartyMode.GetStartScreen();
|
||||
}
|
||||
|
||||
public static EScreens GetMainScreen()
|
||||
{
|
||||
return _PartyModes[_CurrentModeNr].GetMainScreen();
|
||||
return _PartyModes[_CurrentModeNr].PartyMode.GetMainScreen();
|
||||
}
|
||||
|
||||
public static ScreenSongOptions GetSongSelectionOptions()
|
||||
{
|
||||
return _PartyModes[_CurrentModeNr].GetScreenSongOptions();
|
||||
return _PartyModes[_CurrentModeNr].PartyMode.GetScreenSongOptions();
|
||||
}
|
||||
|
||||
public static void SetSearchString(string SearchString, bool Visible)
|
||||
{
|
||||
_PartyModes[_CurrentModeNr].SetSearchString(SearchString, Visible);
|
||||
_PartyModes[_CurrentModeNr].PartyMode.SetSearchString(SearchString, Visible);
|
||||
}
|
||||
|
||||
public static void JokerUsed(int TeamNr)
|
||||
{
|
||||
_PartyModes[_CurrentModeNr].JokerUsed(TeamNr);
|
||||
_PartyModes[_CurrentModeNr].PartyMode.JokerUsed(TeamNr);
|
||||
}
|
||||
#endregion Interface
|
||||
|
||||
#region private stuff
|
||||
private static void LoadPartyModes()
|
||||
{
|
||||
List<string> files = new List<string>();
|
||||
files.AddRange(Helper.ListFiles(CSettings.sFolderPartyModes, "*.xml", false, true));
|
||||
|
||||
foreach (string file in files)
|
||||
{
|
||||
_PartyModes.Add(LoadPartyMode(file));
|
||||
}
|
||||
}
|
||||
|
||||
private static SPartyMode LoadPartyMode(string file)
|
||||
{
|
||||
SPartyMode pm = new SPartyMode();
|
||||
pm.NoErrors = false;
|
||||
|
||||
bool loaded = false;
|
||||
XPathDocument xPathDoc = null;
|
||||
XPathNavigator navigator = null;
|
||||
|
||||
try
|
||||
{
|
||||
xPathDoc = new XPathDocument(file);
|
||||
navigator = xPathDoc.CreateNavigator();
|
||||
loaded = true;
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
loaded = false;
|
||||
if (navigator != null)
|
||||
navigator = null;
|
||||
|
||||
if (xPathDoc != null)
|
||||
xPathDoc = null;
|
||||
|
||||
CLog.LogError("Error opening party mode file " + file + ": " + e.Message);
|
||||
}
|
||||
|
||||
if (loaded)
|
||||
{
|
||||
loaded &= CHelper.TryGetIntValueFromXML("//root/Info/PartyModeSystemVersion", navigator, ref pm.PartyModeSystemVersion);
|
||||
loaded &= CHelper.GetValueFromXML("//root/Info/Name", navigator, ref pm.Name, "ERROR Name");
|
||||
loaded &= CHelper.GetValueFromXML("//root/Info/Author", navigator, ref pm.Author, "ERROR Author");
|
||||
loaded &= CHelper.GetValueFromXML("//root/Info/Folder", navigator, ref pm.Folder, "ERROR Folder");
|
||||
loaded &= CHelper.TryGetIntValueFromXML("//root/Info/PartyModeSystemVersion", navigator, ref pm.PartyModeVersionMajor);
|
||||
loaded &= CHelper.TryGetIntValueFromXML("//root/Info/PartyModeSystemVersion", navigator, ref pm.PartyModeVersionMinor);
|
||||
|
||||
if (pm.PartyModeSystemVersion != PartyModeSystemVersion)
|
||||
{
|
||||
CLog.LogError("Error loading PartyMode file (wrong PartyModeSystemVersion): " + file);
|
||||
return pm;
|
||||
}
|
||||
}
|
||||
|
||||
if (!loaded)
|
||||
{
|
||||
CLog.LogError("Error loading PartyMode file: " + file);
|
||||
return pm;
|
||||
}
|
||||
|
||||
|
||||
|
||||
return pm;
|
||||
}
|
||||
#endregion private stuff
|
||||
}
|
||||
|
||||
@@ -95,6 +95,7 @@ namespace Vocaluxe.Base
|
||||
public const string sFolderScreenshots = "Screenshots";
|
||||
public const string sFolderBackgroundMusic = "BackgroundMusic";
|
||||
public static string sFolderPlaylists = "Playlists";
|
||||
public static string sFolderPartyModes = "PartyModes";
|
||||
|
||||
//public const String[] ToneStrings = new String[]{ "C", "C#", "D", "D#", "E", "F", "F#", "G", "G#", "A", "A#", "B" };
|
||||
public const int ToneMin = -36;
|
||||
|
||||
@@ -126,8 +126,6 @@ namespace Vocaluxe.Base
|
||||
_settings.Encoding = Encoding.UTF8;
|
||||
_settings.ConformanceLevel = ConformanceLevel.Document;
|
||||
|
||||
//ThemeColors.Player = new SColorF[6];
|
||||
|
||||
ListThemes();
|
||||
ListSkins();
|
||||
|
||||
|
||||
@@ -377,7 +377,16 @@ namespace Vocaluxe.Menu
|
||||
_Fading = true;
|
||||
_FadingTimer.Reset();
|
||||
_FadingTimer.Start();
|
||||
_Screens[(int)_NextScreen].OnShow();
|
||||
|
||||
if (_NextScreen == EScreens.ScreenPartyDummy)
|
||||
{
|
||||
CFonts.PartyModeID = CParty.CurrentPartyModeID;
|
||||
_Screens[(int)_NextScreen].OnShow();
|
||||
CFonts.PartyModeID = -1;
|
||||
}
|
||||
else
|
||||
_Screens[(int)_NextScreen].OnShow();
|
||||
|
||||
HidePopup(EPopupScreens.PopupPlayerControl);
|
||||
}
|
||||
|
||||
@@ -395,11 +404,28 @@ namespace Vocaluxe.Menu
|
||||
|
||||
_GlobalAlpha = 1f;// -factor / 100f;
|
||||
_ZOffset = CSettings.zFar/2;
|
||||
_Screens[(int)_CurrentScreen].Draw();
|
||||
|
||||
if (_CurrentScreen == EScreens.ScreenPartyDummy)
|
||||
{
|
||||
CFonts.PartyModeID = CParty.CurrentPartyModeID;
|
||||
_Screens[(int)_CurrentScreen].Draw();
|
||||
CFonts.PartyModeID = -1;
|
||||
}
|
||||
else
|
||||
_Screens[(int)_CurrentScreen].Draw();
|
||||
|
||||
|
||||
_GlobalAlpha = factor;
|
||||
_ZOffset = 0f;
|
||||
_Screens[(int)_NextScreen].Draw();
|
||||
|
||||
if (_NextScreen == EScreens.ScreenPartyDummy)
|
||||
{
|
||||
CFonts.PartyModeID = CParty.CurrentPartyModeID;
|
||||
_Screens[(int)_NextScreen].Draw();
|
||||
CFonts.PartyModeID = -1;
|
||||
}
|
||||
else
|
||||
_Screens[(int)_NextScreen].Draw();
|
||||
|
||||
_GlobalAlpha = 1f;
|
||||
}
|
||||
@@ -412,14 +438,30 @@ namespace Vocaluxe.Menu
|
||||
CBackgroundMusic.Play();
|
||||
_Screens[(int)_CurrentScreen].OnShowFinish();
|
||||
_Screens[(int)_CurrentScreen].ProcessMouseMove(_Cursor.X, _Cursor.Y);
|
||||
_Screens[(int)_CurrentScreen].Draw();
|
||||
|
||||
if (_CurrentScreen == EScreens.ScreenPartyDummy)
|
||||
{
|
||||
CFonts.PartyModeID = CParty.CurrentPartyModeID;
|
||||
_Screens[(int)_CurrentScreen].Draw();
|
||||
CFonts.PartyModeID = -1;
|
||||
}
|
||||
else
|
||||
_Screens[(int)_CurrentScreen].Draw();
|
||||
|
||||
_Fading = false;
|
||||
_FadingTimer.Stop();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
_Screens[(int)_CurrentScreen].Draw();
|
||||
if (_CurrentScreen == EScreens.ScreenPartyDummy)
|
||||
{
|
||||
CFonts.PartyModeID = CParty.CurrentPartyModeID;
|
||||
_Screens[(int)_CurrentScreen].Draw();
|
||||
CFonts.PartyModeID = -1;
|
||||
}
|
||||
else
|
||||
_Screens[(int)_CurrentScreen].Draw();
|
||||
}
|
||||
|
||||
for (int i = 0; i < _PopupScreens.Count; i++)
|
||||
|
||||
@@ -10,17 +10,22 @@ namespace Vocaluxe.PartyModes
|
||||
abstract class CPartyMode : IPartyMode
|
||||
{
|
||||
protected ScreenSongOptions _ScreenSongOptions;
|
||||
protected List<CMenu> _Screens;
|
||||
protected string _Folder;
|
||||
|
||||
public CPartyMode()
|
||||
{
|
||||
_Screens = new List<CMenu>();
|
||||
_Folder = String.Empty;
|
||||
_ScreenSongOptions = new ScreenSongOptions();
|
||||
_ScreenSongOptions.Selection = new SelectionOptions();
|
||||
_ScreenSongOptions.Sorting = new SortingOptions();
|
||||
}
|
||||
|
||||
#region Implementation
|
||||
public virtual void Init()
|
||||
public virtual bool Init(string Folder)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
public virtual CMenu GetNextPartyScreen()
|
||||
|
||||
@@ -52,7 +52,7 @@ namespace Vocaluxe.PartyModes
|
||||
|
||||
interface IPartyMode
|
||||
{
|
||||
void Init();
|
||||
bool Init(string Folder);
|
||||
|
||||
CMenu GetNextPartyScreen();
|
||||
EScreens GetStartScreen();
|
||||
|
||||
Reference in new issue
Block a user