КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Ініціалізація руху клацанням миші
Додавання змінної швидкості руху Щоб було легше міняти швидкість руху об'єкта у вашім фільмі, додайте змінну швидкості (чим менше буде значення, тим швидше буде рухатися об'єкт).
Зверніть увагу на те, що усередині функції onEnterFrame слово 'this' посилається на фільм, які ви назвали ball_mc, тому навіть при звертанні до змінної швидкості з функції потрібно вводити this._parent.speed, щоб виявитися на тім рівні, на якому перебуває фільм. Рівень _root level є рівнем, на якому визначена змінна speed.
Тепер ми значно змінимо код, щоб фільм переміщався в будь-які місця, де користувач клацне мишею. Аналогічно тому, як ми привласнювали функцію onEnterFrame фільму, ми можемо привласнити йому функцію onMouseDown. Ця функція буде виконуватися при кожному натисканні кнопки миші в будь-якому місці на головному фільмі. Отже, коли користувач клацає мишею, потрібно спочатку встановити позиції цілей фільму на місце розташування клацання, а потім виконати функцію onEnterFrame для переміщення на цю позицію:
Можна бачити, що цей ActionScript кардинальним образом відрізняється від попереднього ActionScript. Якщо раніше ми приєднували функцію безпосередньо до керуючого елемента onEnterFrame, то цього разу ми спочатку визначаємо функцію moveToMouse, і при клацанні мишею вираження this.onEnterFrame указує на цю функцію й викликає її в кожному кадрі. Функція сама по собі працює так само, як і колись, за винятком того, що переміщення відбувається не на позицію покажчика миші, а на значення змінних target і target, що є змінними місця розташування покажчика миші, значення яких визначаються при кожному клацанні мишею користувачем. Цей підхід виглядає більше ефективним, тому що потрібно лише один раз визначити функцію, а потім активізувати її, указавши для неї onEnterFrame. Якщо згодом потрібно буде виключити рух, це можна зробити, видаливши this.onEnterFrame.
Ви побачите, що об'єкт переміщається на те місце, де ви клацнули мишею, і потім, дійшовши до цього місця, припиняє свій рух, що являє гарний приклад зіставлення з тим случаємо, коли кулька постійно випливала за мишею.
Дата добавления: 2014-01-07; Просмотров: 256; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |