示例#1
0
 public void AddScreen(GameScreen screen)
 {
     if (OnScreenChangeStart != null)
         OnScreenChangeStart(this, new ScreenChangeEventArgs(CurrentScreen, screen));
 }
示例#2
0
 void ScreenChange(object sender, ScreenChangeEventArgs scrChangeEvtArgs)
 {
     NewScreen = scrChangeEvtArgs.newScreen;
     ScreenStack.Push(NewScreen);
     if (scrChangeEvtArgs.currentScreen != null)
     {
         if (scrChangeEvtArgs.currentScreen is MainScreen)
         {
             (scrChangeEvtArgs.currentScreen as MainScreen).SceneMngr.GetCurrentScene().sound.Stop();
                 }
         scrChangeEvtArgs.currentScreen.UnloadContent();
     }
     CurrentScreen = NewScreen;
     CurrentScreen.LoadContent(Content);
 }
示例#3
0
 public ScreenManager()
 {
     OnScreenChangeStart += ScreenChange;
     CurrentScreen = new MenuScreen();
 }
 public ScreenChangeEventArgs(GameScreen currentScr, GameScreen newScr)
 {
     currentScreen = currentScr;
     newScreen = newScr;
 }