Drag Movie Clip - перетаскивание клипов, сценарии изменения свойств
Сценарии изменения свойств Создание сценария для клипа Как было отмечено в начале, клип, как и кнопка, может «реагировать» на те или иные события. Поэтому в большинстве случаев основу сценария для клипа составляет перечень обработчиков, описывающих реакцию клипа на те или иные события. Чтобы связать с клипом сценарий, необходимо:
В этом примере мы управляем с помощью кнопок движением объекта - божьей коровкой. Божья коровка - это Символ типа кнопка помещенный в клип. Для управления на божьей коровке применен следующий скрипт. Как сделать. Если кнопка стрелка влево на клавиатуре нажата, переменной left присваиваем значение истина. При отжатии данной кнопки значиение переменной left становится ложным. А на клипе, при активином фрейме Если значение переменной left (== )равно истина, то клип с именем set передвинуть на 5 пикселей. Здесь еще присутствует поворот. Но об этом в другом примере. Достаточно пока перемещения. Остальные кнопки, думаю вы сами сможете реализовать. |
Drag Movie Clip - перетаскивание клипов Сейчас мы займемся переноской тяжестей, а конкретно будем брать то, что плохо лежит, и нести туда, где это будет лежать хорошо, т.е. делать - Drag and Drop. Практическое применение подобный прием находит в различных играх, которые на Flash сделать значительно быстрее и проще, чем другими средствами. Что Вы делаете, если Вам нужно перенести иконку на рабочем столе компьютера из одного угла в другой? Берем иконку нажатием левой кнопки мышки и не отпуская кнопку перемещаем на необходимое расстояние, ставим иконку простым отпусканием кнопки. Таким образом, выполняется целый ряд операций над объектом (иконкой): выбор объекта, его фиксация относительно курсора мыши, перемещение и установка объекта при отпускании кнопки. За все эти операции отвечает действие Drag Movie Clip. Drag Movie Clip - перетаскивание клипов Start Drop Operation - начать перетаскивание. Включив этот пункт, мы должны указать какой объект будет выступать в качестве груза для переноски. Target - имя целевого объекта, или говоря проще имя экземпляра клипа который мы станем перемещать. Constrain to rectangle - включив этот пункт, мы можем указать размеры области для перетаскивания. Размеры задаются в полях: Left, Top, Right и Bottom, значения указываются в пикселях Влево, Верх, Вправо и Вниз от центра того объекта в котором находится перетаскиваемый клип. Таким образом, можно ограничить возможные перемещения внутри определенной части проекта. Lock Mouse to Center - центровка перетаскиваемого клипа относительно курсора мыши. Этот параметр удобно включать, если перетаскиваемые клипы небольшого размера. Stop Drag Operation - отключение режима переноски клипа. Использование действия Drag Movie Clip, поначалу может вызвать некоторое затруднение. Рассмотрим его применение на конкретных примерах. Для начала создадим проект, в котором вместе с указателем мыши будет неотступно перемещаться экземпляр клипа.
В результате мы получим: startDrag("_root.Baloon", true); Используя этот прием, можно получить интересные результаты, например, команда отключения стандартного указателя мыши, таким образом, можно создавать собственные мышиные курсоры для своих проектов. Следует уточнить, что Lock Mouse to Center позиционирует клип относительно его реального центра. Поэтому, если в самом клипе рисунок находится не точно по центру, то и при перемещении будет создаваться ощущение, что рисунок находится в стороне. После того, как Вы поняли принцип работы действия Drag Movie Clip, научимся не только перемещать клип, но и предварительно его брать и ставить. Получается, что нам необходимо контролировать кнопку мыши, как Вы помните, для этого служит действие On Mouse Event, которое появляется только на кнопках. Здесь приходится применять следующую хитрость:
Т.е. сначала мы создаем символ типа кнопка, конвертируем его в клип (правой кнопкой мыши выделяем созданную кнопку, в контекстном меню пункт - Convert to Simbol - тип Movie Clip). Получилось несколько запутанно, но надеюсь, дальше все станет на свои места. Задание
on (press) { Курсор мыши Для создания такого курсора создайте клип, нарисуйте в нем объект, или импортируйте какое-то изображение. Создайте новый клип и переместите в него ранее созданный клип. На этом клипе (который только что переместили) напишите скрипт. onClipEvent (enterFrame) { Далее переместите на сцену второй созданный клип. И разместите на нем вот этот скрипт onClipEvent (enterFrame) { Можете проверить что получилось. Прикольно будет, если этот флеш-ролик запихнуть в html-ку и сделать фоновым рисунком рабочего стола (подожжем, подожжем :) 1. Создайте новый символ типа Graphic, обратите внимание, именно типа Graphic. Нарисуйте круг
2. Создайте новый символ типа Move Clip
3. Переместите созданный клип в сцену, назовите fire и переместите за рабочее поле. 4. Сделайте ключевым второй и третий кадры . 5. На первом кадре разместите скрипт: n = 1; 6. На втором кадре разместите скрипт: if (n<=m) { 7. На третьем кадре разместите скрипт: n = Number(n)+1; А если добавите вот этот скрипт на первый фрейм, то курсор мыши исчезнет. Mouse.hide();Но применение действия Drag Movie Clip можно найти не только для перетаскивания объектов. Бывают случаи, когда нужно узнать координаты курсора мыши. В этом случае необходимо создать "приклеенный" к курсору пустой символ и определять именно его координаты. Хотя об этом позже. |