Comunidad de diseño web y desarrollo en internet online

Ayuda con una duda básica

Citar            
MensajeEscrito el 27 Jun 2007 06:23 pm
Buenas :)
He visto algunos de los tutoriales que habéis colgado y viendo la calidad de los mismos me he lanzado a realizar mis primeras pruebas con actionscript basándome en algunas de las ideas que presentais en los siguientes manuales:
Capas de profundidad y movimiento de contenido en Flash
y
Manejar profundidad de MovieClips de Flash con DepthHandler

Pero claro está, creo que me he ahogado en un vaso de agua...
Lo que yo quiero hacer es algo muy similar a lo que hace Windows Vista, (eso de los paneles en 3D).
El problema está en que no se cómo animar el movimiento de los paneles, que se produce al pulsar un botón :

boton.onPress = function(){
recolocar();
}


Por ahora, lo único que he conseguido es que los paneles se intercambien entre ellos instantáneamente, pero nada de movimiento dinámico. No puedo poner el código que he creado porque me dice el foro que cree que es spam y que borre las palabras sospechosas... :shock: Ni idea...
Por ahora solo puedo deciros esto y que lo intenté con onEnterFrame y haciendo que en cada iteración, el panel se acercara un poco a donde se tuviera que mover pero no hacia nada de eso,
creo que porque simplemente no se como se usa correctamente el onEnterFrame, pero no encuentro la info que necesito.
Supongo que la solución sería algo así:

function mover(o:Panel, X:Number, Y:Number) {

onEnterFrame = function(){

o.Mc._x++;
o.Mc._y++;

}//onEnterFrame
}//mover
E ir iterando hasta que o.Mc._x == X y o.Mc._y ==Y entonces haria "onEnterFrame = null".
Por cierto, "o" es un objeto de la clase Panel que yo he creado y "Mc" es el atributo que contiene
el MovieClip.

Si alguien me pudiera ayudar se lo agradecería.

Por mussra

100 de clabLevel

1 tutorial

 

firefox
Citar            
MensajeEscrito el 27 Jun 2007 06:29 pm
Busca la funcion tween en la ayuda. Te puede servir de mucho.

Para poner tu código, usa el botón "CODE" que tienes en parte superior cuando posteas.

suerte!

Por Sisco

BOFH

3700 de clabLevel

12 tutoriales
4 articulos

Genero:Masculino   Bastard Operators From Hell

Catalunya

firefox
Citar            
MensajeEscrito el 27 Jun 2007 07:08 pm
Sisco me ha parecido impresionante la rapidex de tu respuesta, la verdad es que no me lo esperaba, gracias.
Creo que eso es exactamente lo que necesito, a ver si se aplicarlo. Por lo que he encontrado en internet, la linea que necesito seria algo así:

Código :

var tx:Tween = new Tween(o.info, _x, None, easeInOut, o.info._x, X, 1, true);


donde estoy creando una variable llamada tx del tipo Tween y el movimiento será:
El objeto que se mueve es o.info.
La propiedad que se modificará será _x. // Mov horizontal.
Será un movimiento simple //None
Empezará en o.info._x y terminará en X
y durará 1 seg. // 1. true);

y ahora para que se lleve a cabo el movimiento escribo

Código :

tx.start();



Gracias por adelantado

Por mussra

100 de clabLevel

1 tutorial

 

firefox
Citar            
MensajeEscrito el 27 Jun 2007 07:20 pm
Ya lo conseguí, muchas gracias sisco :)

Código :

function mover(o:Panel, X:Number, Y:Number) {
      //o.info._x = X;
      var tx:Tween = new Tween(o.info, "_x", easeInOut, o.info._x, X, 0.2, true);
      //o.info._y = Y;
      var tx:Tween = new Tween(o.info, "_y", easeInOut, o.info._y, Y, 0.2, true);
   }//mover

Por mussra

100 de clabLevel

1 tutorial

 

firefox
Citar            
MensajeEscrito el 28 Jun 2007 08:04 am
Me alegro, y gracias por postear la solución, así otros pueden aprender también ^^

Por Sisco

BOFH

3700 de clabLevel

12 tutoriales
4 articulos

Genero:Masculino   Bastard Operators From Hell

Catalunya

firefox
Citar            
MensajeEscrito el 02 Jul 2007 12:57 pm
He creado un tutorial en el que aplico lo que he aprendido con esta duda.

Por mussra

100 de clabLevel

1 tutorial

 

firefox

 

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