public void Update(int dt = 1) { HeadSprite.Update(dt); BodySprite.Update(dt); BodyRotateSprite.Update(dt); TailSprite.Update(dt); }
public List <Image> GetBodyImages() { const double half = 0.5; var rotate = new RotateTransform(0); var snakeBody = new List <Image>(); for (int i = 0; i < BodyLength; i++) { snakeBody.Add(new Image()); BodySprite.Update(); BodyRotateSprite.Update(); switch (BodyPoints[i].Direction) { case SnakeDirection.UP: snakeBody[i].Source = BodySprite.GetRenderedImage(); rotate = new RotateTransform(270); break; case SnakeDirection.RIGHT: snakeBody[i].Source = BodySprite.GetRenderedImage(); rotate = new RotateTransform(0); break; case SnakeDirection.DOWN: snakeBody[i].Source = BodySprite.GetRenderedImage(); rotate = new RotateTransform(90); break; case SnakeDirection.LEFT: snakeBody[i].Source = BodySprite.GetRenderedImage(); rotate = new RotateTransform(180); break; case SnakeDirection.RIGHT_TO_DOWN: case SnakeDirection.UP_TO_LEFT: snakeBody[i].Source = BodyRotateSprite.GetRenderedImage(); rotate = new RotateTransform(0); break; case SnakeDirection.UP_TO_RIGHT: case SnakeDirection.LEFT_TO_DOWN: snakeBody[i].Source = BodyRotateSprite.GetRenderedImage(); rotate = new RotateTransform(270); break; case SnakeDirection.DOWN_TO_LEFT: case SnakeDirection.RIGHT_TO_UP: snakeBody[i].Source = BodyRotateSprite.GetRenderedImage(); rotate = new RotateTransform(90); break; case SnakeDirection.DOWN_TO_RIGHT: case SnakeDirection.LEFT_TO_UP: snakeBody[i].Source = BodyRotateSprite.GetRenderedImage(); rotate = new RotateTransform(180); break; default: break; } snakeBody[i].RenderTransform = rotate; snakeBody[i].RenderTransformOrigin = new System.Windows.Point(half, half); } return(snakeBody); }