public void Start() { isStarded = true; Possition movement = new Possition(0, 0); while (isStarded == true) { BoundriesHelper.CheckBoundaries(Snake.SnakeBody.Head.Value, movement); Snake.Move(movement); if (Snake.CheckSelfCanibalism()) { Console.Clear(); ConsoleHelper.Write(new Possition(0, 0), "Game Over"); isStarded = false; break; } if (Console.KeyAvailable) { var key = Console.ReadKey(false).Key; movement = ReadUserInput.GetMovement(key); } Thread.Sleep(200); gameItems.ForEach(i => i.Draw()); } }
public void Grow(Possition possition) { var oldPOssition = SnakeBody.Head.Value; var newHead = new Node(new Possition(oldPOssition.X, oldPOssition.Y)); //newHead.Value.ChangePossition(possition); BoundriesHelper.CheckBoundaries(newHead.Value, possition); SnakeBody.AddHead(newHead); }