Exemplo n.º 1
0
        internal void moveAsteroids(Globals.moveDirection where)
        {
            //move the asteroids furthest away from the ship to the left
            switch (where)
            {
            case (Globals.moveDirection.right):
                moveTile(0, reference.background.bgRects[2]);
                moveTile(3, reference.background.bgRects[5]);
                moveTile(6, reference.background.bgRects[8]);
                break;

            case (Globals.moveDirection.up):
                moveTile(6, reference.background.bgRects[0]);
                moveTile(7, reference.background.bgRects[1]);
                moveTile(8, reference.background.bgRects[2]);
                break;

            case (Globals.moveDirection.left):
                moveTile(2, reference.background.bgRects[0]);
                moveTile(5, reference.background.bgRects[3]);
                moveTile(8, reference.background.bgRects[6]);
                break;

            case (Globals.moveDirection.down):
                moveTile(0, reference.background.bgRects[6]);
                moveTile(1, reference.background.bgRects[7]);
                moveTile(2, reference.background.bgRects[8]);
                break;
            }
        }
Exemplo n.º 2
0
        public void moveBackground(Globals.moveDirection whichDirection)
        {
            //recalculate bgrects, move all in one direction
            Vector2f moveDelta = new Vector2f();

            switch (whichDirection)
            {
            case Globals.moveDirection.left:
                moveDelta.X -= bgRenderTexture.Size.X;
                bgMoved[2]   = true;
                Console.WriteLine("left");
                break;

            case Globals.moveDirection.right:
                moveDelta.X += bgRenderTexture.Size.X;
                bgMoved[0]   = true;
                Console.WriteLine("right");
                break;

            case Globals.moveDirection.up:
                moveDelta.Y -= bgRenderTexture.Size.Y;
                bgMoved[1]   = true;
                Console.WriteLine("top");
                break;

            case Globals.moveDirection.down:
                moveDelta.Y += bgRenderTexture.Size.Y;
                bgMoved[3]   = true;
                Console.WriteLine("bottom");
                break;
            }
            //move sprites
            for (int i = 0; i < bgSprites.Length; i++)
            {
                bgSprites[i].Position  += moveDelta;
                bgRects[i]              = bgSprites[i].GetGlobalBounds();
                testShapes[i].Position += moveDelta;
            }
        }
Exemplo n.º 3
0
 //add calls to handle moving through the background tiles
 internal void bgMoveCallBack(Globals.moveDirection where)
 {
     //keep first, sets currentcenterrect
     background.moveBackground(where);
     asteroids.moveAsteroids(where);
 }