Example #1
0
        private void CheckGameStatus()
        {
            if (gameCtrl.gameResult != GameResult.Running || gameCtrl.gameLevelTimer > 65) // IF WON/LOST
            {
                gameCtrl.score += gameCtrl.player.bombs * 250;
                gameCtrl.score += gameCtrl.player.lives * 300;
                switch (gameCtrl.difficulty)
                {
                case Difficulty.Easy:
                    break;

                case Difficulty.Medium:
                    gameCtrl.score = Convert.ToInt32(gameCtrl.score * 1.2);
                    break;

                case Difficulty.Hard:
                    gameCtrl.score = Convert.ToInt32(gameCtrl.score * 1.5);
                    break;
                }
                if (gameCtrl.gameResult == GameResult.Won)
                {
                    gameCtrl.score += 1000;
                }
                gameMusic.Stop();
                AddScoreWindow addScoreWindow = new AddScoreWindow(gameCtrl); // Need to pass score
                addScoreWindow.Show();
                this.Close();                                                 // Closing GameWindow
            }
            else if (gameCtrl.gameLevelTimer > 30)
            {
                //pbar_gamestatus.Value = gameCtrl.gameLevelTimer; == boss health 0/30
                gameCtrl.level = Level.Boss;
            }
            else if (gameCtrl.gameLevelTimer > 15)
            {
                pbar_gamestatus.Value = gameCtrl.gameLevelTimer - 15;
                gameCtrl.level        = Level.Level_2;
            }
            else
            {
                pbar_gamestatus.Value = gameCtrl.gameLevelTimer;
            }
        }
Example #2
0
        // Updates the GameControllers Status based on timer
        // And ends game on Win or Lose
        private void CheckGameStatus()
        {
            if (gameCtrl.gameResult != GameResult.Running)
            {
                gameCtrl.score += gameCtrl.player.Bombs * 250;
                gameCtrl.score += gameCtrl.player.Lives * 300;
                switch (gameCtrl.difficulty)
                {
                case Difficulty.Easy:
                    break;

                case Difficulty.Medium:
                    gameCtrl.score = Convert.ToInt32(gameCtrl.score * 1.2);
                    break;

                case Difficulty.Hard:
                    gameCtrl.score = Convert.ToInt32(gameCtrl.score * 1.5);
                    break;
                }
                if (gameCtrl.gameResult == GameResult.Won)
                {
                    gameCtrl.score += 1000;
                }
                gameMusic.Stop();
                AddScoreWindow addScoreWindow = new AddScoreWindow(gameCtrl);
                addScoreWindow.Show();
                this.Close();
            }
            else if (gameCtrl.gameLevelTimer > 40)
            {
                gameCtrl.level = Level.Boss;
            }
            else if (gameCtrl.gameLevelTimer > 20 && gameCtrl.gameLevelTimer < 35)
            {
                gameCtrl.level = Level.Level_2;
            }
            else if (gameCtrl.gameLevelTimer >= 15 && gameCtrl.gameLevelTimer <= 20 ||
                     gameCtrl.gameLevelTimer >= 35 && gameCtrl.gameLevelTimer <= 40)
            {
                gameCtrl.level = Level.Transition;
            }


            if (BossIsSpawned)
            {
                foreach (Entity ent in gameCtrl.current_Enemies)
                {
                    if (ent is Boss)
                    {
                        pbar_gamestatus.Value = ((ent.health * 15) / 30) + 0.1;
                    }
                }
            }
            else if (gameCtrl.level == Level.Level_1)
            {
                pbar_gamestatus.Value = gameCtrl.gameLevelTimer;
            }
            else if (gameCtrl.level == Level.Level_2)
            {
                pbar_gamestatus.Value = gameCtrl.gameLevelTimer - 20;
            }

            else if (gameCtrl.level == Level.Transition)
            {
            }
        }