コード例 #1
0
ファイル: Score.cs プロジェクト: thegameg/ForeignJump
 public static List<Resultat> Add(Resultat resultat)
 {
     if (resultats.Count == 0)
     {
         resultats.Add(resultat);
     }
     else
     {
         int i = 0;
         while (i < resultats.Count && resultats[i].Amount > resultat.Amount)
         {
             i++;
         }
         resultats.Insert(i, resultat);
     }
     return resultats;
 }
コード例 #2
0
ファイル: GameOver.cs プロジェクト: thegameg/ForeignJump
        //fonction appliquée avant de rentrer dans le GameOver State
        public static void Die()
        {
            List<Resultat> resultats = new List<Resultat>(); //création d'une nouvelle liste de résultats
            Resultat NewResultat = new Resultat(Statistiques.Name, Statistiques.Score, Perso.Choisi); //stockage du résultat actuel

            if (File.Exists("score.txt"))
            {
                //Lecture du fichier texte
                StreamReader reader;
                reader = new StreamReader("score.txt");

                //Transfert du fichier dans une liste
                for (int i = 0; i < 5; i++)
                {
                    string str = reader.ReadLine();
                    if (str != null)
                    {
                        string[] tableau = str.Split(','); //séparation des virgules
                        resultats.Add(new Resultat(tableau[0], Convert.ToInt32(tableau[1]), tableau[2])); //création d'un nouveau resultat et ajout dans la liste
                    }
                    else
                    {
                        resultats.Add(null);
                    }
                }
                reader.Close();

            }

            int n = 0;
            while (n < resultats.Count && resultats[n] != null && resultats[n].Amount > NewResultat.Amount)
            {
                n++; //avance jusqu'à trouver la place
            }
            resultats.Insert(n, NewResultat); //insere le nouveau resultat à la bonne place

            if (resultats.Count >= 6)
                resultats.RemoveAt(5); //efface le dernier résultat

            StreamWriter writer;

            writer = new StreamWriter("score.txt");

            string newStr = "";

            //Ecriture des resultats dans un fichier
            for (int i = 0; i < 5; i++)
            {
                if (i < resultats.Count && resultats[i] != null)
                    newStr += resultats[i].Name + "," + Convert.ToInt32(resultats[i].Amount) + "," + resultats[i].Perso + Environment.NewLine;
            }

            writer.Write(newStr);
            writer.Close();

            //tableau pour afficher les valeurs sur la page
            top = new string[5];

            for (int i = 0; i < 5; i++)
            {
                if (i < resultats.Count && resultats[i] != null)
                    top[i] = resultats[i].Name + " : " + resultats[i].Amount; //si il y a valeur, on affiche Nom : Valeur
                else
                    top[i] = "NONE";
            }

            GameState.State = "GameOver";
        }