static bestenliste[] Sortieren(bestenliste[] liste) { bool PaarSortiert; //solange nicht alle paare bei jedem Durchlauf //sortiert sind, Alg. wiederholen. //->BubbleSort verfahren do { PaarSortiert = true; for (int i = 0; i < liste.Length - 1; i++) { if (liste[i].score > liste[i + 1].score) { //zahlen tauschen (nur ein Paar) bestenliste temp = liste[i]; liste[i] = liste[i + 1]; liste[i + 1] = temp; //nicht sortiert PaarSortiert = false; } } } while (!PaarSortiert); return(liste); }
//Prüft. ob eine neues Highscore erreicht wurde. static public void Highscore() { bestenliste[] liste = new bestenliste[10]; for (int h = 0; h < 10; h++) { liste[h].name = " "; } try { string[] zwischenspeicher = Datei.Laden("Highscore.txt").Split('\n'); string[] zwischenspeicher2 = new string[zwischenspeicher.Length * 2]; int i = 0; foreach (string a in zwischenspeicher) { if (a.Split(';').Length < 3) { zwischenspeicher2[i] = a.Split(';')[0]; i++; zwischenspeicher2[i] = a.Split(';')[1]; i++; if (i == 20) { break; } } else { zwischenspeicher2[i] = " "; i++; zwischenspeicher2[i] = "0"; i++; if (i == 20) { break; } } } i = 0; for (int x = 0; x < zwischenspeicher2.Length - 1; x++) { liste[i].name = zwischenspeicher2[x]; x++; liste[i].score = Convert.ToInt64(zwischenspeicher2[x]); i++; } } catch { } liste = Sortieren(liste); Console.Clear(); int w = 1; for (int l = liste.Length - 1; l >= 0; l--) { string speicher = liste[l].name; for (int n = 0; n < 20 - liste[l].name.Length; n++) { speicher += " "; } Console.WriteLine(w + " " + speicher + " " + liste[l].score); w++; } Console.WriteLine(); Console.WriteLine("Ihre Punktzahl: " + score); Console.ReadKey(true); Console.WriteLine(); if (liste.Any(f => f.score < Level.score)) { string name = ""; do { Console.WriteLine("Geben Sie bitte ihren Namen ein."); Console.WriteLine("; ist nicht erlaubt. Die Person die es doch tut,"); Console.WriteLine("wird beim nächsten Aufruf der Liste rausgekickt:"); name = Console.ReadLine(); } while (name == ""); liste[0].name = name; liste[0].score = score; liste = Sortieren(liste); Datei.Bestenlistespeichern(liste); } }