2013-08-09 1 views
0

Я пытаюсь проследить положение мувиклипа (содержащего простую анимацию временной шкалы внутри), чтобы я мог прикрепить другой мувиклип, чтобы иметь возможность следовать за ним.Trace x, y мувиклипа, который анимируется по временной шкале

Как я могу это сделать?

пусто = мувиклип, который содержит анимации по временной шкале

тс = мувиклип Я хочу следовать «пустой» мувиклип

empty.addEventListener(Event.ENTER_FRAME, onMove); 

function onMove(event:Event):void { 
    var mc:MovieClip = new SmokeTween(); 
    mc.x = empty.x; 
    mc.y = empty.y; 
    mc.rotation = Math.round(Math.random() * 70); 
    this.addChild(mc); 
} 

На самом деле я пошел в «пустые» тс и и используется этот код и кажется, работает хорошо:

this.addEventListener (Event.ENTER_FRAME, traceFrame); 

function traceFrame (e : Event) : void 
{ 
    if (e.target.currentFrame > 0){ 
     MovieClip(parent.parent).mc.x = e.target.x; 
    } 
} 
+0

Вы пробовали что-нибудь? 'trace (MovieClip.x, MovieClip.y)' будет делать трюк. – putvande

+0

Да, но это только отслеживает начальную позицию. Полагаю, мне нужно проследить положение текущего кадра мувиклипа (так как это анимация временной шкалы), чтобы достичь этого, но не знаю, как это сделать. Обновлено первое сообщение с кодом. – lonewulf

+0

Вы можете просто добавить его в свою функцию 'onMove'. – putvande

ответ

0

На самом деле я пошел в «пустой» и тс и использовать этот код и, кажется, работает нормально:

this.addEventListener (Event.ENTER_FRAME, traceFrame); 

function traceFrame (e : Event) : void 
{ 
    if (e.target.currentFrame > 0){ 
     mc.x = e.target.x; 
    } 
} 
1

Я полагаю, что empty не живая, так что вам нужно использовать ENTER_FRAME события в суперпользователе вместо empty «s:

addEventListener(Event.ENTER_FRAME, onMove); // no "empty." 
function onMove(event:Event):void { 
    var mc:MovieClip = new SmokeTween(); 
    mc.x = empty.x; 
    mc.y = empty.y; 
    mc.rotation = Math.round(Math.random() * 70); 
    this.addChild(mc); 
} 

Как ваш проект становится все больше, вы также обнаружите, что объекты утилизации становится важным (особенно в Flash). Храните массив SmokeTweens и продолжайте их переработку, вместо того чтобы создавать новые и позволять им удалять себя.

+0

Я нашел это решение, обновленное первое сообщение. – lonewulf

+0

, пожалуйста, добавьте свое решение в качестве ответа, а не как редактирование. –

Смежные вопросы