Estoy tratando de hacer un efecto de "zoom in y zoom out" por codigo (as2) sin tener que animar ninguna movie ni nada parecido. Lo que tengo en mi fla es 6 movieClips con una imagen y programar por codigo que al hacer rollOver y rollOut dicha imagen se agrande y achique. Estoy usando las propiedades "_xscale e _yscale" de la clase MovieClip y la clase Tween, lo programe y anda perfecto solo que rompe cuando paso mi mouse rapido por cada movie al parecer ser rompe las propiedades xscale e yscale las movies quedan o mas grande que antes o mas chica.
Por favor cualquier ayuda la agradecer. Adjunto el archivo .fla y el codigo para que lo prueben, pasen su mouse rapido por cada movieclip y van a notar que algun que otro movieclip queda mas grande o mas chico. Yo creo que es porque como no esta terminando la animacion del primer movieclip y al hacer rollover en el segundo ahi rompe porque si hago rollover sobre una movie espero unos segundos y hago rollout no se rompe.
Código :
stop(); import mx.transitions.Tween; import mx.utils.Delegate; var speedValue:Number; var incrValue:Number; var xIni; var yIni; var xFin; var yFin; for(var i:Number=0;i<6;i++) { //trace("item :"+this["item"+(i+1)+"_mc"]); this["item"+(i+1)+"_mc"].onRollOver = Delegate.create(this["item"+(i+1)+"_mc"],rollOver); this["item"+(i+1)+"_mc"].onRollOut = Delegate.create(this["item"+(i+1)+"_mc"],rollOut); } function finish () { trace("xIni Y :"+xIni); trace("yIni Y :"+yIni); trace("escala X :"+this._xscale); trace("escala Y :"+this._yscale); } function rollOver () : Void { xIni = this._xscale; yIni = this._yscale; xFin = xIni+incrValue; yFin = yIni+incrValue; var xOver:Tween = new Tween(this, "_xscale", Regular.easeOut, xIni,xFin+incrValue, speedValue); var twenObj:Tween = new Tween(this,"_yscale", Regular.easeOut, yIni,yFin +incrValue, speedValue); } function rollOut() : Void { //trace("rollOut "+this); var xOut:Tween = new Tween(this,"_xscale",Regular.easeOut,xFin,xIni,speedValue); var twenObj:Tween = new Tween(this,"_yscale",Regular.easeOut,yFin,yIni,speedValue); twenObj.onMotionFinished = Delegate.create(this,finish); }
archivo swf : [url=http://www.filedropper.com/turnos2p6v2][/url]