We've looked at our objects and set up our initialization routines. Now let's look at the interactive elements of the movie. The movie interface is controlled by the three main navigation buttons : About ManiFestival, About the Films , and Featured Animation (see figure 08:22).
When the user rolls over, rolls out, or clicks a button, different animations, such as the two large subway and tunnel animations, are triggered. Each button triggers a different sequence of animations and, in some cases, shows the animation in a different place.
On rollover, a movie clip showing a dancer spinning begins to play and a vertical line of text moves horizontally across the screen, above the button. The ManiFestival logo fades up and moves horizontally across the screen.
On rollout, the stopped movie clip dims and a larger movie clip plays, showing a subway station as it is passed.
about the films
On rollover, the Dancer movie clip plays from where it left off and the same line of text floats across the screen, above the second button. The logo repeats its movement across the screen.
On rollout, the spinning movie clip plays just a bit more and then stops while a different movie clip plays, showing a tunnel speeding past.
On rollover, the Dancer movie clip again picks up from where it last stopped while the text floats across the screen, above the third button. The logo repeats the same movement here as well.
On rollout, the spinning movie clip plays a bit more, as with the About the Films button, and then stops. Here, no additional movie clip plays.
What keeps the navigation intriguing is the combination of several similar elements, each adapted to a specific button. Of particular note is the way the movie clip of the dancer continues to play from its current position, instead of restarting each time it is called. This action ”as well as that of the text line moving relative to a particular button ”is controlled by object-oriented programming.
To handle such a complex set of behaviors, it is best to get organized. You have two goals in mind. One is to make the code as compact and reusable as possible. In other words, you want to combine all the behaviors into as few scripts as possible. The other goal is to break the movie apart into separate smaller manageable objects.
This combination of breaking apart and combining is best done on paper before you start. Programmers often draw out flow charts . You can simply draw boxes for each object and label them with variable names and behaviors of each object.