Actionscript і інтерактивність, записки

Команди мови ActionScript чутливі до регістру. Тобто, команда "GotoAndPlay" повинна писатися саме так. Якщо написати "Gotoandplay" або як небудь інакше, це викличе помилку. Далі, всі команди повинні закриватися крапкою з комою. Її відсутність теж може викликати помилку.

Код можна призначити або на кадр таймлайна, або на об'єкт Moviecli p або Button. Відповідно, код можна призначити кадру таймлайна, всередині Movieclip. На Graphic код призначити не можна.

управління таймлайн

Припустимо, у нас є основний таймлайн і нам потрібно, щоб анімація зупинилася на 20-му кадрі. Створюємо новий шар для коду і називаємо його "actions", для зрозумілості.

Дужки потрібні для вказівки в них параметрів (наприклад, номери кадру), але в цій команді немає додаткових параметрів, тому вони порожні. На кадрі, з'являється буква "а", що означає, що на кадрі є код.

Тепер нам потрібно, щоб в 20-м кадрі появілясь кнопка і з її допомогою можна було запустити анімацію далі.

Створюємо ще один шар, ставимо в 20-м кадрі порожній ключовий кадр і поміщаємо в нього кнопку, тобто, символ Button. Чому потрібно створювати порожній ключовий кадр? А тому що, якщо цього не робити і просто помістити кнопку в шар, вона буде починатися з першого кадру.

on # 40; release # 41; # 123;

gotoAndPlay # 40; 20 # 41; ;

Те, що ми написали, є реакція кнопки на подію. Якщо відбувається подія "on (release)", то виконується дія, укладену в фігурні дужки, тобто "gotoAndPlay (20);". "Release" в даному виразі - це відпускання кнопки, після натискання. Якщо вам потрібно, щоб реакція була на натискання, то слід написати "press". Є ще такі події, як "rollOver" і "rollOut" - це працює при наведенні миші на кнопки і на уведение з неї, відповідно. Є ще кілька подій для кнопок, я не буду їх тут описувати. Подивіться в допомоги. А у нас вийшло ось, що:

Якщо ви подивіться вихідний проект. ви побачите, що я додав шар з анімацією кнопки і ще один ключовий кадр в шарі Actions, в якому я знову зупинив відтворення таймлайна.

Отже, в кадрах таймлайна можна писати код для його управління, так само там можна призначати якісь події, які повинні наступати при досягненні певного кадру.

управління символами

Тут мова піде про управління символами з інших символів. Чесно кажучи, під символами, в даному випадку, мається на увазі Movieclip. Інші символи не призначені для управління, за допомогою ActionScript.

В даному прикладі показано послідовне відтворення одного Movieclip. керованого кнопками. Кожна з цих кнопок змушує його відтворюватися з різних кадрів. Для виготовлення подібного ролика нам буде потрібно кнопка - 1 штука, Movieclip c анімацією - 1 штука. А так же, різні цифри і букви для оформлення. Усередині Movieclip'а у мене є шар з кодом, в якому стоїть команда Stop на першому, дев'ятому, дев'ятнадцятому і двадцять дев'ятому кадрах. Це потрібно для того, щоб він зупинявся час від часу, а не крутився по колу. В основній сцені лежить одна кнопка. Вона розмножена 4 рази, а щоб не малювати 4 різних кнопки, поверх кожної написано своє число, в окремому шарі. Поруч-же лежить наш Movieclip з анімацією. А тепер починається цікаве. виділіть Movieclip на робочій області і подивіться на панель Properties.

on # 40; press # 41; # 123;

my_mc. gotoAndPlay # 40; 2 # 41; ;

що, буквально означає:

on # 40; press # 41; # 123; // як тільки ця кнопка натиснута
my_mc. gotoAndPlay # 40; 2 # 41; ; // символ my_mc повинен почати відтворення з кадру 2
# 125;

Далі, скопіюйте цей код і вставте його на інші кнопки, лише змінивши в ньому цифру 2. на 10. 20 і 30. відповідно. Дія у кнопок повторюється, тільки відтворення починається з різних кадрів.

Для цього нам потрібно звернутися до нього, із зазначенням шляху, тобто: "mc_car.mc_wheel1.ROTATE". Це є відносний шлях, тому що машина лежить в основній сцені. У основної сцени теж є ім'я: "_root". Ми можемо звернутися до колеса за допомогою абсолютного шляху. Виглядати це буде так: "_root.mc_car.mc_wheel1.ROTATE". Ці два вирази рівнозначні, з тією лише різницею, що другий варіант менш гнучкий.

Другий варіант з дитячої сцени: нам потрібно з другого колеса звернутися до крану, який лежить теж в основній сцені. Тобто, нам потрібно піднятися по ієрархії на один рівень вище. Вираз для цього буде виглядати так: "this._parent._parent.mc_crane.DOSOMETHING".

Виходячи з попереднього, наш код можна записати і так:

on # 40; press # 41; # 123;
_root. my_mc. gotoAndPlay # 40; 2 # 41; ;
# 125;

Це буде абсолютний шлях до об'єкта.

on # 40; press # 41; # 123;
this. play # 40; # 41; ;
# 125;

Так, ось так все просто. При натисканні на сам символ, він почне відтворення з наступного кадру. А, так ака, в ньому, через певні проміжки, варто команда "Stop", то працювати він буде таким-же чином, як якщо б ми натискали на кнопки. Тільки в даному випадку він буде відтворюватися послідовно.

Отже, застосувавши відому вправність, ви можете створити власний сайт вже зараз, використавши один Movieclip і ще кілька нескладних елементів :-)

Leave a Comment