//Schreibt das Array in die Konsole static public void zeichnen() { string bild = ""; grundfeld(); Buggy.zeichnen(); foreach (Loch l in löcher) { l.Zeichnen(); } foreach (Monster m in monster) { m.Zeichnen(); } foreach (Schuss k in schüsse) { k.Zeichnen(); } Level.Informationen(); bild = ""; //Erschafft aus dem 2-Dimensionalen Array einen string for (int y = 0; y < breite; y++) { for (int x = puffer; x < länge; x++) { bild += Feld[x, y]; } bild += "\n"; } Console.Clear(); Console.WriteLine(bild); }
//Der Thread des eigt. Spiels static public void aktualisieren() { Buggy.Laden(); while (run) { zeichnen(); Buggy.Kollision(); runde(); Schießen(); Level.NextLevel(); Thread.Sleep(wiederholung); } }
static void Main(string[] args) { do { Level.Laden(); System.ConsoleKeyInfo key; Console.Clear(); Console.Write(Datei.Laden("Titelbildschirm.txt")); key = Console.ReadKey(true); if (Convert.ToString(key.Key) == "Spacebar") { Arbeiter.Start(); Thread arbeiterAktualisiert = new Thread(Arbeiter.aktualisieren); arbeiterAktualisiert.Priority = ThreadPriority.Highest; arbeiterAktualisiert.Start(); //Wartet auf eine Eingabe während das Spiel ausgeführt wird do { key = Console.ReadKey(true); switch (Convert.ToString(key.Key)) { case "Q": Arbeiter.Tot(); Thread.Sleep(10); break; case "Spacebar": Buggy.sprung(); break; case "A": Arbeiter.schuss = true; break; } }while (Arbeiter.run); Level.Highscore(); } else if (Convert.ToString(key.Key) == "Q") { break; } } while (true); }
//Berrechnet alles was in einer Runde passiert und stellt das Regelwerk fürs Erschaffen dar static void runde() { Buggy.Runde(); for (int i = 0; i < löcher.Length; i++) { löcher[i].Runde(); if (löcher[i].position == länge) { Töten("Loch"); } } for (int x = 0; x < monster.Length; x++) { monster[x].Runde(); if (monster[x].position == länge) { Töten("Monster"); } } for (int x = 0; x < schüsse.Length; x++) { schüsse[x].Runde(); if (schüsse[x].position == puffer) { Töten("Schuss"); } } if (schüsse.Any(y => y.Treffer())) { Töten("Schuss"); Töten("Monster"); } if (Level.Speicher[Level.gegenwart].ObjektStufe == 0 && löcher.Length == 0) { Erschaffen("Loch", 0, 30, 0); } else if (löcher.Length == 0 && monster.Length == 0) { Würfel(); } else if (Level.Speicher[Level.gegenwart].ObjektStufe > 0) { if (löcher.Any(x => x.position == puffer) || monster.Any(y => y.position == puffer)) { Würfel(); } } else { if (löcher.Any(x => x.position == puffer)) { Erschaffen("Loch", puffer - Level.Speicher[Level.gegenwart].maxAbstandObjekt, puffer - Level.Speicher[Level.gegenwart].minAbstandObjekt, 0); } } }