Comunidad de diseño web y desarrollo en internet online

._x = Math random

Citar            
MensajeEscrito el 02 Ago 2009 10:13 pm
Hola, estoy haciendo un minijuego.

Estoy intentando que los objetos salgan de la parte de arriba, como 3 a la vez, del escenario y caigan hacia abajo con un movimiento recto. Cuando lleguen a bajo desaparezcan.

He estado buscando pero no acabo de encontrar la manera final de hacerlo.

Alguien con alguna idea que me pueda ayuda?
Gracias ^^

Por --Deci--

8 de clabLevel



 

firefox
Citar            
MensajeEscrito el 03 Ago 2009 12:03 pm
La clase Tween o mejor aún, librerías como Tweener http://code.google.com/p/tweener/ te permitirán hacer movimientos fluídos ... dado que especificas el punto final, puedes establecer un callback para que desaparezca o se reinicie.

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 06 Ago 2009 12:09 am
Este codigo pude sacar.

var nVariable = Math.floor(Math.random() * (mayor - menor + 1)) + menor;
bgr._x = nVariable;


Pero lo otro no me sale nada >.<

Por --Deci--

8 de clabLevel



 

firefox
Citar            
MensajeEscrito el 06 Ago 2009 01:02 am
Sorry, no entiendo mucho la fórmula que pones, igual no tiene pinta de que sea ningún Tween

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 06 Ago 2009 10:41 am
Este es el código para que haga un random de X, pero luego no se como hacer que haga el tween hacia abajo.

Por --Deci--

8 de clabLevel



 

firefox
Citar            
MensajeEscrito el 06 Ago 2009 11:02 am
Con la fórmula tradicional de Tween, muevo una bolita con nombre de isntancia "bola" hacia abajo:

Código ActionScript :

import mx.transitions.Tween;
import mx.transitions.easing.*; 

new Tween(bola, "_x", Regular.easeOut, bola._x, Stage.height, 1, true)


Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 07 Ago 2009 03:14 pm
Ok, con eso quiero que se repita indefinidamente a no ser que choque contra el jugador. Luego para no salir siempre des del mismo sitio aplico un random de posición x. Pero ese tween me repite solo una vez :S

Por --Deci--

8 de clabLevel



 

firefox
Citar            
MensajeEscrito el 07 Ago 2009 03:20 pm
Nop, pero no va por ahí. Si quieres que N elementos se muevan sin parar, tienes que aplicar una fórmula de velocidad a todos ellos, ya sea en un loop o en un onEnterFrame de cada elemento en particular. El tema es largo, pero aquí un ejemplo

Código ActionScript :

var stars = [star1, .....] //array de elementos que caen
var speed = 1
this.onEnterFrame = function(){
   for(var i in stars){
      stars[i]._y+=speed
      if(stars[i]._y>Stahe.height) stars[i]._y = 0
   }
}


Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 07 Ago 2009 07:59 pm
¿Dónde lo pongo? El nombre de instancia del movieclip se llama "bgr".

Por --Deci--

8 de clabLevel



 

firefox
Citar            
MensajeEscrito el 08 Ago 2009 02:18 pm
En mi ejemplo trabajo con una lista de MovieClips porque supongo que son muchos, entonces tengo muchas instancias curo nomnbre pongo en el array.
El mejor sitio de tutos para armar juegos: http://gotoandplay.it/

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 09 Ago 2009 05:08 pm
Gracias por la página, estube buscando y encontré cosas que me ayudaron pero tengo una última duda.

Tengo este codigo

Código ActionScript :

if (_root.fondo.hitTest(_x, _y, true)) {
      xspeed = 0;
      yspeed = 0;
      _x = 120;
      _y = 120;
   }


Cuando el movieclip choque contra el fondo, resetea la velocidad y pone unos valores fijos de _x y de _y. Siempre saldrán por 120. Yo no quiero eso, yo quiero que x sea variable, que pueda salir por la derecha o por la izquierda o por el centro etc...

Por --Deci--

8 de clabLevel



 

firefox
Citar            
MensajeEscrito el 09 Ago 2009 09:25 pm
Gracias por la página, estube buscando y encontré cosas que me ayudaron pero tengo una última duda.

Cuando hago un hitTest, que code le tengo que meter para que desaparezca el movieclip?

Por --Deci--

8 de clabLevel



 

firefox
Citar            
MensajeEscrito el 10 Ago 2009 10:47 am
Si el MC lo metiste por attachMovie, usa removeMovieClip, sino tendrás que hacerlo _visible = false

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.