roland
Site Admin Roland Zimek
Wersja SWiSH: Max4
Pomógł: 31 razy Wiek: 58 Dołączył: 21 Sty 2005 Posty: 424 Skąd: Opole
|
Wysłany: Pon 29 Sie, 2005 12:37 Lekcja 16. Sterowanie przebiegiem animacji (cz. 2)
|
|
|
Kolejnymi poleceniami pozwalającymi sterować przebiegiem animacji, są polecenia należące do dwóch grup: gotoAndPlay oraz gotoAndStop. Pozwalają one kolejno przejść do określonego miejsca animacji i kontynuować animację, bądź też się zatrzymać. ponieważ różnią się tylko możliwością kontynuacji bądź zatrzymania animacji, a lokalizacje które możemy wskazać są identyczne, to opiszę jedynie grupę gotoAndPlay:
• gotoAndPlay(FRAME) – pozwala przejść do określonej klatki,
• gotoAndPlay(LABEL) – pozwala przejść do klatki posiadającej tak zwaną etykietę o określonej nazwie,
• nextFrameAndPlay() – przechodzi do następnej klatki,
• prevFrameAndPlay() – przechodzi do poprzedniej klatki,
• nextSceneAndPlay() – przechodzi do następnej sceny,
• prevSceneAndPlay() – przechodzi do następnej sceny.
Jeżeli wprowadzasz jedno z tych poleceń w trybie Guide, to zapewne zwrócisz uwagę, że tak w zasadzie to jedno polecenie, z różnymi opcjami.
Wykorzystując te polecenia, możemy napisać prosty skrypt pozwalający zliczać ilość kliknięć na przycisku. W tym celu tworzymy skrypt, który wpiszemy dla Scene_1:
Kod: | onLoad () {
licznik=0;
}
onFrame (1) {
gotoSceneAndPlay("<current scene>",3);
}
onFrame (2) {
licznik=licznik+1;
Informacja.text="Kliknięto "+licznik+" razy";
}
onFrame (3) {
gotoSceneAndPlay("<current scene>",3);
} |
Dodatkowo tworzymy obiekt o nazwie Przycisk oraz tekst o nazwie Informacja. Tekst Informacja, powinien zostać ustawiony jako Dynamic Text.
Jedynym skryptem który będziemy musieli wprowadzić, będzie skrypt dla obiektu Przycisk:
Kod: | on (press) {
gotoSceneAndPlay("<current scene>",2);
} |
Zastanówmy się, jak teraz działa nasza animacja. Przy jej rozpoczęciu, ustawiana jest wartość 0 dla zmiennej licznik, która będzie przechowywała ilość kliknięć. W klatce 1 następuje przejście do klatki 3, w wyniku czego pominięta zostanie klatka 2. Klatka 3 powoduje przejście do niej samej, przez co animacja się zapętli właśnie w tej klatce.
Kluczowa jest właśnie klatka 2. W niej to bowiem następuje zwiększenie wartości licznika o 1 oraz wyświetlenie odpowiedniej informacji.
Przejście do klatki 2 nastąpi wyłącznie w wyniku kliknięcia na obiekcie Przycisk.
Przeanalizujmy jeszcze wiersz powodujący wyświetlanie komunikatu w obiekcie tekstowym:
Kod: | Informacja.text="Kliknięto "+licznik+" razy"; |
Po nazwie zmiennej określono, że odwołujemy się do tekstu, który ona wyświetla. Dzięki temu możemy przypisać nową wartość. Przypisywana wartość składa się z trzech części, dwóch tekstów i zmiennej licznik, połączonych znakami „+”. Dzięki temu przed wyświetleniem zostaną one połączone w jeden łańcuch tekstowy i wyświetlone jako jeden tekst.
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="480" height="210">
<param name="movie" value="http://swish.wodip.opole.pl/forum/_screen/script_licznik.swf">
<param name="quality" value="high">
<embed src="http://swish.wodip.opole.pl/forum/_screen/script_licznik.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="480" height="210"></embed>
</object>
Przykładowa animacja jest do pobrania na końcu tej lekcji.
Spróbuj samodzielnie zmodyfikować tą animację, dodając nowy przycisk. Klikając na jednym z nich liczba kliknięć powinna się zwiększać, a klikając na drugim z nich zmniejszymy tą wartość. |
|