예제 #1
0
        public override void Update(GameTime gameTime)
        {
            base.Update(gameTime);
            if (!_isRoundOver)
            {
                gameTimer      += gameTime.ElapsedGameTime.Milliseconds;
                _timerFont.text = "Time: " + gameTimer / 1000;
            }
            UpdatePlayers(gameTime);
            HandleBulletCollision(gameTime);
            HandlePowerups(gameTime);
            PooledObjects.tileFragmentClusters.ForEach(fc => fc.Update(gameTime));
            PooledObjects.explosions.ForEach(e => e.Update(gameTime));
            if (_playersRemaining.Count <= 1 && !_isRoundOver)
            {
                _isRoundOver = true;
                if (GameRules.selectedGameType == GameRules.GameType.WinRoundsToWin)
                {
                    GameRules.playerScores[_playersRemaining[0].PlayerIndex]++;
                }
                screenManager.AddScreen(_resultsScreen);
                _resultsScreen.Show();
            }

            if (_isRoundOver && !_resultsScreen.isVisible)
            {
                StartNextRound();
            }
        }
예제 #2
0
 public void ShowResultsScreen(List <AudienceAgent> audienceAgents)
 {
     ResultsScreen.Show(audienceAgents);
 }
예제 #3
0
        private void buttonResults_Click(object sender, EventArgs e)
        {
            ResultsScreen resultsScreen = new ResultsScreen();

            resultsScreen.Show();
        }