|
Tutorial für Flash 5
![]()
In Flash 5 lässt sich ein rückwärtsabspielender MovieClip noch
leichter realisiern. Vorteilhaft ist hierbei der enterFrame-EventHandler
für MovieClips, der eine Aktion bei jedem Aufruf eines Frames tätigt
und die Eigenschaft _currentframe, die den aktuellen Frame angibt.
Im Klartext bedeutet das, dass wir bei jedem Aufruf des Frames den MovieClip ein Bild zurückspringen lassen (Aktion für den betreffenden MovieClip):
onClipEvent(enterFrame){
this.gotoAndStop(_currentframe-1);
}
Die Problematik ist jetzt, dass der MovieClip stoppt, sobald er beim ersten Frame angelangt ist. Um das zu umgehen, muss folgende Aktion eingebaut werden:
onClipEvent (enterFrame) {
if (_currentframe != 1) {
this.gotoAndStop(_currentframe-1);
} else {
this.gotoAndStop(_totalframes);
}
}
Die Eigenschaft _totalframes gibt die Anzahl der Frames des MovieClips
wieder. Die Aktion oben bedeutet praktisch, dass der MovieClip zum letzten Frame
springen soll, sobald der erste erreicht wurde.
Und da wir das Ganze ja steuern wollen, kann eine Variable eingebaut werden, das würde dann z.b. so aussehen:
onClipEvent (enterFrame) {
if (_root.playBackwards) {
if (_currentframe != 1) {
this.gotoAndStop(_currentframe-1);
} else {
this.gotoAndStop(_totalframes);
}
} else {
play();
}
}
Jetzt spielt der MovieClip nur rückwärts, wenn die Variable playBackwards 'true' ist. Jetzt kann alles bequem per Buttons gesteuert werden:
on(release){
_root.playBackwards=true; //aktion zum rückwärts abspielen
}
on(release){
_root.playBackwards=false; //aktion fürs normale Abspielen
}