<< Chapter < Page Chapter >> Page >

The code in Listing 8 is essentially the same as code that I explained in an earlier module so no explanation beyond the embedded comments should benecessary.

The overridden Update method

The overridden Update method begins in Listing 9 .

Listing 9 . Beginning of the overridden Update method.

protected override void Update(GameTime gameTime) {//Tell all the spiders in the list to move. for(int cnt = 0;cnt<spiders.Count;cnt++) { spiders[cnt].Move(gameTime); }//end for loop//Tell all the ladybugs in the list to move. for(int cnt = 0;cnt<ladybugs.Count;cnt++) { ladybugs[cnt].Move(gameTime); }//end for loop

The code in Listing 9 is essentially the same as code that I have explained in earlier modules, so no further explanation should be necessary.

A for loop that controls the collision testing

Listing 10 shows the beginning of a for loop that causes each ladybug Sprite object to test for a collision with the spiders in the list of spiders once during each iteration of the game loop.

If a ladybug detects a collision with a spider, the action described earlier is taken.

Listing 10 . Beginning of a for loop that controls the collision testing.

for(int cnt = 0;cnt<ladybugs.Count;cnt++) {

Not every spider is tested during each iteration

If a ladybug detects a collision with a spider, the remaining spiders in the list are not tested by that ladybug during that iteration of thegame loop. In other words, if a ladybug's rectangle intersects the rectangles belonging to two or more spiders, only the spider closest to the top of the listwill register a collision.

Test for a collision

The code that tests for a collision is shown in Listing 11 .

Listing 11 . Test for a collision.

//Test for a collision between this ladybug and // all of the spiders in the list of spiders.Sprite target = ladybugs[cnt].IsCollision(spiders); if(target != null) {//There was a collision. Cause the spider to // move 128 pixels to the right.target.Position = new Vector2(target.Position.X + 128,target.Position.Y);

The first statement in Listing 11 calls the IsCollision method on the current ladybug object, passing a reference to the list of spiders as a parameter. As you learned earlier,this will cause the ladybug object to test each spider in the list for a collision until either a collision is found or the list is exhausted.

Return a reference to a spider or null

When the IsCollision method returns and control moves to the beginning of the if statement, the variable named target will either contain null , (meaning that no collision was detected), or will contain a reference to thespider object involved in a collision.

If a collision was detected...

The body of the if statement shown in Listing 11 is executed if a collision was detected and the target variable does not contain null. In this case, the X component of the spider's position vector isincreased by a value of 128. This will cause the spider to move 128 pixels to the right the next time it is drawn.

Questions & Answers

Ayele, K., 2003. Introductory Economics, 3rd ed., Addis Ababa.
Widad Reply
can you send the book attached ?
Ariel
?
Ariel
What is economics
Widad Reply
the study of how humans make choices under conditions of scarcity
AI-Robot
U(x,y) = (x×y)1/2 find mu of x for y
Desalegn Reply
U(x,y) = (x×y)1/2 find mu of x for y
Desalegn
what is ecnomics
Jan Reply
this is the study of how the society manages it's scarce resources
Belonwu
what is macroeconomic
John Reply
macroeconomic is the branch of economics which studies actions, scale, activities and behaviour of the aggregate economy as a whole.
husaini
etc
husaini
difference between firm and industry
husaini Reply
what's the difference between a firm and an industry
Abdul
firm is the unit which transform inputs to output where as industry contain combination of firms with similar production 😅😅
Abdulraufu
Suppose the demand function that a firm faces shifted from Qd  120 3P to Qd  90  3P and the supply function has shifted from QS  20  2P to QS 10  2P . a) Find the effect of this change on price and quantity. b) Which of the changes in demand and supply is higher?
Toofiq Reply
explain standard reason why economic is a science
innocent Reply
factors influencing supply
Petrus Reply
what is economic.
Milan Reply
scares means__________________ends resources. unlimited
Jan
economics is a science that studies human behaviour as a relationship b/w ends and scares means which have alternative uses
Jan
calculate the profit maximizing for demand and supply
Zarshad Reply
Why qualify 28 supplies
Milan
what are explicit costs
Nomsa Reply
out-of-pocket costs for a firm, for example, payments for wages and salaries, rent, or materials
AI-Robot
concepts of supply in microeconomics
David Reply
economic overview notes
Amahle Reply
identify a demand and a supply curve
Salome Reply
i don't know
Parul
there's a difference
Aryan
Demand curve shows that how supply and others conditions affect on demand of a particular thing and what percent demand increase whith increase of supply of goods
Israr
Hi Sir please how do u calculate Cross elastic demand and income elastic demand?
Abari
Got questions? Join the online conversation and get instant answers!
Jobilize.com Reply

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