Програмування в flash

Для додання інтерактивності роликам, Flash має внутрішній мову сценаріїв ActionScript.

Щоб використовувати дії ActionScript. вам не потрібно бути програмістом. Безумовно, при створенні складних сценаріїв досвід програмування виявиться корисним. Однак при написанні сценаріїв ActionScript попередній досвід не є обов'язковим. Для вибору дій і зв'язування їх з об'єктами фільму творці Flash передбачили простий і зрозумілий інтерфейс # 151; панель Actions. За допомогою даної панелі ви отримуєте доступ до бібліотеки команд ActionScript), що дозволяє вам значно економити час при введенні коду сценаріїв.

Таким чином, ActionScript # 151; це об'єктно-орієнтована мова програмування, що є рідним для середовища Flash. В даному контексті термін об'єктно-орієнтована означає, що сценарії зв'язуються з об'єктами або елементами фільму. Якщо під час відтворення фільму ці об'єкти приймають повідомлення про певну подію, їх сценарії (або дії) виконуються. наприклад:

gotoAn d Play ( "nextStop")

У цьому сценарії при настанні події клацання миші press головка відтворення перейде до кадру з міткою nextStop і відтворення продовжиться з цього місця. Іншими словами, подія викликає дію, яка змінює порядок відтворення фільму.

Зв'язок між подіями і діями є головною особливістю об'єктно-орієнтованого програмування. Якщо у вас немає досвіду написання сценаріїв або ви зовсім не знайомі з програмуванням, такі формулювання можуть вас дещо збентежити. Однак не варто впадати в зневіру. Як тільки ви познайомитеся з діями, синтаксис і структура мови ActionScript стануть для вас менш загадковими.

За допомогою мови ActionScript можна

  • керувати ходом програвання фільму;
  • створювати анімацію програмним способом, без використання тимчасової шкали;
  • приймати дані від користувача;
  • завантажувати дані з файлів;
  • керувати звуками;
  • . і багато іншого.

У версії Adobe Flash 9.0 (CS3) основною мовою програмування є ActionScript 3.0. проте він досить складний для вивчення на початковому етапі і ми не будемо його розглядати.

Разом з тим підтримується і старий «простий» варіант # 151; мова ActionScript 2.0. який і будемо використовувати.

Запам'ятайте, що при створенні нових FLA-файлів потрібно завжди вибирати тип документа Flash File (ActionScript 2.0).

Програма на ActionScript називається сценарієм. Вона складається з окремих блоків коду, які можуть пов'язані з деякими елементами фільму:

  • ключовими кадрами. код виконується кожен раз, коли цей кадр програється;
  • кнопками або кліпами. код виконується при виникненні якоїсь події (клацання по кнопці, завантаження кліпу, перетягування мишею, натискання клавіші).

Щоб використовувати дії для написання сценаріїв фільмів Flash. необхідно перш за все вивчити панель Actions.

Щоб відкрити або розгорнути панель Дії (Actions). виконайте одну з таких дій:

  • з меню Вікно (Window) виберіть пункт Дії (Actions);
  • натисніть клавішу .

Після цього на екрані з'явиться або буде розгорнута панель Дії (Actions). Якщо ця панель була відкрита, але прихована іншим вікном, вона переміститься на передній план.

Область відображення сценарію служить для відображення всіх рядків-операторів поточного сценарію.

Список, що розкривається сценаріїв дозволяє перемикатися між сценаріями, пов'язаними з різними елементами фільму. При виборі на області дії елемента, яким можна керувати за допомогою сценарію, панель Actions автоматично переходить до відображення сценарію, пов'язаного з цим елементом.

У Flash-фільмах дії можуть бути пов'язані з об'єктами двох типів: кнопками і кліпами. Пов'язане дію виконується тоді, коли об'єкт приймає повідомлення про виконання події. Для кнопок ці повідомлення в основному надходять у вигляді сигналів від миші або клавіатури. Повідомлення про подію кліпу з'являються в результаті будь-яких змін або взаємодій, які відбулися з самим кліпом. Коли ви пов'язуєте дію з об'єктом і створюєте сценарій, ви визначаєте джерело події для кожного об'єкта. Дії зв'язуються з кнопками і кліпами, оскільки ці елементи є інтерактивними компонентами Flash-фільму. Як об'єкти, вони можуть приймати події миші, дані і іншого типу інформацію під час відтворення фільму. Структура, що створюється за допомогою об'єктів і пов'язаних з ними дій, буде визначати спосіб взаємодії аудиторії з фільмом.

Важливо пам'ятати, що кнопки і кліпи зберігаються в бібліотеці Flash в вигляді символів. Кожен раз при використанні символів у фільмі фактично використовується окрема копія символу, або його примірник.

