Comunidad de diseño web y desarrollo en internet online

Otra duda con mi juego

Citar            
MensajeEscrito el 12 Ago 2011 09:01 pm
Amigos gracias de antemano por todas sus respuestas y su paciencia ahora les comento que estoy casi por terminar mi juego entonces tengo una duda en el cual cuando llamo a un mc desde mi biblioteca pongo la funcion para arrastrar y soltar pero ahora no encuentro la forma de que se quede insertado en un punto base al soltarlo y a la vez que este mc se quite de la lista y no salga de nuevo al hacer un random, espero haberme explicado les anexo de nuevo mi codigo ya un poco mas de programacion

Código :

var movieArray:Array = ["circulo", "cuadrado", "penta"]; 
var aleatorio:String = movieArray[Math.round(Math.random() * movieArray.length)];
 
botoncito.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler); 
 
function mouseDownHandler(event:MouseEvent):void 
{ 
   var myMovieClip:MovieClip; 

   var aleatorio:String = movieArray[Math.round(Math.random() * movieArray.length)]; 

   var cant:Number = emptyMC_mc.numChildren 
   
   if (aleatorio == "circulo") 
   { 
      myMovieClip = new circulo(); 
      
   } 
   else if (aleatorio == "cuadrado") 
   { 
      myMovieClip = new cuadrado(cuadrado_mc); //Aqui es donde yo supuse que podria 
   }                                                                          //funcionar pero me dice que se esperaba   
   else                                                                    // un 0
   { 
      myMovieClip = new penta(); 
     
   } 
   for(var i:int = 0; i<cant; i++) emptyMC_mc.removeChildAt(0)
   emptyMC_mc.addChild(myMovieClip);
   
   myMovieClip.addEventListener(MouseEvent.MOUSE_UP,soltar); 
   myMovieClip.addEventListener(MouseEvent.MOUSE_DOWN,arrastrar);
   
}
function soltar(eve:MouseEvent):void 
{
   
   eve.target.stopDrag();
} 
function arrastrar(eve:MouseEvent):void 
{
   eve.target.startDrag();
}



Gracias de nuevo y recuerdo estoy usando AS3

Por stynpy

47 de clabLevel



 

safari
Citar            
MensajeEscrito el 13 Ago 2011 09:30 am
Para que no se repita usa algo así

var aleatorio:String = movieArray.splice(Math.round(Math.random() * movieArray.length), 1);

Irás vaciando el array, es decir solo tienes tres opciones. El var aleatorio que está fuera de la función no es necesario

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 15 Ago 2011 03:18 pm
Ok gracias por contestar, pero ahora no logro hacer que al soltar el mc en un objetivo se quede ahi

Por stynpy

47 de clabLevel



 

safari
Citar            
MensajeEscrito el 15 Ago 2011 03:26 pm
En soltar solo tienes un stopDrag, debería quedarse en cualquier lugar que lo sueltes

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 15 Ago 2011 03:34 pm
Ok estoy de acuerdo con lo que dices y si funciona pero si quiero soltarlo en un objetivo especifico, es decir yo utilizo esto para que quede insertado en un objetivo especifico.

Código :

function ofDrag(evento:Event):void

{
    if(apaxtla_mo.hitTestObject(apaxtla_md)==true)
   {
      apaxtla_mo.x=apaxtla_md.x;
      apaxtla_mo.y=apaxtla_md.y;
   }
   else
   {
      apaxtla_mo.x=672;
      apaxtla_mo.y=473.5;
   }


Si utilizo este codigo me manda error diciendo que es un objeto estatico, por eso habra ¿otra manera de hacerlo?

Por stynpy

47 de clabLevel



 

safari
Citar            
MensajeEscrito el 15 Ago 2011 03:46 pm
No se que relación tiene este código con el que pusiste anteriormente, ¿que es apaxtla_mo y apaxtla_md? Antes creaste un clip vacío y adentro le metiste una imagen.

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 15 Ago 2011 04:02 pm
Ok es cierto disculpa, apaxtla_mo es un mc y apaxtla_md es otro mc que el primero se arrastra y el otro es el contenedor ya que puse un ejemplo de un codigo que utilizo que cuando arrastro el mc destino al dejarlo caer en el contenedor origen se queda ahi y ay no se mueve es lo que quise usar ese mismo codigo con mis instancias que tengo pero me manda error que el "hitTestObject posiblemente no definido mediante una referencia con tipo estático Class."

Es lo que en si quiero hacer pero no me sale, o ver cual seria la forma de hacerlo y de antemano gracias.

Por stynpy

47 de clabLevel



 

safari
Citar            
MensajeEscrito el 15 Ago 2011 04:06 pm
Tus clases extienden de MovieClip, si usas la referencia myMovieClip, está declarada como MovieClip y no debería darte problemas, sino haz un cast:

MovieClip(loquesea).hitTestObject

Ahora si loquesea no extiende de MovieClip, entonces te dará un error de conversión forzada runtime

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 15 Ago 2011 04:52 pm
Asi es amigo me dio un error de argumentos incorrectos. Oye amigo para no molestarte mas no tendras una referencia o un tutorial de lo que en si quiero hacer de antemano gracias

Por stynpy

47 de clabLevel



 

safari
Citar            
MensajeEscrito el 15 Ago 2011 04:55 pm
Tutoriales de juegos tienes en gotoAndPlay.it y en muchos lados más, pero lo importante es aprender las bases, sino te parecerá que ningún tuto toca tu necesidad específica.

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 15 Ago 2011 05:46 pm
ok es cierto lo que dices las bases de action script, ya anteriormente le heche un vistazo y me ha logrado despejar algunas dudas pero todavia ando atoradon que creeo que lo que necesito es muy basico pero de antemano gracias y siguire buscando.

Por stynpy

47 de clabLevel



 

safari

 

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