Малюємо мувіка, edapskov

Продовжуємо тему малювання у флеш і сьогодні розглянемо ще один спосіб - малювання мувіка. Робити ми це будемо в середовищі Macromedia Flash Professional 8.0 і на мові ActionScript 2.0. Принцип простий: якщо при затиснутою ЛФМ змінюється положення курсора мишки, то програма додає з бібліотеки проекту на сцену флеш-ролика певний MovieClip, координати якого збігаються з координатами курсору мишки на даний момент часу.

Отже, приступимо до створення.

Спершу створимо мувик, яким ми і будемо "малювати". Для цього намалюємо на сцені коло невеликого діаметра (звичайно, можна використовувати і інші геометричні фігури). Виділяємо цю заготовку і тиснемо на клавіатурі F8. З'являється вікно, в якому вибираємо тип MovieClip, даємо ім'я "mc", а точку реєстрації ставимо в центрі. Мувик створений і його можна видалити зі сцени флеш-ролика. Але при цьому мувікліп збережеться в бібліотеці проекту. Далі, йдемо в бібліотеку проекту, наводимо курсор мишки на наш мувик "mc" і тиснемо праву клавішу мишки. З'являється контекстне меню нашого мувікліпа. У контекстному меню вибираємо пункт Linkage (в російській версії Macromedia Flash це зазвичай переведено як "язування"). Відкривається вікно налаштувань. У цьому вікні в якості ідентифікатора вкажіть "mc" і дозвольте експорт для ActionScript (поставити галочку у відповідного пункту).

Варто створити і кнопку-ластик, яка буде видаляти раніше намальоване. Створення та програмування кнопок на ActionScript 2.0 вже раніше розглядалося і я не буду повторюватися. Скажу тільки, що кнопка буде носити ім'я "btn".

Останній етап - написання коду. Код писатимемо на головній часовій шкалі флеш-ролика.

Код ActionScript 2.0:

/ * Змінна-лічильник мувіков. * / Count = 0; / * Змінна-прапор. Якщо вона має значення true, то малювання дозволено. Якщо змінна має значення false, то малювання заборонено. * / Flag = false; / * Починаємо малювати при затиснутою ЛФМ. * / OnMouseDown = function () ; / * Відпускаємо ЛФМ і забороняємо малювання. * / OnMouseUp = function () ; / * Кожен раз, коли змінюються координати курсора мишки, на сцену з бібліотеки додається екземпляр мувіка mc. Як координат мувіка призначаються координати курсора мишки в даний момент часу. * / OnMouseMove = function () >; / * За допомогою кнопки btn ми знищуємо все мувік на сцені і обнуляє змінну count. * / Btn.onRelease = function ()

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

Ось що вийшло у мене: