спасибо, с этим разобрался:

Код AS3:
package
{
import flash.display.MovieClip;
import flash.events.MouseEvent;
import flash.events.Event;
import flash.display.DisplayObject;
import fl.motion.AnimatorFactory;
import fl.motion.MotionBase;
import fl.motion.Motion;
import flash.filters.*;
import flash.geom.Point;
import flash.display.Sprite;
public class IList extends MovieClip
{
private var go:Boolean = false;
private var motionBase:MotionBase;
private var animFactory:AnimatorFactory;
private var size:uint = 100;
private var bgColor:uint = 0xFFCC00;
public function IList()
{
addEventListener(MouseEvent.MOUSE_OVER,_onMouseOver);
addEventListener(MouseEvent.MOUSE_OUT,_onMouseOut);
addEventListener(Event.ENTER_FRAME,_onEnterFrame);
var boxObj:Sprite = new Sprite();
boxObj.graphics.beginFill(bgColor);
boxObj.graphics.drawRect(0, 0, size, size);
boxObj.graphics.endFill();
boxObj.name "frgfrt";
addChild(boxObj);
if(motionBase == null)
{
motionBase = new Motion();
motionBase.duration = 17;
motionBase.addPropertyArray("y",[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]);
animFactory = new AnimatorFactory(motionBase);
animFactory.transformationPoint = new Point(0.5,0.5);
animFactory.addTarget(boxObj, 0);
}
}
function _onMouseOver(event:MouseEvent):void
{
if(!go)
{
parent.setChildIndex(this,parent.numChildren-1);
go = true;
}
}
private function _onMouseOut(event:MouseEvent):void
{
go = false;
}
private function _onEnterFrame(e:Event):void
{
if(go)
nextFrame();
else
prevFrame();
trace(currentFrame);
}
}
}
теперь другой вопрос:
почему анимация воспроизводится беспорядочно с непонятной скоростью, и как мне работать с ней?
п.с. в привычном режиме, при создании флеш анимации я работать умею, а через класс впервые
Добавлено через 23 часа 27 минут
немного переделал класс, но по прежнему не знаю как управлять анимацией, созданной таким способом:

Код AS3:
package
{
import flash.display.MovieClip;
import flash.events.MouseEvent;
import flash.events.Event;
import flash.display.DisplayObject;
import fl.motion.AnimatorFactory;
import fl.motion.MotionBase;
import fl.motion.Motion;
import flash.filters.*;
import flash.geom.Point;
import flash.display.Sprite;
import fl.motion.MotionEvent;
public class IList extends MovieClip
{
private var go:Boolean = false;
private var motionBase:MotionBase;
private var animFactory:AnimatorFactory;
private var size:uint = 100;
private var bgColor:uint = 0xFFCC00;
public function IList()
{
var boxObj = new MovieClip();
boxObj.graphics.beginFill(bgColor);
boxObj.graphics.drawRect(0, 0, size, size);
boxObj.graphics.endFill();
addChild(boxObj);
if(motionBase == null)
{
motionBase = new Motion();
motionBase.duration = 32;
motionBase.addPropertyArray("y",[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,15,14,13,12,11,10,9,8,7,6,5,4,3,2,1]);
motionBase.overrideTargetTransform();
animFactory = new AnimatorFactory(motionBase);
animFactory.transformationPoint = new Point(0.5,0.5);
animFactory.addTarget(boxObj, 0);
}
}
}
}
на обычные

Код AS3:
stop()
не реагирует, воспроизводится без остановки
метод

Код AS3:
addFrameScript(1,funct)
тоже не работает
честное слово, я в тупике и мне нужна помощь
хочу добиться пока что остановки и запуска анимации в нужный мне момент, жду помощи, и надеюсь что она будет
вопрос решен, добавлением
таких строк:

Код AS3:
private var animBase:AnimatorBase = new AnimatorBase();
animBase = animFactory.addTarget(boxObj, 0);
спасибо всем, можно тему закрывать