Примірник можна розглядати як копію символу. Будь-яка зміна, яке вироблене з екземпляром, ніяк не вплине на батьківський символ або на інші екземпляри цього символу. Той же принцип зберігається і при зв'язуванні дій з екземпляром символу. Будь-яка дія, що асоціюється з примірником символу, буде виконуватися тільки тоді, коли в фільмі використовується даний екземпляр. Це означає, що дії зв'язуються тільки з певним примірником символу.

Однак будь-яка дія виконується тільки тоді, коли в фільмі відбувається певного роду подія. У мові ActionScript (і в багатьох інших об'єктно-орієнтованих мовах) дії управляються обработчиками подій.

Щоб використовувати дії в фільмі Flash, необхідно пов'язати їх з об'єктом або кадром. Даний процес досить простий і включає вибір об'єкта або кадру, вибір необхідного дії і визначення спеціальних параметрів, які можуть вимагатися для дії. Всі дії впливають тільки на пов'язаний з ними екземпляр символу об'єкта або єдиний кадр, який містить дії.

Дії використовуються для управління схемою відтворення, інтерактивними властивостями, потоком і напрямком відтворення фільму. Одним словом, за допомогою дії можна точно визначити порядок відтворення, а також реакцію фільму на призначений для користувача введення. Завдяки діям Flash менше нагадує анімаційну програму і в більшій мірі # 151; середу розробок інтерактивних мультимедійних додатків.

Деякі можливості, якими володіє Flash завдяки використанню дій:

  • Створення складних, інтерактивних схем навігації.
  • Зміна якості відтворення фільму.
  • Зв'язок з документами HTML, розміщеними в Інтернеті, і обмін даними з додатками сервера.
  • Обмін даними з хост-додатками або іншими Flash-фільмами.
  • Відтворення інших фільмів в межах головного фільму.

Використання сцен значно полегшує загальну організацію вмісту фільму, задана послідовність відтворення сцен призводить до створення лінійних фільмів. Але поряд з низкою переваг (наприклад, дві зчепи не можуть відтворюватися одночасно) в цьому є і свої недоліки, пов'язані з неможливістю змінити порядок відтворення сцен. Цю проблему можна вирішити, використовуючи сценарії ActionScript (зокрема дії кадрів), які дозволяють управляти сценами і змінювати їх порядок.

Деяких дій, за допомогою яких можна управляти сценами.

  • gotoAndPlay (). Виклик дії gotoAndPlay () призводить до переходу головки відтворення до певної сцені і кадру. Відтворення фільму триває з цього кадру.
  • gotoAndStop (). При виклику даного дії відбувається перехід до певної сцені і кадру і зупинка відтворення фільму.
  • play (). Ця дія дозволяє продовжити відтворення фільму після зупинки.
  • stop (). За допомогою даної дії можна зупинити відтворення фільму.

При зв'язуванні дії з екземпляром кнопки Flash автоматично присвоює цій дії обробник події миші. Цей оброблювач визначає, яка подія при відтворенні фільму буде ініціювати виконання дії (або дій), що містяться в сценарії. Обробник події миші визначається дією on ().

Для установки або зміни обробника події миші, виконайте наступні дії.

Програмування в flash

Імена та опису подій миші в мові ActionScript.

  • Press. Подія press ініціює дію при натисканні кнопки, коли курсор миші знаходиться над об'єктом кнопки.
  • Release. Подія release ініціює дію при відпуску кнопки, коли курсор миші знаходиться над об'єктом кнопки. Ця подія приймається за замовчуванням.
  • Release Outside. Подія release Outside ініціює дію при відпуску кнопки, коли курсор не знаходиться над об'єктом кнопки.
  • Key Press. Подія key Press не пов'язане з мишею. Воно ініціює дію, коли на клавіатурі буде натиснута кнопка, зазначена в полі зліва від даного прапорця.
  • Roll Over. Подія roll Over ініціює дію, коли курсор миші поміщається на об'єкт кнопки.
  • Roll Out. Подія roll Out ініціює дію, коли курсор миші поміщається за межі об'єкта кнопки.
  • Drag Over. Подія drag Over може здатися спочатку дещо складним. Фактично воно включає комбінацію з серії різних подій. Щоб ініціювати дію за допомогою події drag Over. необхідно встановити покажчик миші над об'єктом кнопки і клацнути, перемістити покажчик за межі об'єкта, а потім знову помістити покажчик на об'єкт.
  • Drag Out. Щоб ініціювати дію за допомогою події drag Out. виконайте клацання, коли покажчик миші знаходиться над об'єктом кнопки, а потім наведіть курсор за межі об'єкта.
  1. Створіть новий файл # 150; Документ Flash.
  2. На Сцені 1 створіть анімацію.
  3. Додайте Сцену 2 і створіть анімацію для даної сцени.
  4. Перейдіть на Сцену 1, додайте шар і пропишіть дію перехід на сцену 2.

Програмування в flash

  1. На Сцені 2 або останній сцені вашого проекту поставте кнопку, при натисканні якої відкриється Сцена 1.

Програмування в flash

  1. Збережіть файл під ім'ям Фамілія_21.fla.
  2. Опублікуйте в форматі .swf
  3. І надішліть в одному архіві.
  1. Створіть новий файл # 150; Документ Flash.
  2. На Шари 1 в першому кадрі пропишемо команду stop (). для того щоб анімація не починалося, тобто не відбувалося ніяких дій.

Програмування в flash

  1. Створіть Шар 2. Починаючи з 2 кадру і до 31, створіть анімацію, яка буде відтворюватися при натисканні кнопки миші.

Програмування в flash

  1. У 31 кадрі пропишіть зупинку анімації, щоб ніяких дій не відбувалося.
  2. Додайте Шар 3. Починаючи з 32 кадру і до 62, створіть анімацію коли кнопка буде відпущена.

Програмування в flash

  1. Додайте Шар 4. І розмістіть на ньому кнопку. І пропишіть дії:

gotoAndPlay (2); // при натисканні кнопки буде відбуватися дії починаючи з 2 кадру

gotoAndPlay (32); // відбуватиметься дії починаючи з 32 кадру, коли кнопка буде відпущена

  1. Протестуйте програму.
  2. Збережіть файл під ім'ям Фамілія_22.fla.
  3. Опублікуйте в форматі .swf
  4. І надішліть в одному архіві.
  • setProperty (). Установка атрибутів кліпу: розміри, положення і т. Д.
  • onClipEvent (). Визначає обробник події кліпу, який буде ініціювати дію.
  • on (). Визначає обробник події миші, який буде ініціювати якусь дію.
  • gotoAndPlay (). Перехід до зазначеного в якості параметра кадру або сцені і відтворення фільму з цього місця.
  • gotoAndStop (). Перехід до зазначеного в якості параметра кадру або сцені і зупинка фільму.
  • play (). Відтворення фільму.
  • stop (). Зупинка фільму.
  • stopAllSounds (). Відключення звукового супроводу фільму.
  • fscommand (). Управління додатком Flash Player.
  • getURL (). Виклик фільму із зазначеним URL.
  • loadMovie (). Завантаження інших Flash-фільмів.
  • unloadMovie (). Вивантаження інших Flash-фільмів.

За допомогою дії getURL () можна встановити зв'язок з URL безпосередньо з Flash-фільму. Зв'язок з URL дозволяє виконувати дві речі. По-перше, ви можете використовувати Flash для створення Web-посилання і завантаження інформації у вікно браузера з джерела, відповідає вказаному URL. По-друге, дія можна використовувати для передачі даних ресурсу, який знаходиться за певною URL.

Щоб зв'язати дію getURL (). необхідно виконати наступне.

  • _self. Документ завантажується в поточному вікні, де в даний момент відтворюється фільм.
  • _blank. Документ завантажується в новому вікні.
  • _parent. Даний елемент вказує на поточне вікно і дозволяє замінити тільки фрейм, де в даний момент відтворюється фільм.
  • _top. Даний елемент доцільно використовувати тоді, коли ваш фільм відтворюється у фреймі, а новий документ, на який вказує URL, повинен заповнити всі вікно браузера.
  1. Список, що розкривається Variables (Змінні) використовується для передачі змінних на URL, з яким ви встановлюєте зв'язок.
  • Do not Send (не передавати). Даний елемент встановлений за замовчуванням і використовується в тих випадках, коли немає необхідності в обміні даними.
  • Send Using GET (передавати з використанням методу GET). Даний елемент списку вибирають в тих випадках, коли необхідно передати кілька змінних і обсяг переданих даних невеликий.
  • Send Using Post (передавати з використанням методу POST). Даний елемент списку вибирають в тих випадках, коли необхідно передавати великий обсяг інформації.
  1. Створіть новий файл # 150; Документ Flash.
  2. Імпорт всі необхідні зображення для майбутніх кнопок (Ctrl + R).
  3. Виділіть першу картинку і натисніть F8. Конвертуйте її в кнопку.

Програмування в flash

  1. Двічі клікніть на мувікліп.
  2. Тепер клацніть на кадрі з заголовком Over і додайте кадр, натиснувши F6.

Програмування в flash

  1. Створіть новий шар і натисніть на кадрі з заголовком Over і додайте кадр (F6). Після за допомогою Rectangle Tool (R) обведіть картинку.
  1. Поверніться назад на головну сцену і за допомогою інструменту виділення (V) клікніть на кнопці, натисніть F9 і введіть наступний AS-код:

Програмування в flash

  1. Повторіть всі попередні кроки для інших картинок.
  2. Протестуйте програму.
  3. Збережіть файл під ім'ям Фамілія_23.fla.
  4. Опублікуйте в форматі .swf
  5. І надішліть в одному архіві.

Створіть презентацію на вільну тему, використовуючи матеріал уроку.

Область елементів ActionScript

Список, що розкривається сценаріїв

Область відображення сценарію