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

Complicado pero a ver si es posible

Estas en el tema de Complicado pero a ver si es posible en el foro de Flash y Actionscript en Foros del Web. Saludos, estoy intentando crear un escenario que a traves de un slide, puedas desplazarte a un lado y a otro. Es una galeria con personajes, ...
  #1 (permalink)  
Antiguo 20/10/2005, 11:33
 
Fecha de Ingreso: mayo-2005
Ubicación: Ibiza
Mensajes: 19
Antigüedad: 19 años, 6 meses
Puntos: 0
Complicado pero a ver si es posible

Saludos, estoy intentando crear un escenario que a traves de un slide, puedas desplazarte a un lado y a otro.
Es una galeria con personajes, pero me gustaria que cada personaje se moviese a una velocidad distinta, para que cree el efecto de profundidad.
Aqui teneis un ejemplo para que me entendais mejor.
Se que es complicado, pero he intentado cargar en diferentes capas distintos personajes con la misma programación, pero es un caos.
Veries que primero carga los cuadros y luego dos capas mas con personajes..cuando los carga se vuelve loca la animación..como es normal y solo va bien la primera.

El ejemploe esta aqui:

http://www.pixelimperium.com/prueba


Y aqui os pongo el escript utilizado:

Si hay alguien que tenga una solución similar para crear ese efecto se lo agradecería mucho.

En esta web en el menu principal hay algo parecido, se que esto es pedir mucho ya que es muy bueno, pero a ver que se podría hacer:

http://www.leoburnett.ca

EN TODAS LAS PELICULAS HAY EN EL PRIMER FRAME:

acceleration = .10;
stageWidth = 1024;
// DO NOT CHANGE ANYTHING BUT THE ABOVE TWO VARIABLES UNLESS YOU KNOW WHAT YOU ARE DOING!
sliderWidth = getProperty("/slider", _width);
maxSpeed = ((stageWidth/2)/20)*(acceleration*((stageWidth/2)/20));
trace(maxSpeed);
speed = 0;
setProperty("/slider", _visible, false);
duplicateMovieClip("/slider", "slider1", 1);
duplicateMovieClip("/slider", "slider2", 2);
duplicateMovieClip("/slider", "slider3", 3);
startDrag("/draggy", true);



Y LUEGO UN CLIP DONDE EN SU INTERIOR HAY EN EL PRIMER FRAME:

distance = getProperty("/draggy", _x)-(/:stageWidth/2);
if (Number(distance)<0) {
direction = 1;
} else {
direction = -1;
}
speed = (distance/20)*(/:acceleration*(distance/20))*direction;
setProperty("/slider1", _x, Number(getProperty("/slider1", _x))+Number(speed));
setProperty("/slider2", _x, Number(getProperty("/slider1", _x))+Number(/:sliderWidth));
setProperty("/slider3", _x, Number(getProperty("/slider2", _x))+Number(/:sliderWidth));
if (Number(getProperty("/slider3", _x))>Number((Number(/:stageWidth)+Number(/:maxSpeed)))) {
setProperty("/slider3", _name, "temp");
setProperty("/slider2", _name, "slider3");
setProperty("/slider1", _name, "slider2");
setProperty("/temp", _name, "slider1");
setProperty("/slider1", _x, getProperty("/slider2", _x)-/:sliderWidth);
} else {
if (Number(getProperty("/slider2", _x))<Number((-/:maxSpeed))) {
setProperty("/slider1", _name, "temp");
setProperty("/slider2", _name, "slider1");
setProperty("/slider3", _name, "slider2");
setProperty("/temp", _name, "slider3");
setProperty("/slider3", _x, Number(getProperty("/slider2", _x))+Number(/:sliderWidth));
}
}





Y EN EL SEGUNDO:


distance = getProperty("/draggy", _x)-(/:stageWidth/2);
if (Number(distance)<0) {
direction = 1;
} else {
direction = -1;
}
speed = (distance/20)*(/:acceleration*(distance/20))*direction;
setProperty("/slider1", _x, Number(getProperty("/slider1", _x))+Number(speed));
setProperty("/slider2", _x, Number(getProperty("/slider1", _x))+Number(/:sliderWidth));
setProperty("/slider3", _x, Number(getProperty("/slider2", _x))+Number(/:sliderWidth));
if (Number(getProperty("/slider3", _x))>Number((Number(/:stageWidth)+Number(/:maxSpeed)))) {
setProperty("/slider3", _name, "temp");
setProperty("/slider2", _name, "slider3");
setProperty("/slider1", _name, "slider2");
setProperty("/temp", _name, "slider1");
setProperty("/slider1", _x, getProperty("/slider2", _x)-/:sliderWidth);
} else {
if (Number(getProperty("/slider2", _x))<Number((-/:maxSpeed))) {
setProperty("/slider1", _name, "temp");
setProperty("/slider2", _name, "slider1");
setProperty("/slider3", _name, "slider2");
setProperty("/temp", _name, "slider3");
setProperty("/slider3", _x, Number(getProperty("/slider2", _x))+Number(/:sliderWidth));
}
}


Gracias
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 16:17.