Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using SadConsole;
- using Console = SadConsole.Console;
- namespace LoveLace.Screens
- {
- public static class ScreenManager
- {
- static Screen LoadScreen, MenuScreen, PlayScreen, InvtScreen;
- public static class Initialize
- {
- public static void Screens()
- {
- MenuScreen = new Screen();
- LoadScreen = new Screen();
- PlayScreen = new Screen();
- InvtScreen = new Screen();
- foreach (Console c in GameStates.Load.Splash.YieldStateConsoles())
- {
- LoadScreen.Children.Add(c);
- }
- foreach (Console c in GameStates.Menu.Start.YieldStateConsoles())
- {
- MenuScreen.Children.Add(c);
- }
- foreach (Console c in GameStates.Play.Root.YieldStateConsoles())
- {
- PlayScreen.Children.Add(c);
- }
- foreach (Console c in GameStates.Invt.Loader.YieldStateConsoles())
- {
- InvtScreen.Children.Add(c);
- }
- }
- }
- static void SelectMenu()
- {
- OpenScreen(MenuScreen);
- SadConsole.Global.CurrentScreen = MenuScreen;
- GameStates.Menu.Start.Focus();
- }
- static void SelectLoad()
- {
- OpenScreen(LoadScreen);
- SadConsole.Global.CurrentScreen = LoadScreen;
- GameStates.Load.Splash.Focus();
- }
- static void SelectPlay()
- {
- OpenScreen(PlayScreen);
- SadConsole.Global.CurrentScreen = PlayScreen;
- GameStates.Play.Root.Focus();
- }
- static void SelectInvt()
- {
- OpenScreen(InvtScreen);
- SadConsole.Global.CurrentScreen = InvtScreen;
- GameStates.Invt.Loader.Focus();
- }
- static void CloseScreen(IScreen screen)
- {
- foreach (IScreen s in screen.Children)
- {
- s.IsPaused = true;
- s.IsVisible = false;
- }
- }
- static void OpenScreen(Screen screen)
- {
- foreach (IScreen s in screen.Children)
- {
- s.IsPaused = false;
- s.IsVisible = true;
- }
- }
- public static void SelectScreen(int i)
- {
- CloseScreen(SadConsole.Global.CurrentScreen);
- switch (i)
- {
- case 0:
- SelectLoad();
- break;
- case 1:
- SelectMenu();
- break;
- case 2:
- SelectPlay();
- break;
- case 3:
- SelectInvt();
- break;
- default:
- break;
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement