package { import mx.effects.effectClasses.TweenEffectInstance; import mx.effects.Tween; public class professional_flex_code_15_CustomTweenEffectInstance extends TweenEffectInstance { // Custom parameters public var xFrom:Number; public var xTo:Number; public function professional_flex_code_15_CustomTweenEffectInstance(targetObj:Object) { super(targetObj); } // Override play() method. override public function play():void { super.play(); // Create the Tween object var tween:Tween = createTween(this, xFrom, xTo, duration); } // Override onTweenUpdate() method. override public function onTweenUpdate(val:Object):void { target.x = val; } // Override onTweenEnd() method. override public function onTweenEnd(val:Object):void { // call super.onTweenEnd(). super.onTweenEnd(val); } } }