Easy-to-follow video tutorials help you learn software, creative, and business skills.Become a member

Removing assets from the stage

From: Flash Professional CS5: Creating a Simple Game for Android Devices

Video: Removing assets from the stage

The next step in the development of this game is I need to go ahead and remove the various elements from the stage, because as you can see how this game works, as these lasers hit these tempEnemies, well, the enemies should be disappearing, and so should the lasers. Not only that, the enemies should be disappearing when they go off the stage, and these lasers should also be disappearing as they go off the top. And lastly, even these explosions, even though you don't see them anymore after they blow up, they still exist on the stage.

Removing assets from the stage

The next step in the development of this game is I need to go ahead and remove the various elements from the stage, because as you can see how this game works, as these lasers hit these tempEnemies, well, the enemies should be disappearing, and so should the lasers. Not only that, the enemies should be disappearing when they go off the stage, and these lasers should also be disappearing as they go off the top. And lastly, even these explosions, even though you don't see them anymore after they blow up, they still exist on the stage.

So we need to remove those. There is just an awful lot of cleanup that we need to do now. I'll go ahead and close that file. And just to review where this file is at, all of these items are actually in arrays. So there is this laser array. There is this enemy array and then there's an explosion array, so I'm basically going to remove elements from these various arrays. So I am going to go ahead and open up the Code Snippets panel right down here, and in the bottom, Remove Elements from Array, that's what I want to add.

So I'll just double-click on it, and it will add it to my Actions panel and let's just start here at the top. And a lot of these are similar, but let's go ahead and take a look. This one says Remove enemy 1 from the enemies array. Well, I already have an enemies array created, so that's fine, but this is what's happening. It's going to go ahead and remove enemy number 1 from that array. So this number gets passed into this function. So idx becomes 1, and in here it says removeChild, so remove from the stage enemies in that array number 1.

That's what that is. I'll just undo that. But remove it from the stage. Not only that, remove it from the array as well. So this again passes in 1, and this second number here just says to remove only that one item and that's it. So I'll undo that. So that's the basic structure of this function. But when and where does this function call go? What is it called. Where does it go in my code? So let's go ahead and take it, and let's cut it, because I actually want to call that function when there is that explosion.

So let's just scroll up, and what I want to do is I want to go ahead and right in here for this moveEnemies function, as I scroll down, I want to go ahead and remove that tempEnemy. When it goes off the stage or if it hits the player, that's when I want to remove that enemy. So, line 210. I'll paste it in there. Hit the Tab key a couple of times. So removeEnemy, that's when I want to call that function right in here, after that explosion.

But I don't want this equal to 1. In fact, what I want to do is I need to reference this for loop. So here is the for loop. So whatever tempEnemy you're on, that's actually referred to as i, so that's what that is. I am just going to copy that, so right in here, I am just going to paste i. So whatever tempEnemy that is, it's actually known as i. I can go ahead and change that comment to that, and that looks more appropriate, removeEnemy(i). I'll go ahead and copy those two lines because I need to remove the enemy, not only when it goes off the bottom of the stage or hits the player, but also when the laser hits it.

So, I'll scroll down. Right in here, there is this Make Explosion as well. Just beneath it, I'll paste in those two lines. There we are, removeEnemy. Well, is it known as i still? Well, let's take a look. The for loop for the enemy, sure enough, is i. I just want you to be aware of that. Make sure that says i, and it will get removed when the laser hits the enemy. So far so good. Let's scroll back down. So we have done the removeEnemy.

Let's take a look at removeLaser. It works the same way, so there's this removeLaser function. It removes whatever number I'm referring to. It removes it from the stage and takes it out of the laser's array. So it works the same way. Well, where is it going to go? Let's first take this and let's cut it and scroll up to where we were a second ago. Test for collisions, right in here. Again, where the laser hits the enemy, right underneath this removeEnemy, I can paste in that removeLaser. Tab that in.

Remove that reference to 1. And for removeLaser, what number of my referencing, or what variable? Let's take a look. It's not i because that refers to the enemy. I need to go ahead and take a look at the laser. So the laser is actually j, so that's what I need is j right here. So I'll just type in j, and again when the laser hits the enemy, go ahead and remove it. Not only that, but when the laser goes off the stage or off the top, I also need to remove it there as well.

