Merge branch 'challenge' of github.com:Vocaluxe/Vocaluxe into challenge
Conflicts: Output/PartyModes/Challenge/Screens/PartyScreenChallengeNames.xml
This commit is contained in:
commit
60ae51ff90
13 files changed
+447
-35
No files matched your search
@@ -6,6 +6,36 @@ using Vocaluxe.Menu;
|
||||
|
||||
namespace Vocaluxe.PartyModes
|
||||
{
|
||||
public struct DataToScreen
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public struct DataFromScreen
|
||||
{
|
||||
public FromScreenConfig ScreenConfig;
|
||||
public FromScreenNames ScreenNames;
|
||||
public FromScreenMain ScreenMain;
|
||||
}
|
||||
|
||||
public struct FromScreenConfig
|
||||
{
|
||||
public int NumPlayers;
|
||||
public int NumPlayersAtOnce;
|
||||
public int NumRounds;
|
||||
}
|
||||
|
||||
public struct FromScreenNames
|
||||
{
|
||||
public bool FadeToConfig;
|
||||
public bool FadeToMain;
|
||||
public List<int> ProfileIDs;
|
||||
}
|
||||
|
||||
public struct FromScreenMain
|
||||
{
|
||||
}
|
||||
|
||||
public class PartyModeChallenge : CPartyMode
|
||||
{
|
||||
private const int MaxPlayer = 10;
|
||||
@@ -13,6 +43,16 @@ namespace Vocaluxe.PartyModes
|
||||
private const int MaxTeams = 0;
|
||||
private const int MinTeams = 0;
|
||||
|
||||
enum EStage
|
||||
{
|
||||
NotStarted,
|
||||
Config,
|
||||
Names,
|
||||
Main,
|
||||
Singing
|
||||
}
|
||||
|
||||
private EStage _Stage;
|
||||
|
||||
public PartyModeChallenge()
|
||||
{
|
||||
@@ -23,15 +63,102 @@ namespace Vocaluxe.PartyModes
|
||||
|
||||
_ScreenSongOptions.Sorting.SearchString = String.Empty;
|
||||
_ScreenSongOptions.Sorting.SearchStringVisible = false;
|
||||
|
||||
_Stage = EStage.NotStarted;
|
||||
}
|
||||
|
||||
public override CMenuParty GetNextPartyScreen()
|
||||
public override bool Init()
|
||||
{
|
||||
_Stage = EStage.NotStarted;
|
||||
return true;
|
||||
}
|
||||
|
||||
public override void DataFromScreen(string ScreenName, Object Data)
|
||||
{
|
||||
DataFromScreen data = new DataFromScreen();
|
||||
switch (ScreenName)
|
||||
{
|
||||
case "PartyScreenChallengeConfig":
|
||||
|
||||
try
|
||||
{
|
||||
data = (DataFromScreen)Data;
|
||||
_Stage = EStage.Config;
|
||||
_Base.Graphics.FadeTo(EScreens.ScreenPartyDummy);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
_Base.Log.LogError("Error in party mode challenge. Can't cast received data from screen " + ScreenName + ". " + e.Message);
|
||||
}
|
||||
break;
|
||||
|
||||
case "PartyScreenChallengeNames":
|
||||
try
|
||||
{
|
||||
data = (DataFromScreen)Data;
|
||||
if (data.ScreenNames.FadeToConfig)
|
||||
_Stage = EStage.NotStarted;
|
||||
else
|
||||
_Stage = EStage.Names;
|
||||
|
||||
_Base.Graphics.FadeTo(EScreens.ScreenPartyDummy);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
_Base.Log.LogError("Error in party mode challenge. Can't cast received data from screen " + ScreenName + ". " + e.Message);
|
||||
}
|
||||
break;
|
||||
|
||||
case "PartyScreenChallengeMain":
|
||||
_Stage = EStage.Singing;
|
||||
_Base.Graphics.FadeTo(EScreens.ScreenPartyDummy);
|
||||
break;
|
||||
|
||||
default:
|
||||
_Base.Log.LogError("Error in party mode challenge. Wrong screen is sending: " + ScreenName);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
public override CMenuParty GetNextPartyScreen(out EScreens AlternativeScreen)
|
||||
{
|
||||
CMenuParty Screen = null;
|
||||
_Screens.TryGetValue("PartyScreenChallengeConfig", out Screen);
|
||||
AlternativeScreen = EScreens.ScreenSong;
|
||||
|
||||
switch (_Stage)
|
||||
{
|
||||
case EStage.NotStarted:
|
||||
_Screens.TryGetValue("PartyScreenChallengeConfig", out Screen);
|
||||
break;
|
||||
case EStage.Config:
|
||||
_Screens.TryGetValue("PartyScreenChallengeNames", out Screen);
|
||||
break;
|
||||
case EStage.Names:
|
||||
_Screens.TryGetValue("PartyScreenChallengeMain", out Screen);
|
||||
break;
|
||||
case EStage.Main:
|
||||
AlternativeScreen = EScreens.ScreenSong;
|
||||
break;
|
||||
case EStage.Singing:
|
||||
_Screens.TryGetValue("PartyScreenChallengeMain", out Screen);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
return Screen;
|
||||
}
|
||||
|
||||
public override EScreens GetStartScreen()
|
||||
{
|
||||
return EScreens.ScreenPartyDummy;
|
||||
}
|
||||
|
||||
public override EScreens GetMainScreen()
|
||||
{
|
||||
return EScreens.ScreenPartyDummy;
|
||||
}
|
||||
|
||||
public override ScreenSongOptions GetScreenSongOptions()
|
||||
{
|
||||
_ScreenSongOptions.Sorting.SongSorting = _Base.Config.GetSongSorting();
|
||||
|
||||
@@ -15,6 +15,8 @@ namespace Vocaluxe.PartyModes
|
||||
const string ButtonNext = "ButtonNext";
|
||||
const string ButtonBack = "ButtonBack";
|
||||
|
||||
DataFromScreen Data;
|
||||
|
||||
public PartyScreenChallengeConfig()
|
||||
{
|
||||
}
|
||||
@@ -26,6 +28,13 @@ namespace Vocaluxe.PartyModes
|
||||
_ThemeName = "PartyScreenChallengeConfig";
|
||||
_ThemeButtons = new string[] { ButtonNext, ButtonBack };
|
||||
_ScreenVersion = ScreenVersion;
|
||||
|
||||
Data = new DataFromScreen();
|
||||
FromScreenConfig config = new FromScreenConfig();
|
||||
config.NumPlayers = 0;
|
||||
config.NumPlayersAtOnce = 0;
|
||||
config.NumRounds = 0;
|
||||
Data.ScreenConfig = config;
|
||||
}
|
||||
|
||||
public override void LoadTheme(string XmlPath)
|
||||
@@ -39,7 +48,7 @@ namespace Vocaluxe.PartyModes
|
||||
|
||||
if (KeyEvent.KeyPressed)
|
||||
{
|
||||
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -47,7 +56,15 @@ namespace Vocaluxe.PartyModes
|
||||
{
|
||||
case Keys.Back:
|
||||
case Keys.Escape:
|
||||
FadeTo(EScreens.ScreenParty);
|
||||
Back();
|
||||
break;
|
||||
|
||||
case Keys.Enter:
|
||||
if (Buttons[htButtons(ButtonBack)].Selected)
|
||||
Back();
|
||||
|
||||
if (Buttons[htButtons(ButtonNext)].Selected)
|
||||
Next();
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -60,12 +77,16 @@ namespace Vocaluxe.PartyModes
|
||||
|
||||
if (MouseEvent.LB && IsMouseOver(MouseEvent))
|
||||
{
|
||||
if (Buttons[htButtons(ButtonBack)].Selected)
|
||||
Back();
|
||||
|
||||
if (Buttons[htButtons(ButtonNext)].Selected)
|
||||
Next();
|
||||
}
|
||||
|
||||
if (MouseEvent.RB)
|
||||
{
|
||||
FadeTo(EScreens.ScreenParty);
|
||||
Back();
|
||||
}
|
||||
|
||||
return true;
|
||||
@@ -91,5 +112,19 @@ namespace Vocaluxe.PartyModes
|
||||
{
|
||||
base.OnClose();
|
||||
}
|
||||
|
||||
private void Back()
|
||||
{
|
||||
FadeTo(EScreens.ScreenParty);
|
||||
}
|
||||
|
||||
private void Next()
|
||||
{
|
||||
Data.ScreenConfig.NumPlayers = 4;
|
||||
Data.ScreenConfig.NumPlayersAtOnce = 2;
|
||||
Data.ScreenConfig.NumRounds = 8;
|
||||
|
||||
_PartyMode.DataFromScreen(_ThemeName, Data);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -12,6 +12,11 @@ namespace Vocaluxe.PartyModes
|
||||
// Version number for theme files. Increment it, if you've changed something on the theme files!
|
||||
const int ScreenVersion = 1;
|
||||
|
||||
const string ButtonNext = "ButtonNext";
|
||||
const string ButtonBack = "ButtonBack";
|
||||
|
||||
private DataFromScreen Data;
|
||||
|
||||
public PartyScreenChallengeNames()
|
||||
{
|
||||
}
|
||||
@@ -21,7 +26,15 @@ namespace Vocaluxe.PartyModes
|
||||
base.Init();
|
||||
|
||||
_ThemeName = "PartyScreenChallengeNames";
|
||||
_ThemeButtons = new string[] { ButtonNext, ButtonBack };
|
||||
_ScreenVersion = ScreenVersion;
|
||||
|
||||
Data = new DataFromScreen();
|
||||
FromScreenNames names = new FromScreenNames();
|
||||
names.FadeToConfig = false;
|
||||
names.FadeToMain = false;
|
||||
names.ProfileIDs = new List<int>();
|
||||
Data.ScreenNames = names;
|
||||
}
|
||||
|
||||
public override void LoadTheme(string XmlPath)
|
||||
@@ -43,7 +56,16 @@ namespace Vocaluxe.PartyModes
|
||||
{
|
||||
case Keys.Back:
|
||||
case Keys.Escape:
|
||||
FadeTo(EScreens.ScreenParty);
|
||||
Back();
|
||||
break;
|
||||
|
||||
case Keys.Enter:
|
||||
if (Buttons[htButtons(ButtonBack)].Selected)
|
||||
Back();
|
||||
|
||||
if (Buttons[htButtons(ButtonNext)].Selected)
|
||||
Next();
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -56,7 +78,11 @@ namespace Vocaluxe.PartyModes
|
||||
|
||||
if (MouseEvent.LB && IsMouseOver(MouseEvent))
|
||||
{
|
||||
if (Buttons[htButtons(ButtonBack)].Selected)
|
||||
Back();
|
||||
|
||||
if (Buttons[htButtons(ButtonNext)].Selected)
|
||||
Next();
|
||||
}
|
||||
|
||||
if (MouseEvent.RB)
|
||||
@@ -87,5 +113,19 @@ namespace Vocaluxe.PartyModes
|
||||
{
|
||||
base.OnClose();
|
||||
}
|
||||
|
||||
private void Back()
|
||||
{
|
||||
Data.ScreenNames.FadeToConfig = true;
|
||||
Data.ScreenNames.FadeToMain = false;
|
||||
_PartyMode.DataFromScreen(_ThemeName, Data);
|
||||
}
|
||||
|
||||
private void Next()
|
||||
{
|
||||
Data.ScreenNames.FadeToConfig = false;
|
||||
Data.ScreenNames.FadeToMain = true;
|
||||
_PartyMode.DataFromScreen(_ThemeName, Data);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -115,7 +115,7 @@
|
||||
<Height>26</Height>
|
||||
</SReflection>
|
||||
</ButtonNext>
|
||||
<ButtonExit>
|
||||
<ButtonBack>
|
||||
<!--<Skin>: Texture name-->
|
||||
<Skin>Button</Skin>
|
||||
<!--<SkinSelected>: Texture name for selected button-->
|
||||
@@ -171,7 +171,7 @@
|
||||
<Space>10</Space>
|
||||
<Height>26</Height>
|
||||
</SReflection>
|
||||
</ButtonExit>
|
||||
</ButtonBack>
|
||||
<NameSelection>
|
||||
<!--<X>, <Y>, <Z>, <W>, <H>: NameSelection position, width and height-->
|
||||
<X>172</X>
|
||||
|
||||
@@ -6,6 +6,36 @@ using Vocaluxe.Menu;
|
||||
|
||||
namespace Vocaluxe.PartyModes
|
||||
{
|
||||
public struct DataToScreen
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public struct DataFromScreen
|
||||
{
|
||||
public FromScreenConfig ScreenConfig;
|
||||
public FromScreenNames ScreenNames;
|
||||
public FromScreenMain ScreenMain;
|
||||
}
|
||||
|
||||
public struct FromScreenConfig
|
||||
{
|
||||
public int NumPlayers;
|
||||
public int NumPlayersAtOnce;
|
||||
public int NumRounds;
|
||||
}
|
||||
|
||||
public struct FromScreenNames
|
||||
{
|
||||
public bool FadeToConfig;
|
||||
public bool FadeToMain;
|
||||
public List<int> ProfileIDs;
|
||||
}
|
||||
|
||||
public struct FromScreenMain
|
||||
{
|
||||
}
|
||||
|
||||
public class PartyModeChallenge : CPartyMode
|
||||
{
|
||||
private const int MaxPlayer = 10;
|
||||
@@ -13,6 +43,16 @@ namespace Vocaluxe.PartyModes
|
||||
private const int MaxTeams = 0;
|
||||
private const int MinTeams = 0;
|
||||
|
||||
enum EStage
|
||||
{
|
||||
NotStarted,
|
||||
Config,
|
||||
Names,
|
||||
Main,
|
||||
Singing
|
||||
}
|
||||
|
||||
private EStage _Stage;
|
||||
|
||||
public PartyModeChallenge()
|
||||
{
|
||||
@@ -23,15 +63,102 @@ namespace Vocaluxe.PartyModes
|
||||
|
||||
_ScreenSongOptions.Sorting.SearchString = String.Empty;
|
||||
_ScreenSongOptions.Sorting.SearchStringVisible = false;
|
||||
|
||||
_Stage = EStage.NotStarted;
|
||||
}
|
||||
|
||||
public override CMenuParty GetNextPartyScreen()
|
||||
public override bool Init()
|
||||
{
|
||||
_Stage = EStage.NotStarted;
|
||||
return true;
|
||||
}
|
||||
|
||||
public override void DataFromScreen(string ScreenName, Object Data)
|
||||
{
|
||||
DataFromScreen data = new DataFromScreen();
|
||||
switch (ScreenName)
|
||||
{
|
||||
case "PartyScreenChallengeConfig":
|
||||
|
||||
try
|
||||
{
|
||||
data = (DataFromScreen)Data;
|
||||
_Stage = EStage.Config;
|
||||
_Base.Graphics.FadeTo(EScreens.ScreenPartyDummy);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
_Base.Log.LogError("Error in party mode challenge. Can't cast received data from screen " + ScreenName + ". " + e.Message);
|
||||
}
|
||||
break;
|
||||
|
||||
case "PartyScreenChallengeNames":
|
||||
try
|
||||
{
|
||||
data = (DataFromScreen)Data;
|
||||
if (data.ScreenNames.FadeToConfig)
|
||||
_Stage = EStage.NotStarted;
|
||||
else
|
||||
_Stage = EStage.Names;
|
||||
|
||||
_Base.Graphics.FadeTo(EScreens.ScreenPartyDummy);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
_Base.Log.LogError("Error in party mode challenge. Can't cast received data from screen " + ScreenName + ". " + e.Message);
|
||||
}
|
||||
break;
|
||||
|
||||
case "PartyScreenChallengeMain":
|
||||
_Stage = EStage.Singing;
|
||||
_Base.Graphics.FadeTo(EScreens.ScreenPartyDummy);
|
||||
break;
|
||||
|
||||
default:
|
||||
_Base.Log.LogError("Error in party mode challenge. Wrong screen is sending: " + ScreenName);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
public override CMenuParty GetNextPartyScreen(out EScreens AlternativeScreen)
|
||||
{
|
||||
CMenuParty Screen = null;
|
||||
_Screens.TryGetValue("PartyScreenChallengeConfig", out Screen);
|
||||
AlternativeScreen = EScreens.ScreenSong;
|
||||
|
||||
switch (_Stage)
|
||||
{
|
||||
case EStage.NotStarted:
|
||||
_Screens.TryGetValue("PartyScreenChallengeConfig", out Screen);
|
||||
break;
|
||||
case EStage.Config:
|
||||
_Screens.TryGetValue("PartyScreenChallengeNames", out Screen);
|
||||
break;
|
||||
case EStage.Names:
|
||||
_Screens.TryGetValue("PartyScreenChallengeMain", out Screen);
|
||||
break;
|
||||
case EStage.Main:
|
||||
AlternativeScreen = EScreens.ScreenSong;
|
||||
break;
|
||||
case EStage.Singing:
|
||||
_Screens.TryGetValue("PartyScreenChallengeMain", out Screen);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
return Screen;
|
||||
}
|
||||
|
||||
public override EScreens GetStartScreen()
|
||||
{
|
||||
return EScreens.ScreenPartyDummy;
|
||||
}
|
||||
|
||||
public override EScreens GetMainScreen()
|
||||
{
|
||||
return EScreens.ScreenPartyDummy;
|
||||
}
|
||||
|
||||
public override ScreenSongOptions GetScreenSongOptions()
|
||||
{
|
||||
_ScreenSongOptions.Sorting.SongSorting = _Base.Config.GetSongSorting();
|
||||
|
||||
@@ -15,6 +15,8 @@ namespace Vocaluxe.PartyModes
|
||||
const string ButtonNext = "ButtonNext";
|
||||
const string ButtonBack = "ButtonBack";
|
||||
|
||||
DataFromScreen Data;
|
||||
|
||||
public PartyScreenChallengeConfig()
|
||||
{
|
||||
}
|
||||
@@ -26,6 +28,13 @@ namespace Vocaluxe.PartyModes
|
||||
_ThemeName = "PartyScreenChallengeConfig";
|
||||
_ThemeButtons = new string[] { ButtonNext, ButtonBack };
|
||||
_ScreenVersion = ScreenVersion;
|
||||
|
||||
Data = new DataFromScreen();
|
||||
FromScreenConfig config = new FromScreenConfig();
|
||||
config.NumPlayers = 0;
|
||||
config.NumPlayersAtOnce = 0;
|
||||
config.NumRounds = 0;
|
||||
Data.ScreenConfig = config;
|
||||
}
|
||||
|
||||
public override void LoadTheme(string XmlPath)
|
||||
@@ -39,7 +48,7 @@ namespace Vocaluxe.PartyModes
|
||||
|
||||
if (KeyEvent.KeyPressed)
|
||||
{
|
||||
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -47,7 +56,15 @@ namespace Vocaluxe.PartyModes
|
||||
{
|
||||
case Keys.Back:
|
||||
case Keys.Escape:
|
||||
FadeTo(EScreens.ScreenParty);
|
||||
Back();
|
||||
break;
|
||||
|
||||
case Keys.Enter:
|
||||
if (Buttons[htButtons(ButtonBack)].Selected)
|
||||
Back();
|
||||
|
||||
if (Buttons[htButtons(ButtonNext)].Selected)
|
||||
Next();
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -60,12 +77,16 @@ namespace Vocaluxe.PartyModes
|
||||
|
||||
if (MouseEvent.LB && IsMouseOver(MouseEvent))
|
||||
{
|
||||
if (Buttons[htButtons(ButtonBack)].Selected)
|
||||
Back();
|
||||
|
||||
if (Buttons[htButtons(ButtonNext)].Selected)
|
||||
Next();
|
||||
}
|
||||
|
||||
if (MouseEvent.RB)
|
||||
{
|
||||
FadeTo(EScreens.ScreenParty);
|
||||
Back();
|
||||
}
|
||||
|
||||
return true;
|
||||
@@ -91,5 +112,19 @@ namespace Vocaluxe.PartyModes
|
||||
{
|
||||
base.OnClose();
|
||||
}
|
||||
|
||||
private void Back()
|
||||
{
|
||||
FadeTo(EScreens.ScreenParty);
|
||||
}
|
||||
|
||||
private void Next()
|
||||
{
|
||||
Data.ScreenConfig.NumPlayers = 4;
|
||||
Data.ScreenConfig.NumPlayersAtOnce = 2;
|
||||
Data.ScreenConfig.NumRounds = 8;
|
||||
|
||||
_PartyMode.DataFromScreen(_ThemeName, Data);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -12,6 +12,11 @@ namespace Vocaluxe.PartyModes
|
||||
// Version number for theme files. Increment it, if you've changed something on the theme files!
|
||||
const int ScreenVersion = 1;
|
||||
|
||||
const string ButtonNext = "ButtonNext";
|
||||
const string ButtonBack = "ButtonBack";
|
||||
|
||||
private DataFromScreen Data;
|
||||
|
||||
public PartyScreenChallengeNames()
|
||||
{
|
||||
}
|
||||
@@ -21,7 +26,15 @@ namespace Vocaluxe.PartyModes
|
||||
base.Init();
|
||||
|
||||
_ThemeName = "PartyScreenChallengeNames";
|
||||
_ThemeButtons = new string[] { ButtonNext, ButtonBack };
|
||||
_ScreenVersion = ScreenVersion;
|
||||
|
||||
Data = new DataFromScreen();
|
||||
FromScreenNames names = new FromScreenNames();
|
||||
names.FadeToConfig = false;
|
||||
names.FadeToMain = false;
|
||||
names.ProfileIDs = new List<int>();
|
||||
Data.ScreenNames = names;
|
||||
}
|
||||
|
||||
public override void LoadTheme(string XmlPath)
|
||||
@@ -43,7 +56,16 @@ namespace Vocaluxe.PartyModes
|
||||
{
|
||||
case Keys.Back:
|
||||
case Keys.Escape:
|
||||
FadeTo(EScreens.ScreenParty);
|
||||
Back();
|
||||
break;
|
||||
|
||||
case Keys.Enter:
|
||||
if (Buttons[htButtons(ButtonBack)].Selected)
|
||||
Back();
|
||||
|
||||
if (Buttons[htButtons(ButtonNext)].Selected)
|
||||
Next();
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -56,7 +78,11 @@ namespace Vocaluxe.PartyModes
|
||||
|
||||
if (MouseEvent.LB && IsMouseOver(MouseEvent))
|
||||
{
|
||||
if (Buttons[htButtons(ButtonBack)].Selected)
|
||||
Back();
|
||||
|
||||
if (Buttons[htButtons(ButtonNext)].Selected)
|
||||
Next();
|
||||
}
|
||||
|
||||
if (MouseEvent.RB)
|
||||
@@ -87,5 +113,19 @@ namespace Vocaluxe.PartyModes
|
||||
{
|
||||
base.OnClose();
|
||||
}
|
||||
|
||||
private void Back()
|
||||
{
|
||||
Data.ScreenNames.FadeToConfig = true;
|
||||
Data.ScreenNames.FadeToMain = false;
|
||||
_PartyMode.DataFromScreen(_ThemeName, Data);
|
||||
}
|
||||
|
||||
private void Next()
|
||||
{
|
||||
Data.ScreenNames.FadeToConfig = false;
|
||||
Data.ScreenNames.FadeToMain = true;
|
||||
_PartyMode.DataFromScreen(_ThemeName, Data);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -453,7 +453,16 @@ namespace Vocaluxe.Base
|
||||
public static void FadeTo(EScreens Screen)
|
||||
{
|
||||
if (Screen == EScreens.ScreenPartyDummy)
|
||||
_Screens[(int)EScreens.ScreenPartyDummy] = CParty.GetNextPartyScreen();
|
||||
{
|
||||
EScreens alt;
|
||||
CMenu scr = CParty.GetNextPartyScreen(out alt);
|
||||
if (scr == null)
|
||||
{
|
||||
_NextScreen = alt;
|
||||
return;
|
||||
}
|
||||
_Screens[(int)EScreens.ScreenPartyDummy] = scr;
|
||||
}
|
||||
|
||||
_NextScreen = Screen;
|
||||
}
|
||||
|
||||
+5
-10
@@ -131,18 +131,13 @@ namespace Vocaluxe.Base
|
||||
{
|
||||
if (!_PartyModes.TryGetValue(PartyModeID, out _CurrentPartyMode))
|
||||
CLog.LogError("CParty: Can't find party mode ID: " + PartyModeID.ToString());
|
||||
|
||||
_CurrentPartyMode.PartyMode.Init();
|
||||
}
|
||||
|
||||
public static CMenu GetNextPartyScreen()
|
||||
public static CMenu GetNextPartyScreen(out EScreens AlternativeScreen)
|
||||
{
|
||||
CMenu NextScreen = _CurrentPartyMode.PartyMode.GetNextPartyScreen();
|
||||
if (NextScreen != null)
|
||||
return NextScreen;
|
||||
|
||||
NextScreen = new CScreenPartyDummy();
|
||||
NextScreen.Initialize(CMain.Base);
|
||||
NextScreen.LoadTheme(String.Empty);
|
||||
return NextScreen;
|
||||
return _CurrentPartyMode.PartyMode.GetNextPartyScreen(out AlternativeScreen);
|
||||
}
|
||||
#endregion public stuff
|
||||
|
||||
@@ -290,7 +285,7 @@ namespace Vocaluxe.Base
|
||||
|
||||
if (Screen != null)
|
||||
{
|
||||
Screen.AssignPartyMode(pm.PartyMode);
|
||||
Screen.AssingPartyMode(pm.PartyMode);
|
||||
pm.PartyMode.AddScreen(Screen, screenfile);
|
||||
}
|
||||
else
|
||||
|
||||
@@ -25,11 +25,15 @@ namespace Vocaluxe.Menu
|
||||
return _PartyModeID;
|
||||
}
|
||||
|
||||
public void AssignPartyMode(IPartyMode PartyMode)
|
||||
public void AssingPartyMode(IPartyMode PartyMode)
|
||||
{
|
||||
_PartyMode = PartyMode;
|
||||
}
|
||||
|
||||
public virtual void DataToScreen(Object Data)
|
||||
{
|
||||
}
|
||||
|
||||
/*
|
||||
public sealed override void LoadTheme()
|
||||
{
|
||||
|
||||
@@ -49,7 +49,8 @@ namespace Vocaluxe.Menu
|
||||
void SetPartyModeID(int PartyModeID);
|
||||
int GetPartyModeID();
|
||||
|
||||
void AssignPartyMode(IPartyMode PartyMode);
|
||||
void AssingPartyMode(IPartyMode PartyMode);
|
||||
void DataToScreen(Object Data);
|
||||
}
|
||||
|
||||
public interface IConfig
|
||||
|
||||
@@ -12,7 +12,6 @@ namespace Vocaluxe.PartyModes
|
||||
protected ScreenSongOptions _ScreenSongOptions;
|
||||
protected Dictionary<string, CMenuParty> _Screens;
|
||||
protected string _Folder;
|
||||
protected Delegate _Callback;
|
||||
|
||||
public CPartyMode()
|
||||
{
|
||||
@@ -24,7 +23,7 @@ namespace Vocaluxe.PartyModes
|
||||
}
|
||||
|
||||
#region Implementation
|
||||
public virtual bool Init(string Folder)
|
||||
public virtual bool Init()
|
||||
{
|
||||
return false;
|
||||
}
|
||||
@@ -39,13 +38,13 @@ namespace Vocaluxe.PartyModes
|
||||
_Screens.Add(ScreenName, Screen);
|
||||
}
|
||||
|
||||
public void SetPartyModeCallback(Delegate Callback)
|
||||
public virtual void DataFromScreen(string ScreenName, Object Data)
|
||||
{
|
||||
_Callback = Callback;
|
||||
}
|
||||
|
||||
public virtual CMenuParty GetNextPartyScreen()
|
||||
public virtual CMenuParty GetNextPartyScreen(out EScreens AlternativeScreen)
|
||||
{
|
||||
AlternativeScreen = EScreens.ScreenMain;
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
@@ -51,12 +51,12 @@ namespace Vocaluxe.PartyModes
|
||||
|
||||
public interface IPartyMode
|
||||
{
|
||||
bool Init(string Folder);
|
||||
bool Init();
|
||||
void Initialize(Basic Base);
|
||||
void AddScreen(CMenuParty Screen, string ScreenName);
|
||||
void SetPartyModeCallback(Delegate Callback);
|
||||
void DataFromScreen(string ScreenName, Object Data);
|
||||
|
||||
CMenuParty GetNextPartyScreen();
|
||||
CMenuParty GetNextPartyScreen(out EScreens AlternativeScreen);
|
||||
EScreens GetStartScreen();
|
||||
EScreens GetMainScreen();
|
||||
ScreenSongOptions GetScreenSongOptions();
|
||||
|
||||
Reference in new issue
Block a user