Flash на практике часть-8 ~ Lesson flash

четверг, 7 февраля 2008 г.

Flash на практике часть-8

Сегодня мы займемся переноской тяжестей, а конкретно будем брать то, что плохо лежит, и нести туда, где это будет лежать хорошо, т.е. делать - 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, поначалу может вызвать некото-рое затруднение. Рассмотрим его применение на конкретных примерах. Для на-чала создадим проект, в котором вместе с указателем мыши будет неотступно перемещаться экземпляр клипа. Разместите на сцене экземпляр клипа из Вашей библиотеки Укажите в Instance Properties имя клипа, например Baloon В первом кадре проекта разместите скрипт следования клипа за курсором мыши, для это-го после выбора действия Drag Movie Clip, введите имя клипа (в нашем случае /Baloon) и отметьте Lock Mouse to Center. В результате мы получим: Start Drag ("/Baloon", lockcenter) Используя этот прием, можно получить интересные ре-зультаты, например во Flash5 добавлена команда отключения стандартного указателя мыши, таким образом, появилась возможность создавать собствен-ные мышиные курсоры для своих проектов.


Следует уточнить, что Lock Mouse to Center позиционирует клип относи-тельно его реального центра. Поэтому, если в самом клипе рисунок находится не точно по центру (о позиционировании объектов рассказывалось в 8 выпус-ке), то и при перемещении будет создаваться ощущение, что рисунок находится в стороне.


После того, как Вы поняли принцип работы действия Drag Movie Clip, научимся не только перемещать клип, но и предварительно его брать и ставить. Получается, что нам необходимо контролировать кнопку мыши, как Вы помни-те, для этого служит действие On Mouse Event, которое появляется только на кнопках.


Здесь приходится применять следующую хитрость: нужно создать клип, в котором будет располагаться кнопка с необходимым рисунком или без него, но с указанием области срабатывания (кадр кнопки Hit), создать для этой кнопки скрипт управления клипом расположенным на сцене, а этот клип не что иное, как экземпляр того клипа над которым мы сейчас и работаем. Получилось не-сколько запутанно, но надеюсь, дальше все станет на свои места.


Для работы нам нужен любой символ (рисунок или клип). Создайте новую кнопку Поместите в ней выбранный Вами символ, также можно разместить на соответствующих кадрах изменение символа в зависимости от действия. Соз-дайте новый Movie Clip В него из Вашей библиотеки скопируйте, только что созданную кнопку


Задайте для кнопки следующий скрипт: On (Press) Start Drag ("/dragclip", lockcenter) End On On (Release) Stop Drag End On Осталось только, скопировать созданный таким образом клип на сцену и указать в Instance Properties имя ука-занное в скрипте (в данном примере dragclip).


Как видите ничего сложного :)


Но применение действия Drag Movie Clip можно найти не только для пере-таскивания объектов. Бывают случаи, когда нужно узнать координаты курсора мыши. В этом случае необходимо создать "приклеенный" к курсору пустой символ и определять именно его координаты.


В примере Вы увидите использование перетаскивания объекта, опре-деление координат мыши и имени того объекта, над которым переносят клип.


Домашнее задание На этот раз я не стану давать Вам конкретный сцена-рий, а предложу принять участие в "Новогоднем проекте". Реальная работа Flash-дизайнера редко ограничивается индивидуальным творчеством, в боль-шинстве случаев необходимо уметь работать в коллективе. Какими бы хоро-шими профессиональными качествами Вы не обладали, одно из основных тре-бований предъявляемых при трудоустройстве в студию Web-дизайна, умение и опыт работы в коллективе, и разумеется, чувство общего стиля.

Смысл проекта состоит, как раз в отработке необходимых навыков коллек-тивной работы. О том, как будет происходить совместная работа, читайте в следующих лекциях.


Требования к сценарию: Разумеется, необходимо придерживаться ново-годней тематики. Реализация фильма должна быть достаточно простой, но в тоже время не примитивной. Сценарий может быть будущим мультфильмом или новогодней игрой, все зависит от Вашей фантазии.


Желаю удачи!

Комментариев нет: