Exemple #1
0
 public void Update(int dt = 1)
 {
     HeadSprite.Update(dt);
     BodySprite.Update(dt);
     BodyRotateSprite.Update(dt);
     TailSprite.Update(dt);
 }
Exemple #2
0
        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);
        }