Comunidad de diseño web y desarrollo en internet online

ayuda con boton misterioso

Citar            
MensajeEscrito el 09 Ago 2007 04:35 pm
hola a tod@s, como va todo?

os queria referir un pequeño problema que tengo con un boton, el cual tiene asignado este codigo:

Código :

on (release) {
   mover (inicio);
   btn1.enabled = false;
   onEnterFrame = function () {
      if(btn1._alpha==0)
       {btn1._alpha==0;}
       else
       {
       btn1._alpha=btn1._alpha-10;
       }
   }
}


tengo una funcion definida llamada mover y un mc llamado inicio. cuando pulsas el boton, este llama a la funcion, que hace que el mc se mueva aleatoriamente por la pantalla y el boton se desactiva y desaparece.

pues resulta que al cabo de un par de minutos, el boton VUELVE A APARECER!!

alguien sabe por que ocurre?

GRACIAS POR VUESTRA AYUDA
que hariamos l@s novatill@s sin vosotr@s?

Por kaquna

68 de clabLevel



Genero:Femenino  

firefox
Citar            
MensajeEscrito el 09 Ago 2007 04:56 pm
solucionado

detener el onenterframe.

Por kaquna

68 de clabLevel



Genero:Femenino  

firefox
Citar            
MensajeEscrito el 09 Ago 2007 05:07 pm
Yo tambien soy novatillo asi que voy a suponer cosas como siempre...
El alpha creo que tiene valor maximo de 255 y cada que entras le estas restando 10, eso quiere decir que en algun momento tu alpha tendra un valor de 5 y en cuanto entre de nuevo restara otros 10, dandole un valor de -5. Aqui esta mi suposicion, tal vez flash no permite este valor y le da la vuelta a 250 (repito, es una suposicion).

Mi sugerencia es que intentes cambiando el -10 por -15 para que te quede el alpha en 0. Si te sigue saliendo, psss.... un stop(); o algo no se jejejeje. Arriba los novatillos XD !!!
Saludos

Modificado (plop!!!) me ganaron en contestar... tienes que deterner el onterframe...

Por Wako

77 de clabLevel



 

firefox
Citar            
MensajeEscrito el 09 Ago 2007 06:12 pm
hola que tal kaquna!! no uses el comparador directo, recuerda que flash suele saltarse algunos valores usa en su lugar algo asi:

if(btn1._alpha<0)

saludos!!!

Por andres_santos

236 de clabLevel



 

opera
Citar            
MensajeEscrito el 09 Ago 2007 07:08 pm

kaquna escribió:

hola a tod@s, como va todo?

os queria referir un pequeño problema que tengo con un boton, el cual tiene asignado este codigo:

on (release) {
mover (inicio);
btn1.enabled = false;
onEnterFrame = function () {
if(btn1._alpha==0)
{btn1._alpha==0;}

else
{
btn1._alpha=btn1._alpha-10;
}
}
}


tengo una funcion definida llamada mover y un mc llamado inicio. cuando pulsas el boton, este llama a la funcion, que hace que el mc se mueva aleatoriamente por la pantalla y el boton se desactiva y desaparece.

pues resulta que al cabo de un par de minutos, el boton VUELVE A APARECER!!

alguien sabe por que ocurre?

GRACIAS POR VUESTRA AYUDA
que hariamos l@s novatill@s sin vosotr@s?


Esa linea de codigo, me parece un tanto estupida...
Si i es igual a cero que sea cero?

Por JaLeRu

Claber

1913 de clabLevel

7 tutoriales

Genero:Masculino  

Existo

firefox
Citar            
MensajeEscrito el 10 Ago 2007 03:02 pm
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

Por kaquna

68 de clabLevel



Genero:Femenino  

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.