Se trata de una cosa simple tenemos un MC en el escenario en la coordenada x=0 (de momento no nos interesa la cordenada y) al cual le aplicamos codigo para hacer un drag. A medida que dragueamos el MC desde la izquerda a la derecha este gradualmente va modificando en 1 su alfa por cada 1% de el stge que lo desplazamos. Ahi va el codigo:
Código :
import flash.events.MouseEvent;
directorio.addEventListener(MouseEvent.MOUSE_DOWN, inicio);
directorio.addEventListener(MouseEvent.MOUSE_UP, fin);
var myTimer:Timer = new Timer(25, 0);
var objeto_actual:Object;
var oldx:Number;
//-------------------------------------------------------
function inicio(event:MouseEvent):void{
objeto_actual = event.target.parent;
myTimer.addEventListener("timer", timerHandler);
myTimer.start();
directorio.startDrag();
}
function fin(event:MouseEvent):void{
myTimer.stop();
myTimer.removeEventListener("timer", timerHandler);
directorio.stopDrag();
}
function timerHandler(event:TimerEvent):void{
var unoporciento:Number = stage.stageWidth/100;
var pocentajealpha:Number = Math.floor(objeto_actual.x/unoporciento);
var nowx:Number = objeto_actual.x;
if(objeto_actual.x!=oldx){
directorio.alpha = pocentajealpha;
}
//estos dos text fields son para comprobar el nombre de instancia del objeto que muevo y su alpha
nombre.text = objeto_actual.name;
valor.text = objeto_actual.alpha.toString();
oldx=objeto_actual.x;
}
La cuestion esque no se porque en vez de hacerme el degradado entre el 0 y el 100% del stage lo hace entre el o y el 3%,osea para aclararnos que cuando he recorrido el 3% del stage dragueando el mc este ya paso de un alpha 0 a un alpha 100 aparentemente. Lo mas curioso esque hice imprimir el alpha del mc en un textfield dinamico y ahi si me lo marca bien.
Puede ayudarme alguien? es lo primero que hago en as3 ademas de ser la primera vez que uso cs4.
Gracias de antemano.
