Сборка ПК [Курсовая] - Flash 8
|
|
Модераторы
211 сообщений
Мужчина
|
Создайте на сцене два объекта, допустим два прямоугольника. Объект 1 (который будете двигать) расположите на верхнем слое. Объект 2 на нижнем слое. Создайте третий пустой слой для экшен-скрипта и расположите его над всеми слоями. Преобразуйте объекты в мувиклипы с точкой привязки в центре. В полях инстанс нейм (instance name) там где свойства мувиклипа установите имена для объекта1 kub_mc, а для объекта2 имя trush_mc. Далее, на верхний пустой слой копируйте код as3, который приведён ниже (на as2 я больше не пишу так как он скоро не будет поддерживаться):
kub_mc.addEventListener(MouseEvent.MOUSE_DOWN, ClickToDrag);
function ClickToDrag(event:MouseEvent):void { kub_mc.startDrag(); }
stage.addEventListener(MouseEvent.MOUSE_UP, ReleaseToDrop);
function ReleaseToDrop(event:MouseEvent):void { kub_mc.stopDrag(); if (kub_mc.hitTestObject(trush_mc)) { kub_mc.rotation+=90; kub_mc.x=trush_mc.x kub_mc.y=trush_mc.y kub_mc.removeEventListener(MouseEvent.MOUSE_DOWN, ClickToDrag); stage.removeEventListener(MouseEvent.MOUSE_UP, ReleaseToDrop); } } Перемещайте мышью объект 1 на объект 2. Смотрите скомпилированный код в работе:
|
|
|
|
|
Начальная группа
3 сообщений
Женщина
|
stop();
kryg.onPress = function() {
this.startDrag();
_root.checkHit_int = setInterval(_root.checkHit_func, 12); }; kryg.onRelease = kryg.onReleaseOutside=function () {
this.stopDrag();
clearInterval(_root.checkHit_int); };
kvadrat.onPress = function() {
this.startDrag();
_root.checkHit_int = setInterval(_root.checkHit_func, 12); }; kvadrat.onRelease = kryg.onReleaseOutside=function () { kvadrat this.stopDrag();
clearInterval(_root.checkHit_int); };
function checkHit_func() {
if (_root. kryg.hitTest (_root. kvadrat) and _root. kryg1.hitTest (_root. kvadrat1)) {
_root.gotoAndStop(2); } }
Выдаёт ошибки:Монтажный кадр 1, слой "Слой 3", кадр 1, строка 33, столбец 42 1084: Синтаксическая ошибка: rightparen перед and. Монтажный кадр 1, слой "Слой 3", кадр 1, строка 33, столбец 84 1084: Синтаксическая ошибка: identifier перед rightparen. Монтажный кадр 1, слой "Слой 3", кадр 1, строка 33, столбец 86 1008: Недопустимый атрибут.
|
|
|
|
|
Модераторы
211 сообщений
Мужчина
|
Для чего такой запутанный код, с совершенно лишними строками ? Возможно, ошибки появляются при создании файла, нужно выбирать actionScript 2.0. Код я проверил, он работает и ошибок не выдаёт. Только нужно создать два слоя: верхний для кода приведённого здесь, на нижнем разместите круг и квадрат. Затем на верхний слой добавляйте просто кадр, а на нижний пустой ключевой кадр. Тогда при совмещении круга и квадрата, они пропадут, потому что осуществиться переход на второй кадр, где их нет. Вот эту строку необходимо исправитьif (_root. kryg.hitTest (_root. kvadrat) and _root. kryg1.hitTest (_root. kvadrat1)) { Поставьте вместо неё, вот это if (_root.kryg.hitTest(_root.kvadrat) ) { и всё будет работать, см.далее:
http://www.servodroid.ru/Droid/CityRobots/DragAS2.swf
|
|
|
|
|
Начальная группа
5 сообщений
Женщина
|
Курсовые и другие работы постоянно заказываю на бирже студ. работ Автор24 . Работы заказываются напрямую у исполнителя. Если что-то не так, то исполнитель внесет коррективы в работу. В общем сервис тут отличный. При этом цены намного ниже средних по интернету. И еще бонус - 100 р при регистрации.
|
|
|
|
|