So let's scroll up. That's where we make enemies. Let's go a little further up, right here, 134. There is this moveLaser function and right in here, there is this if statement says, you know what, if it's off the top of the screen, then go ahead and do something. In this case, what I wanted to do is I will just paste in this function call, right in there. And again, let's take a look. For that variable i, in this case it is i, I can type in i, go ahead and basically remove that laser when it's off the top of screen.

So that takes care of the laser when it goes off the top as well. So we have taken care of the enemy-- let me scroll back down to the bottom--the enemy as well as the laser we are removing those. Now what about the explosion? The explosion is pretty interesting because you see this explosion and then you don't see it anymore, but it's actually still on the stage. So we just need to remedy that. So we're not going to treat it the same way. So we don't even need to call this function at all. I'll just delete that. I do need this function.

But how I am going to treat it is, as I scroll down here, is I am going to go ahead and check all of the items in this explosions array, all of those various explosions. If at anytime that explosion, if its current frame is greater than or equal to the total frames, so what that means is if the explosion has already played, then go ahead and remove that explosion. So this is just a for loop. That does all of that work, okay.

So loop through everything, see where the current frame right is. If it's basically at the end, then go ahead and remove that item. So I need to take this and I am going to cut it, and I'm actually going to just put it in another function. I am going to put it in the moveLaser function. I'll scroll up. There it is, moveLaser, where we just were, not within this for loop. All I am going to do is just after that closing curly brace, but still leaving one below as well, and I am going to paste in that chunk of code, okay.

So if I scroll up, just keep in mind I'm in moveLaser. It really doesn't matter what function I am in in particular because I just know that this function gets fired off at the frame rate of the movie. So it's constantly checking. It's always checking these various explosions, and as soon as one has already played, it's just going to go ahead and remove it. All right, I'd say we're looking pretty good. Let's scroll back down and just do a little bit of cleanup with this code, because these functions, well, I don't want to leave them at the bottom. In fact, I am going to cut them, and I want to move them into sort of the game area, where I have all my game code.

So I have this Make Explosion function, this testForEnd, and then just right down below testForEnd, that's where I'll just paste in those functions. These are game functions. That's where I want them. All right, let's just go ahead and test this movie now. I'm going to click Play, and as we see those collisions happen, we'll see some explosions, but those elements will be removed, such as the UFO, known as the tempEnemy, the lasers will disappear when they collide, and even as they go off the bottom of the screen, they'll be removed as well.

In fact, if I expand out the size of the stage, you can see that the lasers do disappear once they reach the top. So again, that's just a little bit of cleanup that we've done. The game is much better this way. I'm actually able to destroy these enemies. So the next thing is actually going to be implementing some explosion sounds to this game.

Show transcript

This video is part of

Expand all | Collapse all
  1. 1m 48s
    1. Welcome
      1m 0s
    2. Using the exercise files
      48s
  2. 7m 16s
    1. Understanding the user
      4m 2s
    2. Flash content on Android devices
      3m 14s
  3. 17m 28s
    1. Reviewing the game
      1m 50s
    2. Creating a file in Device Central
      5m 39s
    3. Reviewing the game structure
      8m 23s
    4. Adding code snippets
      1m 36s
  4. 36m 13s
    1. Animating the intro screen
      8m 13s
    2. Moving the player
      8m 13s
    3. Adding enemies
      6m 49s
    4. Adding movement
      4m 16s
    5. Adding chance and randomness
      8m 42s
  5. 34m 30s
    1. Adding lasers
      8m 14s
    2. Detecting collisions
      7m 57s
    3. Adding explosions
      6m 26s
    4. Removing assets from the stage
      8m 50s
    5. Adding audio
      3m 3s
  6. 33m 12s
    1. Adding scoring and levels
      7m 41s
    2. Subtracting lives and ending the game
      4m 26s
    3. Creating a results screen
      5m 8s
    4. Displaying the score
      6m 57s
    5. Saving and loading game results
      9m 0s
  7. 17m 14s
    1. Detecting movement with the Accelerometer
      6m 39s
    2. Using the swipe gesture
      4m 42s
    3. Using hardware keys
      5m 53s
  8. 23m 18s
    1. Handling exits and idle mode
      3m 31s
    2. Handling activation and deactivation
      6m 14s
    3. Optimizing graphics
      7m 14s
    4. Optimizing ActionScript
      6m 19s
  9. 34m 41s
    1. Creating the application files
      8m 23s
    2. Creating the app (Mac)
      5m 5s
    3. Creating the app (PC)
      7m 19s
    4. Publishing to an Android device (Mac)
      7m 7s
    5. Publishing to an Android device (PC)
      6m 47s
  10. 8m 56s
    1. Uploading to the Android market
      7m 7s
    2. Downloading from the Android market
      1m 49s
  11. 1m 22s
    1. Next steps
      1m 22s

