<< Chapter < Page Chapter >> Page >

Listing 7 . Beginning of the overridden LoadContent method of the Game1 class.

protected override void LoadContent() { spriteBatch = new SpriteBatch(GraphicsDevice);//Create a sprite for the background image. spiderWeb =new Sprite("spiderwebB",Content,random); spiderWeb.Position = new Vector2(0f,0f);

A background sprite with a spider web image

The last two statements in Listing 7 instantiate a new Sprite object and load it with an image of the spider web shown in Figure 1 .

The purpose of this sprite is to serve as a background image. Before adding the image of the spider web to the Content folder during the design phase, I used an external program to scale the image to the same size asthe game window established by the constructor in Listing 15 .

The code in Listing 7 positions the upper left corner of the sprite at the upper left corner of the game window so that it just fills the game window asshown in Figure 1 .

Instantiate the spider and ladybug Sprite objects

The code in Listing 8 instantiates all of the spider and ladybug Sprite objects and sets their properties.

Listing 8 . Instantiate the spider and ladybug Sprite objects.

//Instantiate all of the spiders and cause them to // move from left to right, top to// bottom. Pass a reference to the same Random // object to all of the sprites.for(int cnt = 0;cnt<numSpiders;cnt++) { spiders.Add(new Sprite("blackWidowSpider",Content,random)); //Set the position of the current spider at a// random location within the game window. spiders[cnt].Position = new Vector2( (float)(windowWidth * random.NextDouble()),(float)(windowHeight * random.NextDouble())); //Get a direction vector for the current spider.// Make both components positive to cause the // vector to point down and to the right.spiders[cnt].Direction = DirectionVector((float)maxVectorLength, (float)(maxVectorLength * random.NextDouble()),false,//xNeg false);//yNeg//Notify the spider object of the size of the // game window.spiders[cnt].WindowSize =new Point(windowWidth,windowHeight); //Set the speed in moves per second for the// current spider to a random value between // maxSpiderSpeed/2 and maxSpiderSpeed.spiders[cnt].Speed = maxSpiderSpeed / 2+ maxSpiderSpeed * random.NextDouble() / 2; }//end for loop//Use the same process to instantiate all of the // ladybugs and cause them to move from right to// left, bottom to top. for(int cnt = 0;cnt<numLadybugs;cnt++) { ladybugs.Add(new Sprite("ladybug",Content,random)); ladybugs[cnt].Position = new Vector2( (float)(windowWidth * random.NextDouble()),(float)(windowHeight * random.NextDouble())); ladybugs[cnt].Direction = DirectionVector( (float)maxVectorLength,(float)(maxVectorLength * random.NextDouble()), true,//xNegtrue);//yNeg ladybugs[cnt].WindowSize = new Point(windowWidth,windowHeight);ladybugs[cnt].Speed = maxLadybugSpeed / 2+ maxLadybugSpeed * random.NextDouble() / 2; }//end for loop}//end LoadContent

Get Jobilize Job Search Mobile App in your pocket Now!

Get it on Google Play Download on the App Store Now




Source:  OpenStax, Xna game studio. OpenStax CNX. Feb 28, 2014 Download for free at https://legacy.cnx.org/content/col11634/1.6
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Xna game studio' conversation and receive update notifications?

Ask