public Snake(Point startPosition, int length, Direaction direction) { this.direction = direction; pList = new List <Point>(); for (int x = 0; x < length; x++) { Point tail = new Point(startPosition); tail.Move(x, direction); pList.Add(tail); } }
public void Move(int offset, Direaction direction) { switch (direction) { case Direaction.LEFT: x -= offset; break; case Direaction.RIGHT: x += offset; break; case Direaction.UP: y -= offset; break; case Direaction.DOWN: y += offset; break; } }
public void HandleKey(ConsoleKey key) { switch (key) { case ConsoleKey.LeftArrow: direction = direction = direction == Direaction.RIGHT ? direction : Direaction.LEFT; break; case ConsoleKey.RightArrow: direction = direction = direction == Direaction.LEFT ? direction : Direaction.RIGHT; break; case ConsoleKey.UpArrow: direction = direction = direction == Direaction.DOWN ? direction : Direaction.UP; break; case ConsoleKey.DownArrow: direction = direction = direction == Direaction.UP ? direction : Direaction.DOWN; break; } }