Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   запустить код после того как фильм запустился (http://www.flasher.ru/forum/showthread.php?t=140889)

snicksnk 10.06.2010 04:58

запустить код после того как фильм запустился
 
Наипростейший вопрос, но ответ никак найти на него не могу
При запуске фильма скриптом создаеться несколько мувиклипов по образцам из библиотеки
Так вот их создание происходит бесконечно, как сделать так чтобы объекты построились при запуске фильма один раз? Как я понимаю нужно добавить лисенер на событие запуска клипа, но что это за событие?


Код AS3:

 
var start_mc:point = new point();
var end_mc:point  = new point();
var control_mc:point = new point();
addChild(start_mc);
addChild(end_mc);
addChild(control_mc);


tsarapkabel 10.06.2010 14:02

Погоди, так он же сам при запуске выполнится, автоматом.

snicksnk 10.06.2010 14:44

Да он выполняеться, но выполняеться бесконечно тоесть объекты point создаеться бесконечное чило раз, а нужно чтобы создалось только 3 таких объекта

Вот весь код, он должен создать три объекта point и позволить двигать их мышкой

Код AS3:

 
        var start_mc:point = new point();
        var end_mc:point  = new point();
        var control_mc:point = new point();
        addChild(start_mc);
        addChild(end_mc);
        addChild(control_mc);
        start_mc.addEventListener(MouseEvent.MOUSE_DOWN, mousePress);
        start_mc.addEventListener(MouseEvent.MOUSE_UP, mouseRelease);
 
        end_mc.addEventListener(MouseEvent.MOUSE_DOWN, mousePress);
        end_mc.addEventListener(MouseEvent.MOUSE_UP, mouseRelease);
 
        control_mc.addEventListener(MouseEvent.MOUSE_DOWN, mousePress);
        control_mc.addEventListener(MouseEvent.MOUSE_UP, mouseRelease);
 
        function mousePress(event:MouseEvent):void {
 
                var item:MovieClip=MovieClip(event.target);
                item.startDrag();
                item.drag=1;
                item.scaleX=item.scaleY=.95;
 
        }
 
        function mouseRelease(event:MouseEvent):void {
                var item:MovieClip=MovieClip(event.target);
                item.stopDrag();
                item.drag=0;
        }


dimarik 10.06.2010 14:50

Вероятно, в кадре нужно прописать stop();

snicksnk 10.06.2010 14:59

Далее предпологаеться написать функцию которая будет реагировать на событие Enter_frame такчто stop сдесь не пойдет
Наиболее вероятное на мой взгляд решение это объединить создание элементов в функцию CreateObjects()
и
addEventListener (СобытиеНачалаФильма,CreateObjects);

Так вот что это за событие, явно оно существует

dimarik 12.06.2010 23:16

Предполагается, что stop() здесь как раз пойдет.


Часовой пояс GMT +4, время: 00:08.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.