I’d like to make a simple game where “discs” fall from the top of the screen and the user must catch them. I have a MovieClip which I want to resize to one of three randomly chosen sizes.
As I see it, there are four things that must be done.
-
Create and size the MovieClip
-
Position the MovieClip
-
Make the MovieClip fall
-
Determine when it is finished “falling” and see if the user has “caught” it.
My question is: How do I create, size and position the MovieClip? I’ve given it an identifier of “disc”. Now what? Do I make an ENTER_FRAME event and do my creation there? How do I move the disc downwards? Do I use tweens, something else?
I’m primarily asking this as a sanity check.
I would use some kind of factory class that would be responsible for dropping random discs from the top of the stage.
Beside what you correctly mentioned, you will also need to:
define if the speed for falling is constant or not, you may need some acceleration tween. To move the objects downwards, you could use a native tween method, you will need to apply it to every disk that gets dropped.
define where the disk will start falling, it can be random or always from the same place.
you can find out if two objects are colliding using the AS3
hitTestObjectmethod which belongs to theDisplayObjectclass.you factory class could have a
start()andstop()method. Oncestart()is fired, an infinite orENTER_FRAMEloop is started and disks start falling. If you want to create disks at a specific rate you could combine your loop with a timer to run code on a defined interval. For instance, every 3 seconds create 10 disks (using main loop) and drop them onto the stage.