public Bird() { Plansza.RamkaPlanszy(); _y = 20;//pozycja początkowa musi być wieksza od 7 PoprzedniY = _y - 1; CzyZyje = true; WartoscSkoku = 1; TablicaPlansza = Plansza.TablicaPoczątkowa(); MaxY = Plansza.MaxPlanszaY + 1; MinY = Plansza.MinPlanszaY; }
public void WykonajRuch() { while (SprawdzBird()) { ConsoleKeyInfo wejscie; if (!Console.KeyAvailable) { Y += WartoscSkoku; } else { wejscie = Console.ReadKey(true); if (wejscie.Key == ConsoleKey.Spacebar) { Y -= WartoscSkoku; } } WyswietlPlansze(); RysujPtaka(); TablicaPlansza = Plansza.Przesun(TablicaPlansza); PoprzedniY = Y; } KoncoweNapisy(); }
static void Menu() { //bool CzyPodanoImie = false; Gracz g1; bool Exit = true; List <Gracz> WynikiGraczy = new List <Gracz>(); var serializer = new XmlSerializer(typeof(List <Gracz>)); if (File.Exists("Wyniki.xml")) { var Odczyt = new StreamReader("Wyniki.xml"); WynikiGraczy = (List <Gracz>)serializer.Deserialize(Odczyt); Odczyt.Close(); } Muzyka(); Plansza.Start(); Console.ReadKey(); Console.Clear(); g1 = new Gracz(); g1.Imie = WprowadzString("Imie"); while (Exit) { switch (Plansza.UtworzMenu("Rozpocznij grę", "Wyświetl Wyniki", "Twórcy", "Wyjdz")) { case 0: Bird PtakPodstawowy = new Bird(); PtakPodstawowy.WykonajRuch(); g1.Wynik = PtakPodstawowy.Wynik; //sprawdzanie czy juz jest taki gracz na liście jak tak to zmień jego wynik to mają być tylko max score if (WynikiGraczy.Count != 0 && WynikiGraczy.Exists(x => x.Imie == g1.Imie)) { for (int i = 0; i < WynikiGraczy.Count; i++) //dodaje tylko największy wynik dla danego gracza { if (WynikiGraczy[i].Imie == g1.Imie) { if (WynikiGraczy[i].Wynik < g1.Wynik) { WynikiGraczy.Remove(WynikiGraczy[i]); WynikiGraczy.Add(g1); } } } } else { WynikiGraczy.Add(g1); } break; case 1: WynikiGraczy = WynikiGraczy.OrderBy(o => o.Wynik).ToList(); for (int i = WynikiGraczy.Count - 1; i >= 0; i--)//wyswietla liste zawodników według punktów { Console.WriteLine($"Gracz {WynikiGraczy[i].Imie} Zdobył {WynikiGraczy[i].Wynik} Puntków"); } Console.ReadLine(); break; case 2: Console.WriteLine("Twórcy:"); Console.WriteLine("Kamil Matecki"); Console.WriteLine("Szymon Niemyt"); Console.ReadLine(); break; case 3: try { using (var Zapis = new StreamWriter("Wyniki.xml")) { serializer.Serialize(Zapis, WynikiGraczy); Zapis.Close(); } } catch (Exception e) { Console.WriteLine($"Plik nie został zapisany! {e.Message}"); } Exit = false; break; } } }