Start learning today

Get unlimited access to all courses for just $25/month.

Become a member
Sometimes @lynda teaches me how to use a program and sometimes Lynda.com changes my life forever. @JosefShutter
@lynda lynda.com is an absolute life saver when it comes to learning todays software. Definitely recommend it! #higherlearning @Michael_Caraway
@lynda The best thing online! Your database of courses is great! To the mark and very helpful. Thanks! @ru22more
Got to create something yesterday I never thought I could do. #thanks @lynda @Ngventurella
I really do love @lynda as a learning platform. Never stop learning and developing, it’s probably our greatest gift as a species! @soundslikedavid
@lynda just subscribed to lynda.com all I can say its brilliant join now trust me @ButchSamurai
@lynda is an awesome resource. The membership is priceless if you take advantage of it. @diabetic_techie
One of the best decision I made this year. Buy a 1yr subscription to @lynda @cybercaptive
guys lynda.com (@lynda) is the best. So far I’ve learned Java, principles of OO programming, and now learning about MS project @lucasmitchell
Signed back up to @lynda dot com. I’ve missed it!! Proper geeking out right now! #timetolearn #geek @JayGodbold
Share a link to this course

What are exercise files?

Exercise files are the same files the author uses in the course. Save time by downloading the author's files instead of setting up your own files, and learn by following along with the instructor.

Can I take this course without the exercise files?

Yes! If you decide you would like the exercise files later, you can upgrade to a premium account any time.

Become a member Download sample files See plans and pricing

Please wait... please wait ...
Upgrade to get access to exercise files.

Exercise files video

How to use exercise files.

Learn by watching, listening, and doing, Exercise files are the same files the author uses in the course, so you can download them and follow along Premium memberships include access to all exercise files in the library.


Exercise files

Exercise files video

How to use exercise files.

For additional information on downloading and using exercise files, watch our instructional video or read the instructions in the FAQ.

This course includes free exercise files, so you can practice while you watch the course. To access all the exercise files in our library, become a Premium Member.

Are you sure you want to mark all the videos in this course as unwatched?

This will not affect your course history, your reports, or your certificates of completion for this course.


Mark all as unwatched Cancel

Congratulations

You have completed Flash Professional CS5: Creating a Simple Game for Android Devices.

Return to your organization's learning portal to continue training, or close this page.


OK
Become a member to add this course to a playlist

Join today and get unlimited access to the entire library of video courses—and create as many playlists as you like.

Get started

Already a member?

Become a member to like this course.

Join today and get unlimited access to the entire library of video courses.

Get started

Already a member?

Exercise files

Learn by watching, listening, and doing! Exercise files are the same files the author uses in the course, so you can download them and follow along. Exercise files are available with all Premium memberships. Learn more

Get started

Already a Premium member?

Exercise files video

How to use exercise files.

Ask a question

Thanks for contacting us.
You’ll hear from our Customer Service team within 24 hours.

Please enter the text shown below:

The classic layout automatically defaults to the latest Flash Player.

To choose a different player, hold the cursor over your name at the top right of any lynda.com page and choose Site preferencesfrom the dropdown menu.

Continue to classic layout Stay on new layout
Exercise files

Access exercise files from a button right under the course name.

Mark videos as unwatched

Remove icons showing you already watched videos if you want to start over.

Control your viewing experience

Make the video wide, narrow, full-screen, or pop the player out of the page into its own window.

Interactive transcripts

Click on text in the transcript to jump to that spot in the video. As the video plays, the relevant spot in the transcript will be highlighted.

Are you sure you want to delete this note?

No

Your file was successfully uploaded.

Thanks for signing up.

We’ll send you a confirmation email shortly.


Sign up and receive emails about lynda.com and our online training library:

Here’s our privacy policy with more details about how we handle your information.

Keep up with news, tips, and latest courses with emails from lynda.com.

Sign up and receive emails about lynda.com and our online training library:

Here’s our privacy policy with more details about how we handle your information.

   
submit Lightbox submit clicked
Terms and conditions of use

We've updated our terms and conditions (now called terms of service).Go
Review and accept our updated terms of service.