// Display final score after game end private void Tick_GameEnd(object source, EventArgs e) { // Stop the one time timer if (!timerGameEnd.IsEnabled) { return; } timerGameEnd.Stop(); // Update the score ScoreRepository scoreRepository = new ScoreRepository(); scoreRepository.AddScore(currentScore, playerID, gameMode); // Delete previous saved game GameRepository gameRepository = new GameRepository(); if (gameRepository.GetGame(playerID).Count > 0) { gameRepository.DeleteGame(playerID); } // Display the score countdown.Text = "FINAL SCORE:\n" + currentScore; countdown.FontSize = 200; countdown.Width = screenWidth; Canvas.SetLeft(countdown, 0); Canvas.SetTop(countdown, screenHeight / 2 - countdown.ActualHeight / 2); // Auto back after 5 seconds timerGameBack.Tick += new EventHandler(Tick_GameBack); timerGameBack.Interval = TimeSpan.FromMilliseconds(3000); timerGameBack.Start(); }
public HighScore(KinectSensorChooser kinectSensorChooser, int gameMode) { InitializeComponent(); // Set screen to center WindowStartupLocation = WindowStartupLocation.CenterScreen; // Set values this.kinectSensorChooser = kinectSensorChooser; this.gameMode = gameMode; // Data binding var kinectRegionandSensorBinding = new Binding("Kinect") { Source = kinectSensorChooser }; BindingOperations.SetBinding(kinectKinectRegion, KinectRegion.KinectSensorProperty, kinectRegionandSensorBinding); // Set title if (gameMode == 0) { Title = "Survival Mode Highscore"; } else if (gameMode == 1) { Title = "Time Attack Mode Highscore"; } // Set highscore text var textHeader = new Label { Content = "Name\t\t\t\t\t\t\t\t\t" + "Score", FontWeight = FontWeights.Bold, FontSize = 26 }; scrollContent.Children.Add(textHeader); ScoreRepository sro = new ScoreRepository(); PlayersRepository pro = new PlayersRepository(); var highscore = sro.GetAllScore(gameMode); for (int i = highscore.Count - 1; i >= 0; i--) { List <PlayersRepository.PlayerDto> user = pro.GetPlayerWithId(highscore[i].PlayerScore); string name = ""; if (user.Count == 1) { name = user[0].Username; } var textBody = new Label { FontSize = 26, Content = " " + name + "\t\t\t\t\t\t\t\t\t" + highscore[i].Value }; scrollContent.Children.Add(textBody); } #region KinectRegion // Setup Kinect region press target and event handlers KinectRegion.SetIsPressTarget(back, true); KinectRegion.AddHandPointerEnterHandler(back, HandPointerEnterEvent); KinectRegion.AddHandPointerLeaveHandler(back, HandPointerLeaveEvent); KinectRegion.AddHandPointerPressHandler(back, HandPointerPressEvent); KinectRegion.AddHandPointerPressReleaseHandler(back, HandPointerPressReleaseEvent); KinectRegion.AddHandPointerGotCaptureHandler(back, HandPointerCaptureEvent); KinectRegion.AddHandPointerLostCaptureHandler(back, HandPointerLostCaptureEvent); #endregion }