예제 #1
0
        public static List <TimedScore> getScores()
        {
            try {
                List <TimedScore> scores = new List <TimedScore>();
                TimedScore        timedScores;

                string _conn       = MainWindow.connStr;
                string sqlGetTimed = "SELECT playername, score FROM highscores WHERE mode = \"timed\" ORDER BY score DESC LIMIT 10";
                int    _rank       = 1;

                using (MySqlConnection connection = new MySqlConnection(_conn)) {
                    connection.Open();

                    using (MySqlCommand cmdTimed = new MySqlCommand(sqlGetTimed, connection))
                        using (MySqlDataReader reader = cmdTimed.ExecuteReader()) {
                            while (reader.Read())
                            {
                                timedScores       = new TimedScore();
                                timedScores.Rank  = _rank;
                                timedScores.Name  = reader.GetString(0);
                                timedScores.Score = reader.GetString(1);
                                scores.Add(timedScores);
                                _rank++;
                            }
                            reader.Close();
                        }

                    return(scores);
                }
            } catch (Exception ex) {
                throw new Exception(ex.Message);
            }
        }
예제 #2
0
        private void HighscoresButton_Click(object sender, RoutedEventArgs e)
        {
            try {
                MenuButtons.Visibility      = Visibility.Hidden;
                highscoresCanvas.Visibility = Visibility.Visible;

                topSoloScores.ItemsSource  = SoloScore.getScores();
                topTimedScores.ItemsSource = TimedScore.getScores();
            }   catch (Exception ex) {
                MessageBox.Show(ex.Message, "Highscores buttons");
            }
        }