- Listening for Events
- Mouse Detection
- The SimpleButton Class
- Invisible Buttons
- Animated Buttons and the Movie Clip Symbol
- Complex Buttons
- Button-tracking Options
- Changing Button Behavior
- Creating Buttons Dynamically
- Keyboard Detection
- The Contextual Menu
- Creating Continuous Actions
- A Summary of Events
Animated Buttons and the Movie Clip Symbol
Animated buttons display an animation in any of the first three keyframes (Up, Over, and Down) of the button symbol. A button can spin when the pointer rolls over it, for example, because you have an animation of a spinning graphic in the Over state. How do you fit an animation into only one keyframe of the button symbol? Use a movie clip.
A movie clip is a special kind of symbol that allows you to have animations that run regardless of where they are or how many actual frames the instance occupies. This feature is possible because a movie clip’s Timeline runs independently of any other Timeline, including other movie clip Timelines and the main movie Timeline in which the movie clip resides. This independence means that as long as you establish an instance on the Stage, a movie clip animation plays all its frames regardless of where it is. Placing a movie clip instance in a single keyframe of a button symbol makes the movie clip play whenever that particular keyframe is displayed. That is the basis of an animated button.
An animation of a butterfly flapping its wings, for example, may take ten frames in a movie clip symbol. Placing an instance of that movie clip on the Stage in a movie that has only one frame still lets you see the butterfly flapping its wings (Figure 4.20). This functionality is useful for cyclical animations that play no matter what else may be going on in the current timeline. Blinking eyes, for example, can be a movie clip placed on a character’s face. No matter what the character does—whether it’s moving or static in the current timeline—the eyes blink continuously.
Figure 4.20 Movie clips have independent timelines.
To create a movie clip:
Choose Insert > New Symbol.
The Create New Symbol dialog box appears.
Type a descriptive name for your movie clip symbol, choose Movie Clip as the Type, and click OK (Figure 4.21).
Figure 4.21 Create a new movie clip symbol by naming it and selecting the Movie Clip Type.
You now enter symbol editing mode.
Create the graphics and animation on the movie clip timeline (Figure 4.22).
Figure 4.22 The pondRipple movie clip symbol contains two shape tweens of an oval getting bigger and gradually fading.
Notice how the navigation bar above the Timeline tells you that you’re currently editing a symbol.
Return to the main Stage.
Your movie clip is stored in the Library as a symbol, available for you to bring onto the Stage as an instance (Figure 4.23).
Figure 4.23 Bring an instance of a movie clip symbol onto the Stage by dragging it from the Library.
To create an animated button:
- Create a movie clip symbol that contains an animation, as described in the preceding task.
Create a button symbol, and define the four keyframes for the Up, Over, Down, and Hit states (Figure 4.24).
Figure 4.24 A simple button symbol with ovals in all four keyframes.
- In symbol editing mode, select either the Up, Over, or Down state for your button, depending on when you would like to see the animation.
Drag your movie clip symbol from the Library to the Stage (Figure 4.25).
Figure 4.25 The Over state of the button symbol. Place an instance of the pondRipple movie clip in this keyframe to play the pond-ripple animation whenever the pointer moves over the button.
The movie clip instance is inside the button symbol.
- Return to the main movie Timeline, and drag an instance of your button symbol to the Stage.
Choose Control > Test Movie.
Your button instance plays the movie clip animation continuously as your pointer interacts with the button (Figure 4.26).
Figure 4.26 The completed animated button. When the pointer passes over the button, the pondRipple movie clip plays.
Figure 4.27 A new layer in the button symbol timeline helps organize the animation.