// Metoda wydłuża węża - dorysowuje mu element na konsoli // oraz dodaje do listy "cialoWeza" na ostatniej pozycji. public void wydluzWeza() { int przesunWPionie = 0, przesunWPoziomie = 0; Punkt punkt = new Punkt(); ustalPrzesuniecieOgonaWeza(ref przesunWPionie, ref przesunWPoziomie); punkt.X = cialoWeza.Last.Value.X + przesunWPoziomie; punkt.Y = cialoWeza.Last.Value.Y + przesunWPionie; cialoWeza.AddLast(punkt); rysujPunkt(punkt); }
// Wprawienie węża w ruch public void wykonajRuch() { int przesunWPionie = 0, przesunWPoziomie = 0; wyczyscPunkt(cialoWeza.Last.Value); cialoWeza.RemoveLast(); ustalPrzesuniecieGlowyWeza(ref przesunWPionie, ref przesunWPoziomie); Punkt punkt = new Punkt(); punkt.X = cialoWeza.First.Value.X + przesunWPoziomie; punkt.Y = cialoWeza.First.Value.Y + przesunWPionie; cialoWeza.AddFirst(punkt); rysujPunkt(punkt); }
// Czy waz natrafił na nagrode? public bool czyJestNaNagrodzie(Punkt punktNagrody) { bool wynik = false; foreach (Punkt punktWeza in cialoWeza) { if (punktWeza.X == punktNagrody.X && punktWeza.Y == punktNagrody.Y) { wynik = true; break; } } return(wynik); }
public void wyczyscPunkt(Punkt punkt) { Console.SetCursorPosition(punkt.X, punkt.Y); Console.Write(" "); }
public void rysujPunkt(Punkt punkt) { Console.SetCursorPosition(punkt.X, punkt.Y); Console.Write("*"); }