コード例 #1
0
        protected override void UpdateScreen(GameTime gameTime)
        {
            seconds += (float)gameTime.ElapsedGameTime.TotalSeconds;

            if (curLevel != null)
            {
                if (!curLevel.IsLevelLoaded())
                {
                    curLevel.LoadContent();
                }

                collisionManager.Update(gameTime);
                objectManager.Update(gameTime);
                curLevel.Update(gameTime);

                if (curLevel.LevelDone())
                {
                    curLevel.UnLoadContent();
                    curLevel = levelManager.NextLevel();
                }

                else if (curLevel.GameOver())
                {
                    curLevel.UnLoadContent();
                    ExitScreen();
                    ScreenSystem.RemoveScreen(this);
                }
            }
            else
            {
                ExitScreen();
                ScreenSystem.AddScreen(new MainMenuScreen());
                ScreenSystem.RemoveScreen(this);
            }
        }
コード例 #2
0
 void MainMenuSelect(object sender, EventArgs e)
 {
     MenuCancel();
     ExitScreen();
     ScreenSystem.AddScreen(new MainMenuScreen());
     ScreenSystem.RemoveScreen(this);
 }
コード例 #3
0
 public override void HandleInput()
 {
     if (input.NewActionPress("Pause"))
     {
         FreezeScreen();
         ScreenSystem.AddScreen(new PauseScreen(this));
     }
 }
コード例 #4
0
 void session_HealthDecreased(object sender, EventArgs e)
 {
     if (session.health < 0)
     {
         ExitScreen();
         ScreenSystem.AddScreen(new GameOverScreen(levelselect));
     }
 }
コード例 #5
0
 /// <summary>
 /// Allows the game to perform any initialization it needs to before starting to run.
 /// This is where it can query for any required services and load any non-graphic
 /// related content.  Calling base.Initialize will enumerate through any components
 /// and initialize them as well.
 /// </summary>
 protected override void Initialize()
 {
     // TODO: Add your initialization logic here
     screenSystem.AddScreen(new VideoIntroScreen());
     clearColor           = new Color(70, 132, 143);
     Settings.MusicVolume = 1.0f;
     Settings.SoundVolume = 1.0f;
     base.Initialize();
 }
コード例 #6
0
        protected override void Initialize()
        {
            Settings.MusicVolume = 1.0f;
            Settings.MusicVolume = 1.0f;

            // TODO: Add your initialization logic here
            //screenSystem.AddScreen(new IntroScreen(Color.Black, 0.5f));
            screenSystem.AddScreen(new MainMenuScreen());
            base.Initialize();
        }
コード例 #7
0
 void session_MapFinished(object sender, EventArgs e)
 {
     if (session.health >= 0)
     {
         ExitScreen();
         levelselect.ActivateScreen();
     }
     else
     {
         ExitScreen();
         ScreenSystem.AddScreen(new GameOverScreen(levelselect));
     }
 }
コード例 #8
0
        protected override void UpdateScreen(GameTime gameTime)
        {
            if (session.IsPaused)
            {
                FreezeScreen();
                ScreenSystem.AddScreen(new PauseScreen(this, session));
            }

            if (InputMap.NewActionPress("Pause"))
            {
                session.Pause();
            }

            session.Update(gameTime);
        }
コード例 #9
0
        protected override void UpdateScreen(GameTime gameTime)
        {
            if (InputMap.NewActionPress("Select Left"))
            {
                if (previousMap != null)
                {
                    nextMap     = selectedMap;
                    selectedMap = previousMap;

                    index--;

                    previousMap = (index - 1) >= 0 ? ml.Maps[index - 1] : null;
                }
            }
            else if (InputMap.NewActionPress("Select Right"))
            {
                if (nextMap != null)
                {
                    previousMap = selectedMap;
                    selectedMap = nextMap;

                    index++;

                    nextMap = (index + 1) < ml.Maps.Count ? ml.Maps[index + 1] : null;
                }
            }
            else if (InputMap.NewActionPress("Select Map"))
            {
                if (selectedMap != null)
                {
                    FreezeScreen();
                    selectedMap.Reset();
                    ScreenSystem.AddScreen(new PlayScreen(this, selectedMap));
                }
            }
            else if (InputMap.NewActionPress("Back"))
            {
                ExitScreen();
                ScreenSystem.AddScreen(new MainMenuScreen());
            }
        }
コード例 #10
0
 void PlaySelect(object sender, EventArgs e)
 {
     Parent.ExitScreen();
     ScreenSystem.AddScreen(new PlayScreen());
     ScreenSystem.RemoveScreen(this);
 }
コード例 #11
0
 void IntroSelect(object sender, EventArgs e)
 {
     Parent.ExitScreen();
     ScreenSystem.AddScreen(new IntroScreen(Color.Black, 0.5f));
     ScreenSystem.RemoveScreen(this);
 }
コード例 #12
0
 void lavaLevel_Selected(object sender, EventArgs e)
 {
     ExitScreen();
     ScreenSystem.AddScreen(new PlayScreen(3));
     ScreenSystem.RemoveScreen(this);
 }
コード例 #13
0
 void underwater_Selected(object sender, EventArgs e)
 {
     ExitScreen();
     ScreenSystem.AddScreen(new PlayScreen(2));
     ScreenSystem.RemoveScreen(this);
 }
コード例 #14
0
 void back_Selected(object sender, EventArgs e)
 {
     MenuCancel();
     ExitScreen();
     ScreenSystem.AddScreen(new MainMenuScreen());
 }
コード例 #15
0
 void VideoIntroScreen_Removing(object sender, EventArgs e)
 {
     ScreenSystem.AddScreen(new MainMenuScreen());
 }
コード例 #16
0
 void RemovingScreen(object sender, EventArgs e)
 {
     //Loads the MainMenuScreen when Intro is over
     ScreenSystem.AddScreen(new MainMenuScreen());
     ScreenSystem.RemoveScreen(this);
 }
コード例 #17
0
 void HelpSelect(object sender, EventArgs e)
 {
     FreezeScreen();
     ScreenSystem.AddScreen(new HelpScreen(this));
 }
コード例 #18
0
 void OptionsSelect(object sender, EventArgs e)
 {
     FreezeScreen();
     ScreenSystem.AddScreen(new OptionsScreen(this));
 }
コード例 #19
0
 void PlaySelect(object sender, EventArgs e)
 {
     ExitScreen();
     //ScreenSystem.AddScreen(new PlayScreen());
     ScreenSystem.AddScreen(new LevelSelectionScreen());
 }
コード例 #20
0
 void MainMenuSelect(object sender, EventArgs e)
 {
     MenuCancel();
     Parent.ExitScreen();
     ScreenSystem.AddScreen(new MainMenuScreen());
 }