/// <summary> /// Open een TextWindow waarin de gebruiker commando's voor de Turtle op kan geven. /// </summary> /// <returns>Niets.</returns> public static Primitive DrawFromTextWindow() { GraphicsWindow.Title = "Output"; GraphicsWindow.Top = (Desktop.Height - GraphicsWindow.Height) / 2; GraphicsWindow.Left = (Desktop.Width - GraphicsWindow.Width) / 12; TextWindow.Title = "Input"; TextWindow.Top = GraphicsWindow.Top; TextWindow.Left = GraphicsWindow.Left + GraphicsWindow.Width + 20; while (true) { Draw(TextWindow.Read()); } }
static void Main() { string s; TextWindow.Show(); // запрашиваем размер еды и проверяем на допустимость do { TextWindow.WriteLine("Введите размер еды от 10 до 50px"); s = TextWindow.Read(); } while (!((int.TryParse(s, out int i)) && int.Parse(s) >= 10 && int.Parse(s) <= 50)); TextWindow.Hide(); int eatSize = int.Parse(s); Turtle.Speed = 4; Turtle.PenUp(); GraphicsWindow.CanResize = false; GraphicsWindow.BrushColor = "Red"; var eat = Shapes.AddRectangle(eatSize, eatSize); int x = 200; int y = 200; Shapes.Move(eat, x, y); Random rand = new Random(); GraphicsWindow.Title = "Погнали!"; GraphicsWindow.KeyDown += GraphicsWindow_KeyDown; while (true) { Turtle.Move(10); if (Turtle.X >= x && Turtle.X <= x + eatSize && Turtle.Y >= y && Turtle.Y <= y + eatSize) { if (Turtle.Speed < 9) { Turtle.Speed++; } if (Turtle.Speed < 9) { GraphicsWindow.Title = "Переключились на скорость: " + (Turtle.Speed - 3); } else if (Turtle.Speed == 9 && GraphicsWindow.BrushColor != "Yellow") { GraphicsWindow.Title = "Вышли на максимальную скорость!"; GraphicsWindow.BackgroundColor = "Red"; GraphicsWindow.BrushColor = "Yellow"; Shapes.Remove(eat); eat = Shapes.AddRectangle(eatSize, eatSize); } x = rand.Next(eatSize, GraphicsWindow.Width - eatSize); y = rand.Next(eatSize, GraphicsWindow.Height - eatSize); Shapes.Move(eat, x, y); } } }