Comunidad de diseño web y desarrollo en internet online

Reconocer un numero del 1 al 999....¿Como? AS2

Citar            
MensajeEscrito el 15 Jun 2011 04:52 pm
Buenas gente de CL!
Saludos a todos...


Mi duda es la siguiente:

Existe una forma de reconocer cualquier numero que esté entre el 1 y el 999?

¿Que quiero hacer?

He duplicado un movieclip y le otorgo el nombre de instancia "bala"+i
(en donde i es un numero consecutivo)

entonce desde otro clip llamado "box" quiero reconocer cuando choca con alguna bala.

hasta ahora el codigo para duplicar es:

Código ActionScript :

//Variables
var i=1
//Listener del Mouse
var mouseListener:Object = new Object(); 
mouseListener.onMouseDown = function() { 
   i = i + 1;  
    duplicateMovieClip (_root.bala_normal, "bala" + i, i);
   _root["bala"+i]._x = canon._x;  
    _root["bala"+i]._y = canon._y;
}; 
Mouse.addListener(mouseListener);


//El clip "canon" es el punto de partida de "bala"//

Hasta alli todo funciona bien. Ahora al incluir el clip"box" este deberia reconocer cuando toca alguna bala...

Pense en algo asi: (Colocado dentro del clip "box")

Código ActionScript :

if (this.hitTest(_root["bala"+i])) { 
    gotoAndPlay("die"); 
}


Pero no funciona...quisiera algo asi:
if (this.hitTest(_root["bala"+CUALQUIER NUMERO MENOR A 999])) {
gotoAndPlay("die");
}

Quien me pueda ayudar GRACIAS!!!!

Por Anigrama

44 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 16 Jun 2011 01:38 pm
Lo mas simple es que la bala chequee si está colisionando con la caja (pones el hitTest dentro de su mismo timeline), sino debieras hacer un loop en el clip caja donde chequearía por montones de clips que ya no existen (es decir disparos que han pasado de largo y ya no están en el escenario)

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 16 Jun 2011 02:11 pm
Gracias Jorge por tu Respuesta.-

Y como haría si en vez de una (1) caja tuviera muchas?

Por Anigrama

44 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 16 Jun 2011 02:27 pm
El for se traslada a la bala, que recorre las cajas. De todas formas es un penalty de performance, a medida que agregas elementos se multiplica los tests y las balas empezarán a pasar de largo. Un truco que puede mejorar algo eso es poner todas las cajas en un mismo MC, chequear un primer hitTest contra ese MC, y si es true calcular según posiciones si colisiona con alguna caja

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 16 Jun 2011 02:30 pm
Y si coloco todas las cajas en un solo clip, lo llamo "lascajas"

¿como hago para reconocer que solo esta tocando una de ellas?

¿como hago para que cuando una bala toque una caja, esta se reproduzca digamos...que explote?

Por Anigrama

44 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 16 Jun 2011 02:42 pm
Tienes la posición de las balas y la de las cajas, aunque en distintos sistemas de coordenadas, allí tienes que usar localToGlobal o su opuesto globalToLocal par averiguar si las coordenadas coinciden. De todas formas si tu rendimiento va bien, con un loop para el hitTest dentro del timeline de las balas te vale

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox

 

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