Foros del Web » Creando para Internet » Flash y Actionscript »

¿Problema con removeChild?

Estas en el tema de ¿Problema con removeChild? en el foro de Flash y Actionscript en Foros del Web. Al pulsar un botón, se crea un mc que va de izquierda a derecha andando. Cuando choca con el "Objetivo", le quita la vida y ...
  #1 (permalink)  
Antiguo 08/09/2010, 16:15
 
Fecha de Ingreso: mayo-2010
Mensajes: 52
Antigüedad: 14 años
Puntos: 0
¿Problema con removeChild?

Al pulsar un botón, se crea un mc que va de izquierda a derecha andando. Cuando choca con el "Objetivo", le quita la vida y cuando llega a cero se debe eliminar mc2 y mc podrán seguir andando.

El problema está en que mc sigue chocando con "Objetivo" aunque este haya sido borrado :S.

Aquí el código:

MC:
Código ActionScript:
Ver original
  1. static var ataque:Timer;
  2. var vel:uint;
  3.  
  4. function enterFrame(e:Event)
  5.         {
  6.             this.x += vel;
  7.  
  8.            
  9.             if(Game.objetivo)
  10.             {
  11.                 if(this.hitTestObject(Game.objetivo))
  12.                 {
  13.                     lucha();
  14.                 }
  15.             }
  16.            
  17.             if(Objetivo.vida <= 0)
  18.             {
  19.                 this.vel = 4;
  20.             }
  21.  
  22.         }
  23.  
  24. function lucha()
  25.         {
  26.             vel = 0;
  27.             this.x -= 5;
  28.                
  29.             ataque = new Timer(1000);
  30.             ataque.addEventListener("timer", nuevoAtaque);
  31.             ataque.start();
  32.         }
  33.        
  34.         function nuevoAtaque(e:Event)
  35.         {
  36.             Objetivo.vida -= 5;
  37.         }


Objetivo:

Código ActionScript:
Ver original
  1. static var vida:uint = 20;
  2.  
  3. function enterFrame(e:Event)
  4.         {
  5.            
  6.             if(Objetivo.vida <= 0)
  7.             {
  8.                 Objetivo.vida = 0;
  9.                 kill();
  10.             }
  11.         }
  12.  
  13. function kill()
  14.         {
  15.                 mc.ataque.stop();
  16.                 removeEventListener("enterFrame", enterFrame);
  17.                 stage.removeChild(this);
  18.         }


He copiado solo el código necesario para ver el problema.

Espero que alguien sepa solucionarlo, porque me trae ya loco y necesito hacer esto de cualquier manera.


Muchas gracias.
  #2 (permalink)  
Antiguo 08/09/2010, 16:48
Avatar de mortiprogramador
Colaborador
 
Fecha de Ingreso: septiembre-2009
Ubicación: mortuoria
Mensajes: 3.805
Antigüedad: 14 años, 7 meses
Puntos: 214
Respuesta: ¿Problema con removeChild?

Hola
tal vez esto te sirva
saludos
__________________
"Si consigues ser algo más que un hombre, si te entregas a un ideal, si nadie puede detenerte, te conviertes en algo muy diferente."
Visita piggypon.com
  #3 (permalink)  
Antiguo 09/09/2010, 08:09
 
Fecha de Ingreso: mayo-2010
Mensajes: 52
Antigüedad: 14 años
Puntos: 0
Respuesta: ¿Problema con removeChild?

No me sirve, y además el código de ese tutorial está en AS2 y estoy con AS3, pero muchas gracias de todos modos ^^.
  #4 (permalink)  
Antiguo 09/09/2010, 08:38
Avatar de mortiprogramador
Colaborador
 
Fecha de Ingreso: septiembre-2009
Ubicación: mortuoria
Mensajes: 3.805
Antigüedad: 14 años, 7 meses
Puntos: 214
Respuesta: ¿Problema con removeChild?

uhm, pues es que entonces creo que esta combinado código de as2 con as3 en lo que publicaste, intenta esto


Código actionscript:
Ver original
  1. removeEventListener(Event.ENTER_FRAME,enterFrame);

saludos
__________________
"Si consigues ser algo más que un hombre, si te entregas a un ideal, si nadie puede detenerte, te conviertes en algo muy diferente."
Visita piggypon.com

Etiquetas: removechild
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:39.