public void Draw(SpriteBatch spriteBatch) { foreach (var part in tail) { part.Value.Draw(contentManager, spriteBatch); } Head.Draw(contentManager, spriteBatch); }
public void Draw(Graphics graphics, Brush brush) { Head.Draw(graphics, GameContext.HeadBrush); foreach (var element in Body) { element.Draw(graphics, GameContext.BodyBrush); } }
public void Move(bool clearTail = true) { Point newHead; switch (direction) { case Directions.Right: newHead = new Point(Head.X + 1, Head.Y, 'x'); break; case Directions.Left: newHead = new Point(Head.X - 1, Head.Y, 'x'); break; case Directions.Up: newHead = new Point(Head.X, Head.Y - 1, 'x'); break; case Directions.Down: newHead = new Point(Head.X, Head.Y + 1, 'x'); break; default: goto case Directions.Right; } body.Add(newHead); Head.Draw(); if (clearTail) { Tail.Clear(); body.Remove(Tail); } canRotate = true; }