AS2: идентификатор динамического промежуточного кадра

Как мне установить динамический идентификатор промежуточного кадра. Я пробовал eval, но он говорит, что мне нужна переменная слева от оператора присваивания. вот что я пробовал:

eval ("TweenAX" + circle.current.arrowHead.count) = new Tween(circle.current.arrowHead, "_x", mx.transitions.easing.Strong.easeOut, circle.current._x, Stage.width/2, 2, true);
eval ("TweenAY" + circle.current.arrowHead.count) = new Tween(circle.current.arrowHead, "_y", mx.transitions.easing.Strong.easeOut, circle.current._y, Stage.height/2, 2, true);

Ваше здоровье


person George Reith    schedule 21.06.2011    source источник
comment
Не ответ, но я предлагаю взглянуть на tweener, который делает анимацию намного удобнее .   -  person DanielB    schedule 21.06.2011
comment
Хммм ... Мне не нравится eval. У вас может быть массив или ассоциативный массив для хранения ваших подростков. eval или нет, всегда есть хитрый способ доступа к вашим переменным через _root. Но, как упомянул @Daniel, попробуйте лучшую библиотеку анимации. Tweener или TweenLite быстрее, легче и проще в использовании, чем класс mx.transitions.Tween по умолчанию   -  person George Profenza    schedule 21.06.2011


Ответы (1)


Я не уверен на 100%, что понимаю, чего вы пытаетесь достичь, но я думаю, что вы ищете синтаксис скобок:

this["TweenAX" + circle.current.arrowHead.count] = new Tween(circle.current.arrowHead, "_x", mx.transitions.easing.Strong.easeOut, circle.current._x, Stage.width/2, 2, true);
this["TweenAY" + circle.current.arrowHead.count] = new Tween(circle.current.arrowHead, "_y", mx.transitions.easing.Strong.easeOut, circle.current._y, Stage.height/2, 2, true);

Это создаст два свойства на this с именами TweenAXN и TweenAYN, где N - значение circle.current.arrowHead.count

person grapefrukt    schedule 21.06.2011