hola de nuevo.
ya estuve el otro dia consultando sobre este tema y crei que lo tenia claro.
tenia una funcion alfa que hacia desaparecer un boton, pero que a los 2 minutos volvia a aparecer. le puse otro onenterframe (me ayudaron en otro foro, jejeje) en el que ponia que si alfa era <=0 delete this.onenterframe y me funciono de maravilla.
gracias a todos los que me habeis ayudado (jaleru, tienes razon, esa linea es un poco estupida y la he cambiado).
lo del comparador directo que me decia andres... pues lo he dejado como estaba, ya que me funciona bien. de todas formas, gracias.
pero ahora resulta que con el siguiente codigo (funcion que pasa el clip de alfa 0 a 100 y luego lo mueve por la pantalla) me pasa lo mismo, pero al reves: el clip esta en alfa 0 y cuando empieza la funcion lo pone a 100 pero a los 2 minutos vuelve a alfa 0, aunque se sigue moviendo, sigue ejecutando la funcion mover pero sin tener en cuenta la parte del alfa.
le he puesto tambien otro onenterframe en el que le indico que si alfa>= 100, delete this.onenterframe, pero no me funciona. lo he colocado en mil sitios y no me funciona (supongo que una de las cosas que hace es anular tambien la parte del movimiento).
le puse la parte de codigo del alfa fuera del onenterframe, en otro onenterframe, para poder ponerle el delete this.onenterframe, pero tampoco me funciono.
no se si me habre explicado bien...
alguien me puede ayudar??
el codigo de la funcion es el siguiente
Código :
mover = function (clip) {
vx = 3;
vy = 1;
delay = 20;
amp = 6;
ta = 6;
t = 0;
clip.onEnterFrame = function () {
if(clip._alpha==100)
{}
else
{
clip._alpha=clip._alpha+10;
}
m = t%delay;
if(!m){
if(ta>amp) i=-1;
else if(ta<-amp) i=1;
else i=random(3)-1;
}
t++;
ta += i;
a = ta*Math.PI/180;
cos = Math.cos(a);
sin = Math.sin(a);
nvx = vx*cos-vy*sin;
nvy = vx*sin+vy*cos;
vx = nvx;
vy = nvy;
clip._x += vx;
clip._y += vy;
if(clip._x<20){
clip._x = 20;
vx = -vx;
}
else if(clip._x>1260){
clip._x = 1260;
vx = -vx;
}
if(clip._y<60){
clip._y = 60;
vy = -vy;
}
else if(clip._y>900){
clip._y = 900;
vy = -vy;
}
clip.onRollOver = function () {
vx = 0;
vy = 0;
}
clip.onRollOut = function () {
mover (clip)
}
}
}
GRACIAS A TOD@S