Ejemplo n.º 1
0
    public void save(ScoreSaveObject newScore)
    {
        try
        {
            if (File.Exists(scoreXml))
            {
                List <ScoreSaveObject> savedScores = load();
                ScoreSaveObject        oldScore    = savedScores.Find(x => x.nom == newScore.nom);
                if (oldScore != null)
                {
                    //Update score
                    if (newScore.score > oldScore.score)
                    {
                        oldScore.score = newScore.score;
                    }
                }
                else
                {
                    savedScores.Add(newScore);
                }


                savedScores.Sort(sortByScores);

                XmlSerializer xSeriz = new XmlSerializer(typeof(List <ScoreSaveObject>));
                FileStream    fs     = File.Create(scoreXml);
                xSeriz.Serialize(fs, savedScores);
                fs.Close();
            }
            else
            {
                List <ScoreSaveObject> scores = new List <ScoreSaveObject>();
                scores.Add(newScore);
                XmlSerializer xSeriz = new XmlSerializer(typeof(List <ScoreSaveObject>));
                FileStream    fs     = File.Create(scoreXml);
                xSeriz.Serialize(fs, scores);
                fs.Close();
            }
        }
        catch (Exception ex)
        {
            throw ex;
        }
    }
Ejemplo n.º 2
0
 private int sortByScores(ScoreSaveObject score1, ScoreSaveObject score2)
 {
     return(score1.score.CompareTo(score2.score) * -1);
 }