by kirupa | 30
August 2006
We are almost done with the code explanations. Let's pick
up from where we left off from the
previous page.
- var
newMC:MovieClip
= this["blue"+count];
I am declaring a new variable called newMC of type
MovieClip. Notice that the name of the movie clip is the
same as the value passed into the attachMovie function's new
name argument. Notice that I am referring to the newly
attached movie clip by using the this[...] function which
informs Flash that the expression within this's brackets are
referring to an actual object.
Instead of using
this[...] to have expressions refer to actual objects,
you can also use the older eval function as in
eval("blue"+count).
In our code, it seems like the return value
for attachMovie is void - or nothing. In reality, the return
value is the newly attached movie clip itself. So, you can
get away with something like the following:
- var
newMC:MovieClip
= this.attachMovie("blueCircle",....)
For simplicity reasons, I broke the one statement over
two lines. In this approach, notice that you don't need to
worry about using this[...] either.
- newMC.onEnterFrame
=
function()
{
- fadeOut(this);
- };
In the above lines, I am attaching an onEnterFrame event
handler to the newly defined and initialized newMC movie
clip. The onEnterFrame event handler loops whatever function
is assigned to it at a brisk rate of 25 frames per second -
which also happens to be your movie's frame rate! That's not
a coincidence, for the rate at which onEnterFrame loops code
is the same as the animation's frame rate in ActionScript
1.0/2.0.
Twenty-five times a second, the fadeOut function is called,
and the argument passed into it is this, which in this case,
refers to the newMC movie clip itself! It's time to take a
look at the fadeOut function now.
- function
fadeOut(inputMC:MovieClip):Void
{
- inputMC._xscale
+=
10;
- inputMC._yscale
+=
10;
- inputMC._alpha
-=
1;
- if
(inputMC._alpha<0)
{
- inputMC.removeMovieClip();
-
delete
inputMC.onEnterFrame;
- }
- }
The fadeOut function is called by the onEnterFrame event
from our attachOnMove function. It takes for its argument a variable whose
type is movie clip. This passed-in variable, inputMC,
will reference the particular circle that is placed on your
stage via the atttachMovie function you saw earlier.
There is more code that will be explained on the
next page!
Onwards to the next page!
|